Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
http2-bomb — CVE-2026-49975 的概念验证(PoC)——利用 HPACK 放大与连接保持的 HTTP/2 服务器内存耗尽攻击(HTTP/2 Slowloris)。 | Kitploit
工具/GitHubGitHub/manisso/http2-bomb
漏洞分析漏洞利用Web安全渗透测试学习与教育
GitHubmanisso/http2-bomb

http2-bomb

CVE-2026-49975 的概念验证(PoC)——利用 HPACK 放大与连接保持的 HTTP/2 服务器内存耗尽攻击(HTTP/2 Slowloris)。

查看仓库
1个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

HTTP/2 炸弹 - CVE-2026-49975

一个针对 HTTP/2 服务器的拒绝服务(DoS)概念验证。通过将 HPACK 放大与流保持相结合,一台拥有普通网络连接的机器即可在数秒内使存在漏洞的服务器不可用。

漏洞

  • CVE: CVE-2026-49975
  • 标题: Apache HTTP Server:mod_http2 拒绝服务
  • 官方描述: Apache HTTP Server 的 mod_http2 模块中存在一个过大内存分配漏洞(CWE-789),允许通过特制的 HTTP 请求发起拒绝服务攻击。
  • 受影响版本: Apache HTTP Server 2.4.17 至 2.4.67。
  • 影响: 该攻击将 HPACK 放大与 Slowloris 风格的连接保持相结合,可迅速耗尽服务器的内存和资源。单个攻击者使用 100 Mbps 连接即可压垮存在漏洞的服务器。
  • 发现者: Quang Luong (Calif.IO),与 OpenAI Codex 合作。

攻击概览

该漏洞利用按多个阶段进行,如其执行日志所示:

  1. TCP/TLS 连接建立
    向目标服务器打开多个并发 TCP/TLS 连接。

  2. HTTP/2 协商
    客户端探测服务器允许的最大并发流数(通常为 100 或 128)。

  3. HPACK 预热
    发送精心构造的 HTTP 头,强制服务器分配过大的 HPACK 压缩表,迅速增加内存消耗。

  4. 连接保持
    一旦流被打开,连接将无限期保持存活,阻止已分配的内存被释放,最终耗尽服务器可用的内存。

测试结果与观察到的行为

测试针对多个 Web 服务器,使用其默认配置进行。

Web 服务器测试版本内存内存耗尽观察到的行为
Envoy1.37.232 GB~10 秒非常迅速地成功耗尽了内存。
Apache HTTP Server2.4.6732 GB~18 秒流限制通常为 100。通过 HPACK 预热和无限期连接保持的标准攻击流程。
nginx1.29.732 GB~45 秒流限制通常为 128。攻击成功,但需要更多时间才能耗尽可用内存。
Microsoft IIS未指定64 GB~45 秒可能通告异常大的流限制,例如 4294967297。
无漏洞目标多种--当尝试超过服务器配置的流限制时,会立即出现 TLS 故障或 TooManyStreamsError。

常见错误

h2.exceptions.TooManyStreamsError

当提供给 --streams 的值超过服务器支持的最大并发流数时发生。

解决方案: 在发起攻击之前,先探测服务器的流限制。


NameError: name 'SettingsAcknowledued' is not defined

PoC 源代码中的一个简单拼写错误。

解决方案: 将:

root@kitploit:~
SettingsAcknowledued

替换为:

root@kitploit:~
SettingsAcknowledged

[SSL] unknown error

通常表示目标不支持基于 TLS 的 HTTP/2,或正在拒绝传入的连接。


EOF occurred in violation of protocol

远程服务器意外关闭了连接。

这通常发生在服务器开始耗尽资源并拒绝新连接时。


Invalid input ConnectionInputs.SEND_HEADERS

在所有请求头传输完成之前,服务器就关闭了 HTTP/2 连接。

使用方法

该概念验证以 Python 脚本形式实现。

安装

root@kitploit:~
git clone https://github.com/califio/http2-bomb.git
cd http2-bomb
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

示例命令

使用 10 个连接和 100 个流进行基本攻击:

root@kitploit:~
python bomb.py example.com --streams 100 --connections 10

(要求目标允许每个连接至少 100 个并发流。)

自动检测流限制:

root@kitploit:~
python bomb.py example.com --connections 10

大规模攻击:

root@kitploit:~
python bomb.py target.example.com --connections 50

高并发连接测试:

root@kitploit:~
python h2bomb.py -t target.example.com:443 -c 1000

超大规模连接测试:

root@kitploit:~
python h2bomb.py -t example.com -c 20000

致谢

  • 原始漏洞研究:Quang Luong (Calif.IO)
  • 协作:OpenAI Codex

法律免责声明

本软件仅供安全研究、教育目的以及测试您拥有明确授权的系统使用。

未经授权使用本工具攻击您不拥有或未经许可测试的系统,可能违反适用的法律法规。作者和贡献者不对因使用本软件而导致的任何误用或损害承担任何责任。

下载工具