Read the Docs遭史上最复杂DDoS攻击:峰值每分钟550万请求,持续近十天

AI 画家正在创作中

2026年6月中下旬,开源文档托管平台Read the Docs遭受了其历史上规模最大、技术最复杂的分布式拒绝服务攻击。峰值期间基础设施每分钟承受超过550万次请求,是正常日峰值的约100倍,攻击持续近十天,覆盖数百个网络和数百万个唯一IP地址。9月8日,Read the Docs工程团队发布事后分析,详细披露了此次攻击的技术特征和防御经验,文章由工程师David Fischer撰写,呼吁开源基础设施社区建立更有效的协同防御机制。

攻击特征:全球分布式、自适应、针对性绕缓存

此次攻击与以往Read the Docs经历的DDoS事件有本质区别。恶意请求来自全球数百万个唯一IP地址,横跨数百个自治系统网络,包括住宅IP地址段和大小不同的托管服务商——这意味着攻击完全绕过了基于地理位置或IP段的限速策略。攻击者系统地随机化HTTP请求头和TLS连接参数(JA3/JA4),有效规避了签名过滤。更关键的是,攻击者精准定位了会导致缓存失效的URL,包括不存在的独特路径(404响应)和临时重定向(302响应),确保每一次请求都穿透缓存层直达后端服务器。

当Read the Docs实施IP封锁或限速时,攻击者能够实时调整策略:轮换目标路径、分散流量至更广泛的IP池,探测防御边界的临界点。这种自适应能力在Read the Docs此前接触的所有DDoS事件中从未出现过,表明攻击者使用了相当先进的自动化工具,而非简单的暴力流量轰炸。Read the Docs在事后分析中透露,攻击高峰期团队被迫手动调整Cloudflare规则,每小时轮换一次封锁策略,但攻击者的响应速度几乎同步——团队每新推出一条规则,攻击者在数分钟内便能找到绕过方法。这种攻防节奏远超小型运维团队的常规应对能力,团队成员在长达十天的攻击期内几乎无法正常休息。

Cloudflare防护的局限与应对策略

Read the Docs使用Cloudflare作为边缘防护,但Cloudflare的自动DDoS保护仅拦截了源自已知僵尸网络的部分流量,大量通过住宅代理的恶意请求突破了第一层检查,直抵Read the Docs自身的速率限制和WAF规则。Read the Docs工程团队在事后总结中指出,基于每个Cloudflare数据中心的速率限制规则在全球分布式攻击面前效果有限——在「所有国家同时发起」的场景下,很难设计既不误伤正常爬虫又能有效限速的规则。Fischer在博客中坦言,Read the Docs团队在此前两年间已观察到AI爬虫带来的流量压力持续上升,将一个AI生成的爬虫接入代理网络已变得极其简单,平台此前的防御机制勉强能够应对,但6月的攻击规模比以往最严重的事件大出十倍以上,给小型运维团队带来了巨大压力。Fischer呼吁开源文档托管、软件仓库和持续集成服务等基础设施提供方建立信息共享与协同防御机制,而不是让每个平台各自摸索应对方案,因为这类攻击的目标往往并非单一平台,而是整个开源软件供应链的可用性。