Воюем с ModSecurity 2
ModSecurity – модуль Apache, добавляющий возможности обнаружения и предотвращения вторжения на Web сервер. Модуль подобен IDS системе, которую вы бы использовали для анализа сетевого трафика, за исключением того, что mod_security работает только на HTTP уровне. Модуль позволяет вам анализировать действия, обычные с точки зрения HTTP протокола, но трудные для анализа классическими IDS системами.
Модуль имеет довольно-таки суровые правила и зачастую вполне безобидные скрипты после включения этого модуля перестают работать.
Так произошло, например, с движком LiveStreet. Перестала работать отправка комментариев, опубликование топиков и некоторый интерактив.
Так как у меня есть доступ к редактированию настроек виртуального хоста, я добавил туда следующие строчки:
<IfModule mod_security2.c>
SecAuditLog /var/log/apache2/mod-security/your-site-audit.log
# LiveStreet comments troubles
SecRuleRemoveById 960010
# LiveStreet topics troubles
SecRuleRemoveById 950911
</IfModule>
Опция SecRuleRemoveById добавляет исключение, id события можно найти в файле /var/log/apache2/mod-security/your-site-audit.log — какой запрос и почему был заблокирован, например:
Message: Access denied with code 501 (phase 2). Match of "rx (?:^(?:application\\/x-www-form-urlencoded(?:;(?:\\s?charset\\s?=\\s?[\\w\\d\\-]{1,18})?)??$|multipart/form-data<img src="/images/smilies/wink.gif" alt="Wink" />|text/xml)" against "REQUEST_HEADERS:Content-Type" required. [id "960010"] [msg "Request content type is not allowed by policy"] [severity "WARNING"]
Комментарии (3)
RSS свернуть / развернутьMihael
Sergei_T
denis_aka_xaos
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.