ModSecurity的审计日志logging实际上是什么意思?

我们有ModSecurity设置来loggingApache2的modsec_audit.log。 今天,我们在这个日志中创build了2259个条目,引用了:

Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) 

这些条目是否意味着bingbot已经停止抓取我们的网站? 此日志条目的Hlogging指出(没有引用严重性或标记:

 Message: Rule execution error - PCRE limits exceeded (-8): (null). 

该条目的HTTP结果代码是200 OK。

我想了解这些日志中的logging意味着什么,所以我可以创build某种forms的报告。 例如,我的理解是,如果日志条目的H部分指出:

 [severity "CRITICAL"] 

该ModSecurity已经阻止了页面请求。 我的理解是否正确?

希望有人能帮我解决这个问题。 🙂

首先要检查的是它是否实际上是Bing Bot。 欺骗你的用户代理标题是非常容易的,而且所有的恶意机器人都是这样做的。 真正的Bing机器人总是来自一个IP地址,有一个反向查找<something>.search.msn.com 。 您应该检查返回域的正向查找:

 $ dig +short -x 157.55.16.222 msnbot-157-55-16-222.search.msn.com. $ dig +short msnbot-157-55-16-222.search.msn.com 157.55.16.222 

这里有一些关于你的PCRE限制问题的好build议 。 看看你是否可以追查哪个规则导致问题,并从那里去。

[severity "CRITICAL"]不足以确定请求是否被阻止。 根据您的configuration和严重性的原因,可以阻止请求[severity "NOTICE"][severity "CRITICAL"] 。 当请求被阻塞时,我看到的string是Access denied with code 403 (phase 2). (或者有时(phase 1).

如果您可以在您的访问日志中追踪相同的请求,那么您可以在那里检查返回代码是绝对确定的。 您可以使用IP地址和时间戳(稍微模糊一点,因为一个IP地址可以轻松地在一秒钟内发出多个请求),或者如果您有mod_unique_id您可以将其添加到您的访问日志中可以匹配你的mod_security日志中的任何一行。 为此,请将%{UNIQUE_ID}e添加到您的LogFormat行。