CDN海啸攻击:利用HTTP/3协议转换实现350倍DoS放大

CDN Tsunami攻击利用HTTP/3到HTTP/1.1转换中的QPACK头部压缩机制,将低带宽请求放大350倍,对源站实施DoS攻击。阿里云、百度、腾讯等六家CDN受影响,连接放大可耗尽源站连接池,导致HTTP 504/503。了解攻击原理与缓解措施。

🔓 High 漏洞利用

研究人员披露名为“CDN Tsunami”的拒绝服务攻击,利用CDN将客户端HTTP/3流量转换为源站HTTP/1.1请求时的协议差异,通过QPACK头部压缩放大带宽,以及通过HTTP/3多路复用消耗连接资源。攻击者仅需低带宽即可对源站造成最高350倍的流量放大,阿里云、百度、腾讯、Cloudflare、CloudFront和Fastly均受影响。

来源:The Hacker News | 2026-08-20 | 原文链接

🔍 关键发现

  • CDN将HTTP/3转为HTTP/1.1时,QPACK压缩索引被解压为完整HTTP头部,导致带宽放大,阿里云/百度/腾讯因支持动态表最高可达350倍。
  • 连接放大变体利用HTTP/3多路复用和低速率DATA帧占用CDN到源站的TCP连接,可耗尽源站连接池,导致正常请求延迟达90秒并返回504/503。
  • 实验测量151,685个子域,其中42,330个响应HTTP/3被视为潜在受影响;CloudFront、Cloudflare和Fastly暴露面最大。

⚔️ 攻击链分析

1. 攻击者与CDN建立HTTP/3连接,发送携带超大HTTP头的请求以填充QPACK动态表(HBA)。 2. 攻击者发送大量仅含小索引值的请求,CDN解压为完整HTTP/1.1头并转发至源站,形成带宽放大。 3. 对于连接放大(HCA),攻击者在HTTP/3多路复用流中发送HEADERS后仅以极低速率发送DATA,使CDN保持后端连接不释放。 4. 大量连接耗尽源站连接池,导致正常用户访问超时或服务不可用。

🚩 失陷指标 (IOC)

  • 暂无公开IOC

🛡️ 缓解建议

  • ✅ CDN应限制QPACK动态表头字段大小(建议512字节)及单个流中动态表条目的引用次数(建议不超过10次)。
  • ✅ 强制设置解压后HTTP/1.1请求大小上限(建议64KB),超限直接拒绝。
  • ✅ 在CDN侧缓冲完整HTTP/3请求(含HEADERS和DATA)后再建立到源站的连接,并对后端连接设置独立超时和数量限制。

涉及漏洞:[]


⚠️ 本文仅供安全研究与学习,IOC 信息请勿用于非法目的。

🤖 常见问题解答(FAQ)

❓ 哪些CDN受影响?

阿里云、百度、腾讯、Cloudflare、CloudFront和Fastly均受带宽放大影响;除Cloudflare因缓冲完整请求外,其余五家均受连接放大影响。

❓ 为什么能放大350倍?

QPACK动态表允许攻击者用几字节索引代替大头部,CDN转成HTTP/1.1时必须展开完整头部。在动态表支持和约64并发流条件下产生350倍峰值放大。

❓ 源站如何防御此攻击?

源站无法直接修复,需依赖CDN侧补丁。可暂时限制请求头大小、缩短后端超时、限制单IP连接数,并使用WAF过滤可疑HTTP/3请求。

[!] CONTACT_CHANNELS

如需商务合作、技术咨询或漏洞反馈,请通过以下离岸节点联系作者。

> PING_AUTHOR (@A1RedTeam)