HTTP/2 专属攻击手册
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/http2-specific-attacks-lr-vnjg。
技能介绍
协议级盲区:被混淆的 H2 攻击面
很多安全工程师在审查现代 Web 架构时,习惯性地将 HTTP/2 的请求走私等同于 HTTP/1.1 的 CL.TE 或 TE.CL。然而,这种简化会掩盖 HTTP/2 独有的协议级威胁。当应用升级到 H2 时,底层的帧(Frame)机制、伪头部(Pseudo-headers)以及 HPACK 压缩算法引入了全新的解析差异。如果不区分这些底层差异,安全测试往往会漏掉那些专门针对 H2 多路复用和帧边界设计的高级攻击。
核心能力与执行路径
该技能专为绕过基础走私检测而设计,核心能力聚焦于 HTTP/2 特有的攻击向量:
- h2c 与降级注入:利用明文 h2c 升级过程中的解析差异,以及
H2→H1降级时的头部注入。 - 伪头部与 HPACK 操纵:通过篡改
:authority、:method等伪头部,或利用 HPACK 动态表污染触发解析器崩溃与请求走私。 - 单包竞态条件:结合 H2 的多路复用特性,在单个 TCP 包内交错发送多个流,制造解析竞态。
- 关联路由调用:在需要回溯字节级
H2.CL/H2.TE载荷时,自动关联并调用request-smuggling及race-condition技能。
适用边界与注意事项
此技能定位为专家级攻击手册,而非基础概念的科普。它假设用户已经理解 TCP/IP 基础和 HTTP/1.1 走私原理。在实际操作中,需注意目标中间件(如 Nginx、Envoy)对 H2 帧边界的处理差异;此外,由于涉及 HPACK 压缩状态,攻击载荷的构造需要精确的字节级控制,避免因客户端或代理的防御性解析导致测试失败。
使用场景
- 在测试现代 Web 框架时,需验证中间件对 `:method` 等伪头部的校验,以排查 H2.CL 请求走私漏洞。
- 审计微服务网关时,构造 HPACK 动态表污染载荷,测试代理解析器是否会产生内存耗尽或走私问题。
- 针对 h2c 明文升级的内部服务,模拟单包多流交错发送,验证是否存在单包竞态导致的请求混淆。
- 在红队演练中,目标支持 H2 到 H1 降级时,构造降级注入载荷,测试降级路径是否存在头部拆分风险。
适合人员
- 应用安全工程师:需要深入理解 Web 框架和中间件的协议解析逻辑,挖掘深层走私漏洞。
- 渗透测试人员:负责对现代架构进行红队演练,需掌握绕过 WAF 的 H2 高级攻击手法。
- 基础架构安全研究员:研究 Envoy 或 Nginx 等代理在 H2 帧边界处理上的差异与潜在缺陷。
- 蓝队防御工程师:需要理解 H2 特有的攻击原理,以便编写精准的流量检测与防御规则。