SuperAPI AI 工具集

pentest-http-smuggling

安全与审计

查看项目

更新于 10-15 22:41

技能介绍

用途:检测并利用前端代理与后端服务器在 HTTP 请求解析上的差异,用于绕过安全控制、污染缓存和劫持请求。资料指出这类问题不在标准污点分析流程覆盖范围内。

主要能力:CL.TE 走私(前端用 Content-Length、后端用 Transfer-Encoding);TE.CL 走私(反向场景,配合混淆的 TE 头);TE.TE 走私(双方均用 TE,通过大小写、空白、重复头等混淆);HTTP/2 降级攻击(H2 到 H1 转换、伪头注入、H2 头中的 CRLF 注入、通过 CONTINUATION 帧拆分请求);缓存投毒(对比缓存键与缓存内容、用不同客户端会话验证);Host 头攻击(注入、密码重置投毒、路由型 SSRF、歧义 Host 导致的缓存投毒)。覆盖 WSTG-INPV-15 与 WSTG-INPV-17。

使用方式:先做栈指纹识别,确定路径中的反向代理(nginx、HAProxy、Cloudflare、AWS ALB)、CDN、负载均衡器及 HTTP 版本与解析行为;再按上述模式构造请求并验证影响,如缓存投毒、凭据窃取、请求劫持或安全控制绕过。工具类别包括走私检测(smuggler.py、Burp 的 HTTP Request Smuggler)、HTTP/2 测试(h2csmuggler、curl --http2、nghttp)、时序攻击(Turbo Intruder)、原始请求(Python socket、netcat)、缓存分析(curl、自定义脚本)、流量捕获(Wireshark、tcpdump)。环境需 Python 3.x 原始套接字、Burp Suite Professional、支持 --http2-prior-knowledge 的 curl、Turbo Intruder、抓包工具。

适用场景:具备明确授权和范围的协议层测试。

限制:必须取得覆盖协议层测试的书面授权,明确基础设施并准备缓存投毒的 CDN 清除回滚方案,且需有基础设施团队应急联系方式,因为走私可能影响其他用户。具体命令、代码与测试向量需参见 references/tools.md 和 references/workflows.md。