自 8 月份以来,一种名为“HTTP/2 快速重置”的新 DDoS(分布式拒绝服务)技术已被作为零日漏洞积极利用,其规模打破了之前的所有记录。
Amazon Web Services、Cloudflare 和 Google 今天联合发布了有关零日技术的消息,他们报告称,缓解攻击的速度达到每秒 1.55 亿个请求 (Amazon)、2.01 亿个 rps (Cloudflare) 和破纪录的 398 个请求。百万 rps(谷歌)。
谷歌表示,他们能够通过在网络边缘增加更多容量来减轻这些新的攻击。
Cloudflare 说,它所缓解的攻击规模比 2023 年 2 月以来的记录(7100 万 rps)大三倍,而且令人震惊的是,这是使用由 20000 台机器组成的相对较小的僵尸网络实现的。
自 8 月底以来,Cloudflare 已检测并缓解了超过 1000 起“HTTP/2 快速重置”DDoS 攻击,其 rps 超过 1000 万,其中 184 次打破了之前 7100 万 rps 的记录。
随着更多威胁参与者使用更广泛的僵尸网络以及这种新的攻击方法,HTTP/2 快速重置攻击将继续打破更大的记录。
当今的僵尸网络由数十万或数百万台机器组成。
鉴于整个网络通常每秒仅处理 1-30 亿个请求,因此使用这种方法可以将整个网络的请求集中在少数目标上,这并非不可想象。
HTTP/2 快速重置详细信息
这种新颖的攻击利用了一个编号为 CVE-2023-44487 的零日漏洞,该漏洞利用了 HTTP/2 协议中的一个弱点。
简而言之,该攻击方法滥用 HTTP/2 的流取消功能,不断发送和取消请求,压垮目标服务器/应用程序并施加 DoS 状态。
HTTP/2 以参数形式提供保护,限制并发活动流的数量以防止 DoS 攻击;然而,这并不总是有效。
协议开发人员引入了一种更有效的措施,称为“请求取消”,它不会破坏整个连接,但可能会被滥用。
自 8 月底以来,恶意行为者一直在滥用此功能,在服务器上发送一系列 HTTP/2 请求和重置(RST_Stream 帧),要求服务器处理每个请求并执行快速重置,从而压垮其响应新传入请求的能力。
请求流图
谷歌在有关该问题的帖子中解释说:该协议不要求客户端和服务器以任何方式协调取消,客户端可以单方面这样做。
客户端还可以假设,当服务器收到 RST_STREAM 帧时,在处理来自该 TCP 连接的任何其他数据之前,取消将立即生效。
HTTP/2 快速重置逻辑概述
提供商制定缓解措施
Cloudflare 解释说,HTTP/2 代理或负载均衡器特别容易受到快速发送的长字符串重置请求的影响。
该公司的网络在 TLS 代理与其上游对应部分之间的位置不堪重负,因此损坏是在不良请求到达阻止点之前造成的。
就实际影响而言,这些攻击导致 Cloudflare 客户端中的 502 错误报告增加。
Cloudflare 表示,它最终使用了一个旨在处理超容量攻击的系统(称为“IP Jail”)来缓解这些攻击,该互联网公司将该系统扩展到覆盖其整个基础设施。
该系统会“监禁”违规 IP,并在一段时间内禁止它们在任何 Cloudflare 域中使用 HTTP/2,同时影响共享被监禁 IP 的合法用户,但性能会略有下降。
亚马逊表示, 它缓解了数十起此类攻击,但没有提供有关其影响的任何详细信息,并强调其客户服务的可用性得到了维持。
这三家公司都得出结论,客户应对 HTTP/2 快速重置攻击的最佳方法是使用所有可用的 HTTP 洪水防护工具,并通过多方面的缓解措施增强其 DDoS 抵御能力。
不幸的是,由于这种策略滥用了 HTTP/2 协议,因此没有通用的修复方法可以完全阻止攻击者使用这种 DDoS 技术。
相反,在软件中使用该协议的软件开发人员正在实施速率控制,以减轻 HTTP/2 快速重置攻击。
Cloudflare 在另一篇文章中解释说,他们必须将零日秘密保密一个多月,以便安全供应商和利益相关者有时间对威胁做出反应,然后再让更多威胁行为者知道,“猫鼠”游戏开始。
直到现在,一直对信息进行限制,以便让尽可能多的安全供应商有机会做出反应。
然而,在某些时候,负责任的事情变成了公开披露这样的零日威胁。现在就是那一天。