![ModSecurity 规则不扫描 URI](https://linux22.com/image/660426/ModSecurity%20%E8%A7%84%E5%88%99%E4%B8%8D%E6%89%AB%E6%8F%8F%20URI.png)
我正在难以创建新的 mod security 2.5 规则。
我的部署:Apache 服务器,设置为反向代理。(因此 Apache 网络服务器不托管网站。相反,我将请求代理到另一台响应网络请求的服务器。)
Web 服务器使用身份验证令牌将网站 URL 重写为安全 URL。
75.75.75.75 - - [01/May/2015:10:55:14 -0400] "GET /record/example.svc/js HTTP/1.1" 200 1786 "https://example.org/example.aspx?XOW%5eLdz%3c2%2f1%2f42%2527kbmhtbffJfx%3e0%2527qpkf%5ejc%3e2%2527Cfruho%60uhpmXOW%5eLdz%3c2%2f1%2f42%2527RptsbfVQU%60Jfx%3e193%2527qpkf%5ejc%3e2%2527RptsbfVQU%60Ejqts%60Bihmc%60Mblf%3cSdrtfru%1fTbpqjmh"
问题:
Modsecurity 当前扫描 URI。由于随机 URI 的性质,产生了许多误报。为了防止这种情况,我想免除所有 URI 的扫描。
由于重写、重定向和身份验证令牌都是在 Web 服务器上生成的(这就是我们希望保留它的方式),我该如何通知 mod 安全性这些标头是合法的并且不要扫描它们?
75.75.75.75 - - [01/May/2015:10:55:52 -0400] "GET /thing.aspx?XOW%5eLdz%3c375%25cddnnd%60ttds%5ebt%60he%3c5%2f58328 HTTP/1.1" 200 15100 "https://example.org/example.aspx?XOW%5eLdz%3c2%2f1%2f42%2527kbmhtbffJfx%3e0%2527qpkf%5ejc%3e2%2527Cfruho%60uhpmXOW%5eLdz%3c2%2f1%2f42%2527RptsbfVQU%60Jfx%3e193%2527qpkf%5ejc%3e2%2527RptsbfVQU%60Ejqts%60Bihmc%60Mblf%3cSdrtfru%1fTbpqjmh"
75.75.75.75 - - [01/May/2015:10:55:52 -0400] "GET /example/example.svc/js HTTP/1.1" 200 1786 "https://example.org/example.aspx?XOW%5eLdz%3c375%25cddnnd%60ttds%5ebt%60he%3c5%2f58328"
答案1
按照原始问题的评论中的回复;
简而言之,不可能否定 URI 的检查,ModSecurity 就像其他基于规则/签名的产品一样。
但是您可以做的是获取误报的规则 ID(从 apache 错误日志中VirtualHost
)并在 apache 配置中执行SecRemoveRuleById 123456
,这样做可以让您删除匹配的误报。
LocationMatch
我强烈建议你通过指令或类似方式尽可能有选择地进行
根据聊天记录,Hrvoje 的显示可能有用的示例或规则链