我在Apache2.4的基础上使用CRS3.3.0的mod_security。在最近的一次L7 DDoS攻击中,我认识到使用HTTP/1.*的某些攻击是正确的,使用基于geolookup的HTTP 403阻止攻击,并将国家代码列在CRS配置的DDoS中。但是,当使用HTTP/2作为协议时,来自相同IP的请求不会被阻止。对于特定于请求-910-IP-REPUTATION.conf的配置设置,是否只为默认规则集中的协议HTTP/1.*启用了配置设置?目前,我将受影响站点的允许协议限制在HTTP1.1,使mod_security工作。
访问日志中的一些示例:
:443 XXX.XXX--03/2022:00:37:49 +0200 "GET /?s HTTP/1.1“403 5636”XXX.XXX "Mozilla/5.0 (Macintosh;Intel 10_15_7) AppleWebKit/537.36 (XXX.XXX,类似壁虎) Chrome/99.0.4844.84 Safari/537.36“
:443 XXX.XXX--03/08/2022:00:43:12 +0200 "GET /?s HTTP/2.0“301 392 "https:///?s”Mozilla/5.0 (Macintosh;Intel 10_15_7) AppleWebKit/537.36 (,类似壁虎) Chrome/99.0.4844.84 Safari/537.36“
提前感谢!
斯卡普
发布于 2022-08-04 13:11:17
CRS在这里值班。对于请求-910-IP-REPUTATION.conf,没有只为HTTP/1.*协议启用的配置设置。我不知道为什么规则910100不适用于HTTP/2。
但是,您是否有可能使用SecDebugLog和SecDebugLogLevel(https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual-(v2.x%29#secdebugloglevel)? )来启用调试日志(最好不是在生产中)(也许这样可以获得更多的洞察力)?
如果您不能看到和解决modsec_debug.log的问题,您可以在核心规则集GitHub项目中打开一个问题。我们很乐意帮忙!
https://stackoverflow.com/questions/73223052
复制相似问题