Показать сообщение отдельно
Soniks вне форума      Старый Referer SQL-инъекция в PHP-Nuke #1  
Soniks
Администратор
Регистрация: 16.01.2005
Сообщения: 4,814


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Soniks Посетить домашнюю страницу Soniks Найти все сообщения от Soniks Добавить Soniks в список друзей  
21.02.2007, 20:07

Продукт: PHP-Nuke
Версия: 8.0 и ниже
Описание:
Уязвимость позволяет удаленному пользователю выполнить произвольные SQL команды в базе данных приложения.
Уязвимость существует из-за недостаточной обработки входных данных в поле "referer" в HTTP заголовке. Удаленный пользователь может с помощью специально сформированного запроса выполнить произвольные SQL команды в базе данных приложения.
Информация http://www.securitylab.ru
Устранение:
Добавляем проверку данной переменной.
Открываем:
mainfile.php
Находим:
PHP код:
 // override old superglobals if php is higher then 4.1.0 

Выше добавляем:
PHP код:
 $_SERVER['HTTP_REFERER'] = isset($_SERVER['HTTP_REFERER'])?addslashes(stripslashes($_SERVER['HTTP_REFERER'])):''


Советуем проделать данную операцию на всех указанных версиях PHP-NUKE (на данный момент), т.к. дыра есть и очень легко ей воспользоваться, если сервер хостинга не настроен должным образом (что мало вероятно)
 
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть".