modsecurity troubleshoting
最近上了modsecurity做waf, 但几个正常页面报403了, 看页面上的显示错误, 是modsecurity拦截了.
这个页面上是通过执行sql返回结果的, 估计是被识别成了sql注入.
分析问题
打开audit日志
首先要打开modsecurity的audit log, 默认是已经打开 了, 位置在/var/log/modsec_audit.log. 如果没有打开 可以参考以下步骤.
-
配置文件**/etc/nginx/modsec/modsecurity.conf**.
-
找到以下几行, 做相应的修改
SecAuditLogType Serial SecAuditLog /var/log/nginx/modsec_audit.log #日志路径 SecAuditEngine RelevantOnly #Off关闭, On打开并记所有处理记录, ReleventOnly只记触发了warning和error的. SecAuditLogRelevantStatus "^(?:5|4(?!04))" #只记是500和400系统的error和warning, 但排除了404 SecAuditLogParts ABIJDEFHZ #具体哪部分写入日志, 详细看下表
Section Description A Audit log header (mandatory) B Request