SuperAPI AI 工具集

waf-detect

安全与审计

查看项目

更新于 10-16 05:42

技能介绍

用途:在渗透测试或漏洞赏金侦察阶段,判断目标 URL 前是否部署 WAF 并识别其产品类型,为后续 WAF 绕过策略提供依据;也可用于验证自有服务的 WAF 是否正常工作,或排查扫描器误报是否由 WAF 引起。

主要能力:优先使用 wafw00f 自动检测,可识别 140 多种 WAF;当 wafw00f 不可用时,改用 curl 手动指纹识别,通过对比正常请求与恶意载荷请求的响应头(如 server、cf-ray、x-amz、x-sucuri、x-fw- 等)和 HTTP 状态码差异来判断 WAF 是否存在。

使用方式:需要 Python 3 与 pip(安装 wafw00f)、curl(手动回退),并能通过 HTTP/HTTPS 访问目标。输入变量为 TARGET_URL。若未安装 wafw00f,可执行 pip install wafw00f --quiet;随后运行 wafw00f "$TARGET_URL" -a 输出所有候选 WAF。手动方式则先用 curl -s -I 收集基线响应头,再发送 XSS 与 SQLi 载荷并记录状态码与响应头,最后对照 REFERENCE.md 中的指纹模式表判断。

适用场景:渗透测试与漏洞赏金前期侦察、自有服务 WAF 有效性验证、扫描器误报排查。

限制:wafw00f 安装失败时可用 pip install --user wafw00f 或虚拟环境解决;若所有载荷均返回 200,可能无 WAF 或检测被规避,可尝试 URL 编码变体;返回 403 但无 WAF 头可能是应用层拦截,需检查响应体;触发限速导致 IP 被封时可在请求间加 sleep 2。注意“未检测到 WAF”并不保证 WAF 不存在,隐身模式 WAF 可能规避检测。identYwaf 也可用于 WAF 绕过研究。