在 ModSecurity 中存在PCRE limits exceeded
错误。
我知道我可以通过设置规则来解决这个问题,例如:
SecPcreMatchLimit 150000
SecPcreMatchLimitRecursion 150000
但是,这些规则实际上在做什么?PCRE限制递归设置为150,000是什么意思?通过将这些设置得如此之高,我允许通过哪些安全漏洞?是什么recursion
意思limit
?
我知道有文档,但文档实际上并没有告诉我发生了什么,它只是告诉我如何使用指令。
这些似乎是 PCRE 引擎的内部设置,目的是限制尝试将某些文本与模式匹配所花费的最大内存量/时间。
pcreapi
联机帮助页几乎没有用外行的话来解释它:由于 PCRE 库内置默认值是 10000000,我的猜测是建议为 mod_security 设置较低的设置,以防止请求被长时间阻止。
您在 mod_security.conf 中看到的值是 RegEx DoS 规则的一部分: