新型 HTTP/2 “MadeYouReset” 漏洞可发起大规模 DoS 攻击

发布于:2025-08-16 ⋅ 阅读:(16) ⋅ 点赞:(0)

图片

多项 HTTP/2 协议实现被发现存在一项名为 “MadeYouReset” 的新型攻击技术漏洞,该漏洞可能被用于实施强力的拒绝服务(DoS)攻击。

研究人员加尔・巴尔・纳胡姆、阿纳特・布雷 mler - 巴尔和亚尼夫・哈雷尔表示:“MadeYouReset 能够绕过服务器通常设定的每个 TCP 连接来自客户端的 100 个并发 HTTP/2 请求限制。此限制旨在通过约束客户端可发送的同时请求数量来缓解 DoS 攻击。”

“借助 MadeYouReset,攻击者可发送数千个请求,不仅会给合法用户造成拒绝服务状况,在部分供应商的实现中,还可能升级为内存耗尽崩溃。”

该漏洞已被分配通用 CVE 标识符 CVE-2025-8671,不过此问题影响多款产品,包括 Apache Tomcat(CVE-2025-48989)、F5 BIG-IP(CVE-2025-54500)和 Netty(CVE-2025-55163)。

继 “快速重置”(CVE-2023-44487)和 “HTTP/2 CONTINUATION Flood” 之后,MadeYouReset 是 HTTP/2 协议中出现的又一漏洞,它有可能被用于发动大规模 DoS 攻击。

如同另外两种攻击分别利用 HTTP/2 协议中的 RST_STREAM 帧和 CONTINUATION 帧来实施攻击一样,MadeYouReset 建立在 “快速重置” 及其缓解措施的基础之上,而 “快速重置” 的缓解措施限制了客户端可使用 RST_STREAM 取消的流数量。

具体而言,它利用了 RST_STREAM 帧既可用于客户端发起的取消,也可用于表示流错误这一特点。通过发送精心构造的帧,以意想不到的方式触发协议违规,促使服务器通过发出 RST_STREAM 来重置流,从而实现攻击目的。

图片

巴尔・纳胡姆解释道:“要让 MadeYouReset 发挥作用,流必须以服务器开始处理的有效请求启动,然后触发流错误,使服务器在后端继续计算响应时发出 RST_STREAM。”

“通过在恰当的时机构造某些无效的控制帧或违反协议排序,我们可以让服务器为已承载有效请求的流发送 RST_STREAM。”

导致服务器发送 RST_STREAM 帧的六种基本情况包括:

  • 增量为 0 的 WINDOW_UPDATE 帧

  • 长度不是 5(唯一有效长度)的 PRIORITY 帧

  • 使流依赖于自身的 PRIORITY 帧

  • 增量导致窗口超过 2^31−1(允许的最大窗口大小)的 WINDOW_UPDATE 帧

  • 客户端关闭流(通过 END_STREAM 标志)后发送的 HEADERS 帧

  • 客户端关闭流(通过 END_STREAM 标志)后发送的 DATA 帧

值得注意的是,这种攻击无需攻击者发送 RST_STREAM 帧,因此完全绕过了 “快速重置” 的缓解措施,同时达到了与 “快速重置” 相同的攻击效果。

计算机紧急响应小组协调中心(CERT/CC)在一份公告中表示,MadeYouReset 利用了 HTTP/2 规范与许多实际 Web 服务器内部架构之间因流重置而产生的不匹配,导致资源耗尽 —— 攻击者可利用这一点发动 DoS 攻击。

Imperva 公司称:“服务器触发的‘快速重置’漏洞的发现,凸显了现代协议滥用日益加剧的复杂性。由于 HTTP/2 仍是 Web 基础设施的基础,防范诸如 MadeYouReset 这类难以察觉且符合规范的攻击比以往任何时候都更为关键。”

HTTP/1.1 注定被淘汰

在 MadeYouReset 漏洞披露之际,应用安全公司 PortSwigger 详细介绍了新型 HTTP/1.1 同步失调攻击(又称 HTTP 请求走私),包括一种名为 0.CL 的 CL.0 变体,这使数百万网站面临被恶意接管的风险。阿卡迈(Akamai,CVE-2025-32094)和 Cloudflare(CVE-2025-4366)已修复这些问题。

HTTP 请求走私是一种影响应用层协议的安全漏洞,它利用前端和后端服务器对不符合 RFC 规范的 HTTP 请求解析的不一致性,使攻击者能够 “走私” 请求并规避安全措施。

PortSwigger 的詹姆斯・凯特尔表示:“HTTP/1.1 存在一个致命缺陷:攻击者可以对一个请求的结束位置和下一个请求的开始位置制造极大的模糊性。而 HTTP/2 及以上版本消除了这种模糊性,使得同步失调攻击几乎不可能发生。然而,仅仅在边缘服务器上启用 HTTP/2 是不够的 —— 它必须用于反向代理和源服务器之间的上游连接。”


网站公告

今日签到

点亮在社区的每一天
去签到