用途:对 AWS WAFv2 Web ACL 配置做最佳实践评审,输出自包含的 HTML 报告,含严重度分级发现、应用上下文与跨规则修复顺序建议。也回答针对性问题,例如某条规则为何拦截结账请求、WCU 如何精简。
主要能力:waf-assess.py 对配置做机械性检查并写出大部分发现;人工复核意图类判断与不可脚本化的部分(如 Allow 条件可伪造性、Bot Control、落地页与 Cookie 逻辑、跨规则修复影响);waf-report.py 渲染报告。产出 waf-assessment-report.html(无外部 CSS/JS/字体与网络请求)、context.json 及 waf-summary.json、pre-checks.json、validation.json 等可 diff 制品。全部输出为英文。
使用方式:先确认对象确为 AWS WAF;如无输入可执行 aws wafv2 list-web-acls、get-web-acl、get-logging-configuration 导出。随后运行 python3 "{scripts_dir}/waf-assess.py" "{input_file}" "{output_dir}",解析 ---RESULT--- 块;补齐 context 后加 --context context.json 重跑。需要 Python 3.9+ 标准库,无需安装。
限制:不适用于非 AWS 防火墙、AWS Network Firewall、安全组/网络 ACL 与 IAM 策略;不得由子代理代写发现;上下文仅属于单个 Web ACL,不可跨客户复用,缺失事实不得臆测。