在 modsecurity 中记录 POST 请求正文

在 modsecurity 中记录 POST 请求正文

您好,我在 nginx(1.15.12)上使用 libmodsecurity(4e6e4243|v3.0.3),连接器是当前主服务器(d7101e13685),OWASP CRS 是(ab24a20faf28156f0|v3.1.0)。

我正在尝试使用类似于以下规则的内容在特定 URL 上记录 POST 请求正文(modsecurity 中的 C 部分):

SecRule REQUEST_URI "/some_url/processor.php" \
  "id:66600001,\
  phase:2,\
  t:none,\
  log,\
  ctl:auditLogParts=ABCIJDEFHZ,\
  pass"

这导致 nginx 无法启动,并出现以下错误:

Expecting an action, got: ctl:auditLogParts=ABCIJDEFHZ,\

我尝试了 ctl 的多种变体,包括ctl:auditLogParts=ABCFHZctl:auditLogParts=AC。全部引发相同的错误。

奇怪的是,这样做ctl:auditLogParts=+C可以让 nginx 启动,但不幸的是,审计日志没有显示 POST 的请求正文,实际上它什么都没有显示。

当然,将 modsecurity.conf 中的 SecAuditLogParts 配置从ABIJDEFHZ(默认) 更改为 会ABCIJDEFHZ更改日志记录,但会让我们不符合大量规则。

相关内容