Как мой php-скрипт может сказать, изменил ли suhosin переменные запроса?

Я тестировал безопасность для некоторых php-скриптов и обнаружил, что, среди прочего, suhosin удаляет опубликованную переменную, которая огромна... это хорошо и желательно, но я бы хотел, чтобы мой скрипт мог сказать этот suhosin изменил запрос.

Оставляет ли suhosin какие-либо отпечатки пальцев, чтобы указать, что было предпринято какое-то действие - способом, который может обнаружить сценарий? Я предполагаю, что это не может вызвать что-то вроде E_USER_WARNINGпотому что это будет сгенерировано до запуска скрипта и может его поймать. Может быть, среда или специальная глобальная переменная?

Я сам попробовал несколько подходов, но ничего не увидел... возможно, для этого нужно настроить suhosin? Мне кажется, что документацию по suhosin трудно понять.

2 ответа

Входной фильтр Suhosin предназначен для прозрачной фильтрации потенциально опасных данных, например, слишком больших запросов. Если сценарий сможет обнаружить этот фильтр и изменить свой программный поток на основе этой информации, злоумышленнику будет намного легче обойти фильтр.

В качестве рекомендации, ограничения фильтра должны быть установлены как можно более строгими, но настолько широкими, насколько это необходимо. Предполагается, что ваш сценарий запускается без возможности обнаружить присутствие Сухосина.

Да, это так, не дактилоскопия, а ведение журнала: Настройка ведения журнала Suhosin.

Другие вопросы по тегам