我使用 mod 安全规则来拒绝 wp 登录尝试。
<LocationMatch /wp-login.php>
SecRule REQUEST_METHOD "@streq POST" \
"phase:5,chain,t:none,auditlog,pass,msg:'Login Failure Detection: Wordpress Login Attempt Failure ',id:'377360',rev:2,severity:'4',tag:'no_ar'"
SecRule RESPONSE_STATUS "200" "t:none"
</LocationMatch>
我希望此规则阻止访问并显示 401 状态。
你能帮我吗 ?
答案1
您可以通过在规则中添加“deny,status:401”来阻止:
<LocationMatch /wp-login.php>
SecRule REQUEST_METHOD "@streq POST" \
"phase:5,chain,t:none,auditlog,deny,status:401,msg:'Login Failure Detection: Wordpress Login Attempt Failure ',id:'377360',rev:2,severity:'4',tag:'no_ar'"
SecRule RESPONSE_STATUS "200" "t:none"
</LocationMatch>
更多详细信息请点击这里:
- https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#deny
- https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#status
但是我不明白为什么你要对上面的规则这样做。这匹配任何成功(状态 200)的 POST 方法,而不是任何失败的方法?想必你只想阻止失败的尝试?