一个用来操作和分析modsecurity审计日志文件的工具。
modseclogc的Python项目详细描述
modseclogc是modsecurity审计日志文件操作 分析工具,基于命令行或python模块。
安装
$ pip install modseclogc
示例
按唯一ID查看请求:
$ modseclogc --match-id VtU2o38AAQEAAEV6AuwAAAAE modsec.log --fc565b0b-A-- [01/Mar/2016:06:28:51 +0000] VtU2o38AAQEAAEV6AuwAAAAE 127.0.0.1 34882 127.0.0.1 80 [...snip...] --fc565b0b-Z--
显示与路径glob匹配的请求标识:
$ modseclogc --match-path /path/to/resource/** --show-id modsec.log VtU2o38AAQEAAEV6Au0AAAAE VtU2o38AAQEAAEV6AuwAAAAE VtU2o38AAQEAAEV5BIgAAAAK
显示请求行和请求负载(modsec审计部分 “c”)每个审计记录:
$ modseclogc --show-request-line --show-parts C modsec.log OPTIONS /path/to/resource HTTP/1.1 GET /path/to/resource HTTP/1.1 POST /path/to/resource HTTP/1.1 --40382b65-C-- query=foo+bar&page=1 GET /path/to/resource HTTP/1.1
生成审计的副本,不包括有效载荷(modsec审计部分 “c”)用于特定路径全局,并压缩输出:
$ zcat modsec_audit.log.gz \ | modseclogc \ --match-path /path/to/resource/** --hide-parts C \ --unmatched keep \ | gzip -9 > clean-modsec_audit.log.gz
详细信息
- 默认情况下,所有输入记录都匹配。这是通过 --match-*和--inverse参数。
- 默认情况下,将删除所有不匹配的记录。这是通过 参数--unmatched。
- 输出操作(显示、隐藏等)仅适用于匹配的记录 (注意,--inverse参数反转匹配 算法,而不是这个规则)。
- 审核日志必须采用Native格式(请参见 SecAuditLogFormatmodsec选项)。