
一名高中生的独立技术深度剖析
2026年6月
本仓库包含我对 HTTP/2 炸弹 漏洞(CVE-2026-49975 / CVE-2026-47774)的完整分析,该漏洞将两个存在二十年的 HTTP/2 原语链接在一起:
结果: 一条 100 Mbps 的客户端连接可在短短 10 秒内 耗尽 32 GB 服务器内存。
一切始于我在 Bilibili(中国的 YouTube)上无意识地刷视频。一个科技频道简短提到了“一种新的 HTTP/2 攻击能够击垮主流 Web 服务器”。没有细节,只有标题。
这吸引了我。我暂停视频,打开披露链接,然后掉进了兔子洞。一篇论文引出了五个 CVE,接着是 RFC,再然后是源代码。我没有停下来,直到我完全理解为什么线上的一个字节能够固定住 59 字节的内存——以及为什么之前没有人将这两个技巧串联起来。
所以这个仓库不仅仅是一个总结。这是我用 LaTeX 从头编写的、完整的、毫不妥协的深度分析。没有老师要求我做这件事。我只是无法放手。
影响所有五个主流 Web 服务器实现的默认配置:
| 实现 | 放大倍数 | 达到32GB所需时间 |
|---|
| Envoy 1.37.2 | ~5,700:1 | ~10 秒 |
| Apache httpd 2.4.67 | ~4,000:1 | ~18 秒 |
| nginx 1.29.7 | ~70:1 | ~45 秒 |
| Microsoft IIS | ~68:1 | ~45 秒 |
| Cloudflare Pingora | ~68:1 | — |
| 文件 | 描述 |
|---|---|
http2-bomb-paper.tex | 我完整论文的 LaTeX 源码 |
http2-bomb-paper.pdf | 编译好的 PDF(可直接阅读) |
README.md | 本文件 |
max_request_headers_kb——放大倍数高达 5,700×。“最大解码头部大小”和“最大头部数量”是两个不同的限制,服务器需要同时具备两者。
| 控制项 | 防御对象 |
|---|---|
| 最大解码头部大小 | 传统 HPACK 炸弹 |
| 最大头部字段数量(包括 Cookie 碎块) | 索引引用炸弹(本攻击) |
| 停滞流的最大生存期 | 流控内存固定 |
该漏洞是由 AI(Codex) 在同时阅读五个代码库时发现的——这是一种新型的跨实现协议缺陷,“没有人拥有这些缝隙。”
Quang Luong、Jun Rong、Duc Phan(Calif Security Research)于2026年6月2日协调披露。
原始论文:blog.calif.io/p/codex-discovered-a-hidden-http2-bomb
吴志程
信宜市第一中学 2028届
广东,中国
本作品采用 知识共享署名 4.0 国际许可协议 进行许可。
您可以自由分享和改编,但需注明出处。
仅用于学术和防御目的。