HTTP/2 协议层面的「极速拒绝服务」——Rapid Reset 攻击
2023 年底,Cloudflare、Amazon、Google 联合披露了一个影响几乎所有 HTTP/2 实现的漏洞:CVE-2023-44487。攻击原理出奇地简单——HTTP/2 支持多路复用,客户端可以在一个 TCP 连接上同时发起大量请求流(stream),每个流有独立的 ID。协议同时允许客户端随时发送 RST_STREAM 帧取消一个流。把这两个特性组合起来:攻击者瞬间发起成千上万个请求流,然后立即对每个流发送 RST_STREAM。服务端收到 RST 后释放资源,但请求处理的开销已经发生——连接速率限制根本拦不住,因为从连接维度看一切"正常"。结果就是极低带宽成本打瘫后端,而攻击者手中可能只握着几十条 TCP 连接。各 CDN 的缓解集中在两个方向:一是对单连接内 RST_STREAM 的频率设限,二是对并发流的创建速率做更激进的约束。有意思的是 HTTP/3(基于 QUIC)天然不受影响,因为 QUIC 的流管理机制截然不同——这大概是少有的"新协议更安全"的真实案例。
#Security
2023 年底,Cloudflare、Amazon、Google 联合披露了一个影响几乎所有 HTTP/2 实现的漏洞:CVE-2023-44487。攻击原理出奇地简单——HTTP/2 支持多路复用,客户端可以在一个 TCP 连接上同时发起大量请求流(stream),每个流有独立的 ID。协议同时允许客户端随时发送 RST_STREAM 帧取消一个流。把这两个特性组合起来:攻击者瞬间发起成千上万个请求流,然后立即对每个流发送 RST_STREAM。服务端收到 RST 后释放资源,但请求处理的开销已经发生——连接速率限制根本拦不住,因为从连接维度看一切"正常"。结果就是极低带宽成本打瘫后端,而攻击者手中可能只握着几十条 TCP 连接。各 CDN 的缓解集中在两个方向:一是对单连接内 RST_STREAM 的频率设限,二是对并发流的创建速率做更激进的约束。有意思的是 HTTP/3(基于 QUIC)天然不受影响,因为 QUIC 的流管理机制截然不同——这大概是少有的"新协议更安全"的真实案例。
#Security