Просмотр полной версии : Проверьте на уязвимости www.yastreba.net
uastrebv
15.03.2009, 19:09
сайт www.yastreba.net
BlackSun
16.03.2009, 01:47
SQL-INJ
Уязвимый скрипт: settings.php
Часть запроса (POST): set_show_icon=1',level='4
Уязвимый кусок кода:
if (isset($_POST['save'])){
if (isset($_POST['set_show_icon']) && ($_POST['set_show_icon']==2 || $_POST['set_show_icon']==1 || $_POST['set_show_icon']==0))
{
$user['set_show_icon']=$_POST['set_show_icon'];
mysql_query("UPDATE `user` SET `set_show_icon` = '$user[set_show_icon]' WHERE `id` = '$user[id]' LIMIT 1");
}
else $err='Ошибка режима показа иконок';
Как видно - нет нормальной проверки, для безопасной проверки используйте is_numeric, либо intval.
Пример:
http://www.yastreba.net/info.php?id=108
Главный Администратор
-----------
А далее можно установить привелегии через "Восстановление привелегий" из админки, таким образом получив полный доступ к сайту.
uastrebv
16.03.2009, 12:39
SQL-INJ
Уязвимый скрипт: settings.php
Часть запроса (POST): set_show_icon=1',level='4
Уязвимый кусок кода:
if (isset($_POST['save'])){
if (isset($_POST['set_show_icon']) && ($_POST['set_show_icon']==2 || $_POST['set_show_icon']==1 || $_POST['set_show_icon']==0))
{
$user['set_show_icon']=$_POST['set_show_icon'];
mysql_query("UPDATE `user` SET `set_show_icon` = '$user[set_show_icon]' WHERE `id` = '$user[id]' LIMIT 1");
}
else $err='Ошибка режима показа иконок';
Как видно - нет нормальной проверки, для безопасной проверки используйте is_numeric, либо intval.
Пример:
http://www.yastreba.net/info.php?id=108
-----------
А далее можно установить привелегии через "Восстановление привелегий" из админки, таким образом получив полный доступ к сайту.
__________________________________
исправлено
dotsenko
16.03.2009, 21:02
если нету юзер агента у браузера
то выдает такое
Notice: Undefined index: HTTP_USER_AGENT in /[вырезано]/settings.php on line 27
Раскрытие путей:
http://www.yastreba.net/loads/?d[]=
http://www.yastreba.net/loads/?d=Fotoshop%2FSHrifty&f[]=100908gyp.zip
Или вставляем неразрешенные символы в идентификатор сессии
Warning: session_start() [function.session-start]: The session id contains illegal characters, valid characters are a-z, A-Z, 0-9 and '-,' in //sess.php on line 3
[B]XSS/XSRF
http://www.yastreba.net/users.php?go
Мини-сплойт:
<form action='http://www.yastreba.net/users.php?go' method='post'>
<input name="usearch" type="text" value='"><script>alert()</script>' />
<input type='submit'>
</form>
uastrebv
17.03.2009, 12:33
спасибо! Исправлено.
В http://www.yastreba.net/users.php вывалилась ошибка!
Parse error: syntax error, unexpected T_ECHO in /[del]/users.php on line 163
uastrebv
18.03.2009, 16:35
В http://www.yastreba.net/users.php вывалилась ошибка!
Parse error: syntax error, unexpected T_ECHO in /[del]/users.php on line 163
это была моя ошибка
BlackSun
18.03.2009, 23:45
Для тех, кто не читал правила раздела:
Дополнение к правилам.
Народ, это раздел Проверка на уязвимости, поэтому все найденные кривости дизайна и подобное - автору темы - в ПМ. Здесь выкладывайте только уязвимости.
uastrebv
22.03.2009, 23:02
всем спасибо за помощь.
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot