DedeCms V5.1 tag.php注入漏洞
sebug-id:3885
sebug-appdir:织梦(dedecms)
发布时间:2008-08-20
影响版本:
dedecms v5.1 [sp1]漏洞描述:
dedecms算是使用比较广泛的php整站系统了,在被使用的同时系统的安全性也被人们关注
目录下的tag.php文件对变量$tag处理不当,导致注入漏洞的形成
因为可以使用“'”,所以如果条件可以的话可以直接into file得shell。
<*参考
toby57 [www.toby57.cn]
*>
测试方法:
[www.sebug.net]
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!http://www.sebug.net/bbs/thread-332-1-1.htmlsebug安全建议:
暂无
www.dedecms.com// sebug.net [2008-08-20]
dedecms算是使用比较广泛的php整站系统了,在被使用的同时系统的安全性也被人们关注。在以前dedecms也爆过不少漏洞,官方都很快出了补丁,前几天公布了注射漏洞,其实这个系统也受最近很流行的多字节编码漏洞影响。不过今天说的这个漏洞与多字节编码无关,倒跟url编解码有关系,
呵呵。仅测试了dedecms2007(dedecms v5.1 [sp1])。
目录下的tag.php文件对变量$tag处理不当,导致注入漏洞的形成,话不多说,贴代码:
if(isset($_server["query_string"])){
$tag = trim($_server["query_string"]); //得到get的参数
$tags = explode(’/’,$tag); //以“/”分隔为数组$tags
$tag = $tags[1]; //取数组$tags的第二个元素
if(count($tags)>3) $pageno = intval($tags[2]);
}else{
$tag = "";
}
$tag = urldecode($tag); //对变量$tag做url解码处理,%27解码后就成了“’”
//如果没有tag或tag不合法,显示所有tag
if($tag=="" || $tag!=addslashes($tag) ){ //如果$tag为空或有’、"、\等字符则执行
$dlist = new taglist($tag,’tag.htm’); //创建类taglist的实例,$tag传给其构造函数,此时$tag可能包含“’”
}
//如果有tag,显示文档列表
else{
$dlist = new taglist($tag,’taglist.htm’);
}
类taglist相关代码:(./include/inc_taglist_view.php)
class taglist
{
..
var $tag;
..
//php5构造函数
function __construct($keyword,$templet) //$keyword=$tag
{
..
$this->tag = $keyword; //$this->tag=$tag
..
if($this->tag!=’’)
{
$this->taginfos = $this->dsql->getone("select * from `cms_tag_index` where tagname like ’{$this->tag}’ "); //查询执行,漏洞产生!
}
以上就是代码的分析,可能说得不太清楚,这样的漏洞因为可以使用“'”,所以如果条件可以的话可以直接into file得shell。
利用方面大家*发挥。为了方面我自己写了一个利用程序:
dedeexp.exe
当file_priv为yes并得到了物理路径的时候就可以直接get the shell了。其中得到物理路径的方法是利用了./include/htmledit/index.php的一个漏洞,我们提交./include/htmledit/index.php?modetype=basic&height[]=toby57就可能得到路径。
如果这样得不到的话,还可利用重新安装漏洞,提交./install/index.php?step=2可以重新安装系统,当然也可以得到物理路径。
因为不能union查询,所以运气差的只有自己get the hash再破解进后台拿shell了。
上一篇: C++基础篇(三)--命名空间
下一篇: ARP欺骗攻击原理另一种理解方法
推荐阅读
-
DedeCms注入漏洞 影响版本5.3、5.5Posted in php
-
dedecms 5.6的最新注入漏洞
-
DedeCMS全版本通杀SQL注入漏洞利用代码及工具2014年2月28日
-
dedecms v5.6 GBK 注入漏洞利用(member/index.php)
-
dedecms v5.1/5.5 两处跨站漏洞的修复办法
-
DedeCms V5.1 tag.php注入漏洞
-
Dedecms最新注入漏洞分析及修复方法
-
最新DEDECMS存SQL注入0day漏洞-又来了,该如何处理
-
最新DEDECMS存SQL注入0day漏洞-又来了,该如何处理
-
最新DEDECMS存SQL注入0day漏洞-又来了,该如何处理