HTTP/2 流放大 PoC · Docker · Web 控制台
HTTP/2 允许在单个 TCP 连接上多路复用多个流。此 PoC 构造了包含大量内部引用的特制 HEADERS 帧,强制服务器分配大量内存来跟踪这些引用。
| 服务器 | 放大倍数 | 效果 |
|---|---|---|
| Envoy 1.37.2 | ~5,700:1 | 约 10 秒内 ~32 GB |
| Apache httpd 2.4.67 | ~4,000:1 | 约 18 秒内 ~32 GB |
| Nginx | 高 | 快速 OOM |
极少的流量,最大程度的内存耗尽。
git clone https://github.com/obrige/http2-bomb.git
cd http2-bomb
docker compose up -d
使用来自
ghcr.io/obrige/http2-bomb:latest的预构建镜像,无需本地构建。
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8080
docker pull ghcr.io/obrige/http2-bomb:latest
docker run -d -p 8080:8080 ghcr.io/obrige/http2-bomb:latest
仅用于授权安全测试和教育研究。 未经明确书面许可,不得针对目标使用。用户承担全部法律责任。