У меня есть большая форма, которая, вероятно, должна отправить не более 1000 POST DATA
аргументов. Иногда это вызывает ложную тревогу из-за правила 960335
набора правил OWASP Core. Я просмотрел это правило в modsecurity_crs_23_request_limits.conf
, но не могу понять, как установить max_num_args выше в этой конкретной форме.
В modsecurity_crs_60_customrules.conf
я пробовал:
<LocationMatch "/form.php">
SecRuleUpdateTargetById 960335 ARGS:"@gt %1000"
</LocationMatch>
Но проверка синтаксиса выдала мне эту ошибку
`Updating target by ID with no ruleset in this context`
Может ли кто-нибудь сказать мне, как установить max_num_args выше?
Вот правило 960335
:
SecRule &TX:MAX_NUM_ARGS "@eq 1" "chain,phase:2,t:none,block,
msg:'Too many arguments in request',id:'960335',
severity:'4',rev:'2',ver:'OWASP_CRS/2.2.9',maturity:'9',
accuracy:'9',tag:'OWASP_CRS/POLICY/SIZE_LIMIT'"
SecRule &ARGS "@gt %{tx.max_num_args}" "t:none,setvar:'tx.msg=%{rule.msg}',
setvar:tx.anomaly_score=+%{tx.notice_anomaly_score},
setvar:tx.%{rule.id}-OWASP_CRS/POLICY/SIZE_LIMIT-%{matched_var_name}=%{matched_var}"