如何在 Apache access.log 中包含 ModSecurity 请求的最终操作

如何在 Apache access.log 中包含 ModSecurity 请求的最终操作

我目前在 Ubuntu Trusty 上使用 ModSecurity 2.7 和 Apache 2.4.7。

我想要使​​用 Apache 的LogFormatCustomLog指令,以便我可以包含一个字段,指示 ModSecurity 是否决定允许请求继续或者是否阻止请求。

我还想添加一个字段,指示允许的请求是否触发了任何仅警告的 ModSecurity 规则。我并不关心这是否需要两个不同的字段,或者只是一个,只要信息出现在每个 Apache 日志行中即可。

文档这表明我可以使用mod_log_config%{...}M语法在 Apache 日志中包含 ModSecurity 变量,但我不知道哪些变量可以给我必要的信息。

我明确地尝试维护SecAuditEngine RelevantOnly而不是要求每个请求都有完整的审计日志。我还希望避免使用mod_unique_id或类似方法进行跨日志关联。

这可能吗?怎么做?

答案1

尝试使用异常响应状态进行阻止,然后将其记录在日志中。对于警告,请使用 HIGHEST_SEVERITY。

(通过https://twitter.com/ivanristic/status/632098551603052544

答案2

http://resources.infosecinstitute.com/analyzing-mod-security-logs/

SecAuditLogParts:审计日志非常大,因为它记录了有关请求的所有内容,例如请求标头、响应标头、请求正文和正文响应等。因此,通过此选项,我们实际上可以告诉 Mod Security 应该在错误日志中记录什么以及应该忽略什么。为了做到这一点,每个部分都分配了一个字母表。以下是定义每个字母表含义的表格。

相关内容