0

我想知道是否有办法在 ModSecurity 中使用一条规则阻止多个 URL?我有一个包含 30 多个 URL 的列表,我想拒绝并记录下来。我知道我可以使用以下命令阻止单个 URL:

SecRule REQUEST_URI "/url/to/block" "phase:1,id:'1000001',log,noauditlog,deny,status:403"

我是否需要为每个 URL 编写规则,还是可以将它们都组合成同一个规则?

4

2 回答 2

1

它应该是

 SecRule REQUEST_URI "@pmFromFile /path/to/urlBlacklistFile" \
 "phase:1,id:'1000001',log,noauditlog,deny,status:403"

而不仅仅是@pm

于 2017-09-13T06:07:39.467 回答
1

您有几个选择可以避免多个规则:

使用regexpm有一个非常长的规则。例如:

 SecRule REQUEST_URI "@pm url1 url2 url3...etc." \
"phase:1,id:'1000001',log,noauditlog,deny,status:403"

或者列出文件中的 URL 并使用pmFromFile进行匹配。例如:

 SecRule REQUEST_URI "@pm /path/to/urlBlacklistFile" \
 "phase:1,id:'1000001',log,noauditlog,deny,status:403"
于 2016-10-29T08:06:33.083 回答