Назад | Перейти на главную страницу

Как использовать RegEx для mod_security

У меня есть подобный каталог / сайт на моем сервере Apache / 2.2.19 (Win32) с использованием mod_security + core ruleset / 2.2.1

/website1/login.php
/website2/login.php
/website3/login.php
/websiteN/login.php

В моем modsecurity_crs_10_config.conf у меня есть

setvar:'tx.brute_force_protected_urls=login.php'

Проблема в том, что это не сработает, пока я не введу полный путь для каждой из страниц login.php, например:

setvar:'tx.brute_force_protected_urls=/website1/login.php /website2/login.php andSoOn'

Я пробовал другие способы с RegEx, чтобы обойти это (например, /(.*)/login.php), но я не могу этого понять.

Итак, вопрос в основном; как обеспечить соблюдение BFP на всех страницах с именем login.php на сервере?

Спасибо.

У меня все заработало. В 'modsecurity_crs_11_brute_force.conf' мне пришлось изменить строку 39:

SecRule REQUEST_FILENAME "!@within %{tx.brute_force_protected_urls}"  ...

к

SecRule REQUEST_FILENAME "!@contains %{tx.brute_force_protected_urls}" ...

и в 'modsecurity_crs_10_config.conf' иметь:

setvar:'tx.brute_force_protected_urls=/login.php' ...

Спасибо за помощь.

Попробуй это:

setvar:'tx.brute_force_protected_urls=/login.php'

Если это не сработает, я предлагаю вам включить отладку, чтобы увидеть, что говорят журналы.