mod_security 不会阻止无效的 URI 请求

mod_security 不会阻止无效的 URI 请求

我对 Modsecurity 还很陌生,需要一些帮助来保护我的开发服务器。

我安装了 Apache 2.4 和 Mod Security 2.8.0

我还安装了 OWASP ModSecurity Core 规则集 ver.3.2.0

现在,我正在尝试阻止所有不遵循特定REQUEST_URI模式的请求。

例如我有这样的规则:

SecRule REQUEST_URI "!@rx (^(\/loc\/.*)$)" \ 
"id:1234, phase:1,log,deny,status:404, msg:'Block URI'"

当我访问与浏览器不同的 URL 时,mysite.com/loc/该规则会起作用并阻止请求。问题是:我在 Apache 日志中看到很多来自攻击者的请求尽管有此规则,但仍通过了,所以我一定遗漏了某些东西。

我通过浏览器发出的请求(与攻击者的请求相同)被阻止(来自 Apache 日志):

MY IP - - [18/Oct/2019:09:44:26 +0300] "GET /FxCodeShell.jsp?xxx HTTP/1.1" 404 89 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"

攻击者的请求被传递(来自Apache日志):

Attacker IP - - [18/Oct/2019:03:37:03 +0300] "GET /FxCodeShell.jsp?xxx HTTP/1.1" 302 310 "http://XX.XX.XX.XX:80/FxCodeShell.jsp?xxx" "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1)"

有什么建议可以解释为什么该规则无法生效吗?我遗漏了什么?

任何帮助将不胜感激!

相关内容