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

Внесите Modsecurity в белый список и продолжайте регистрацию

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

SecRuleUpdateTargetByTag "OWASP_CRS/WEB_ATTACK/SQL_INJECTION" !ARGS:/^fallout/

Хотелось бы, чтобы это сработало?

SecRuleUpdateTargetByTag "OWASP_CRS / WEB_ATTACK / SQL_INJECTION","журнал", "разрешить" ! ARGS: / ^ fallout /

Нет, это только для обновления цели, на которую нацелено правило.

Существует команда SecRuleUpdateActionById, которая позволяет вам передавать правила SQL_INJECTION вместо блокировки, но не для конкретных сценариев, как вы хотите здесь (т.е. только ARGS / ^ fallout / requests), а не эквивалент ctl, чтобы вы могли связать это для достижения этот :-(

Вы можете удалить настройку SecRuleUpdateTargetByTag и вместо этого переключить механизм правил на обнаружение только для следующих запросов:

SecRule ARGS /^fallout/ "phase:2,id:1000,ctl:ruleEngine=DetectionOnly"

Однако это будет означать отсутствие фазы: 2 правила вообще будут блокировать эти URL, что оставляет зияющую дыру в вашем WAF.

Один из способов, который может сработать, - это добавить это в файл modsecurity_crs_41_sql_injection_attacks.conf в начале и перевернуть в конце, чтобы снова включить его. Это будет работать, поскольку правила обрабатываются в порядке их загрузки в config. Однако обычно мне не нравится редактировать фактические файлы CRS, так как это затрудняет обновление (очень легко перезаписывать обновления, подобные этому).

В качестве альтернативы просто регистрируйте все запросы ARGS Fallout и затем проверяйте их вручную на предмет попыток SQL_INJECTION:

SecRule ARGS /^fallout/ "phase:2,id:1001,log"