2023年10月10日,CISA(美国网络安全和基础设施安全局)联合Google、Cloudflare、AWS等11家机构同日发布警报:一场持续近两个月、峰值达3.98亿次请求/秒的HTTP层DDoS攻击,同时砸向三家云巨头。这是DDoS史上第一次“厂商集体拉响警报”,攻击手法被命名为HTTP/2 Rapid Reset(快速重置)。本文以CISA咨询AA23-253A和各厂商技术公告为主轴,解剖这次史上最强DDoS的攻击原理、十年军备赛的演化账本,以及——对通信工程师最要紧的问题:为什么这场战争的主战场,其实在你我维护的接入网和城域网里。
先交代事实底座。根据CISA于2023年10月10日发布的咨询公告AA23-253A,以及Google、Cloudflare、AWS同日发布的技术分析:
要理解这次攻击的“级别”,得先分清DDoS的两条计分赛道:一条是体积(bit/s,砸管道),一条是速率(request/s,砸服务器软件栈)。2023年10月之前,破纪录的都是体积型攻击;Rapid Reset开创的,是速率赛道上的一次指数级跳变——它不追求把你管道塞满,而是让服务器软件本身把自己耗死。
哪些是可验证事实、哪些是作者判断,这里说清楚:时间线、峰值数字来自CISA公告与三厂商官方博客,属于公开披露;而“攻击者意图指向托管与金融行业”是厂商的受害面观察,不等于全部攻击目的。
Rapid Reset的攻击原理,用通信人熟悉的思路讲,是协议状态机的合法字段被刷成了拒绝服务。
HTTP/2为了多路复用,允许一条TCP连接上并行开多个“流”(stream),并发数由服务端通过SETTINGS_MAX_CONCURRENT_STREAMS声明上限。协议设计里有一个对客户端宽松的细节:客户端在收到服务端的上限设置之前,就可以乐观地发送HEADERS帧开流;而流一旦打开,客户端有权立刻用RST_STREAM帧取消。
攻击循环就四步,每一步都是协议允许的合法操作:
sequenceDiagram
participant A as 失陷终端
participant S as 目标服务器
A->>S: HEADERS帧 申请开新流
S->>S: 为新流分配状态资源
A->>S: RST_STREAM 立即取消
S->>S: 释放状态 计数+1
Note over A,S: 攻击端无限循环上述四步
A->>S: 新连接 再来一轮冲刷
Note over S: 并发上限形同虚设<br/>CPU内存空转 正常请求饿死
打个比方:一位客人冲进餐厅,一口气点满100道菜,后厨刚备齐,客人说“全退了”;转身再点100道,再全退。餐厅并发接待能力是有限值,但“下单”和“撤单”都合规,保安没有理由拦。当数万个失陷终端同时扮演这位客人,服务器全部调度资源都在“建流—拆流”里空转,正常请求被活活饿死。
Google在分析中指出,理论上单个攻击循环可请求的流数量以数十亿计;实测攻击就是把这种循环叠加到僵尸网络规模。三家厂商给出的缓解思路一致:限制单连接单位时间的开流速率、对异常快速取消的连接直接断开、及时释放已取消流的状态,并推动各HTTP服务器实现修复。CISA公告附带了11家厂商的缓解声明——这也是它被称为“全行业第一次协同响应”的原因。
把Rapid Reset放回十年尺度看,才能看出这是一场怎样的军备赛:
| 年份 | 事件 | 峰值火力 | 武器/向量 |
|---|---|---|---|
| 2013 | Spamhaus遭攻击 | 约300 Gbps | DNS开放解析器反射放大 |
| 2016.9 | KrebsOnSecurity被瘫 | 约620 Gbps | Mirai僵尸网络直连洪泛 |
| 2016.10 | Dyn DNS遭袭,美东大面积断服 | 约1.2 Tbps(媒体测算) | IoT僵尸+DNS放大 |
| 2018.2 | GitHub被攻击 | 1.35 Tbps | memcached反射,放大5.1万倍 |
| 2022.6 | Cloudflare挡下HTTP层纪录 | 71M rps | HTTP洪泛 |
| 2023.8-10 | Rapid Reset | 398M rps(Google观测) | HTTP/2协议漏洞 |
| 2024.11 | 据Google Cloud披露 | 5.6 Tbps | 混合体积向量,体积赛道新纪录 |
(注:2013年、2016年、2018年数据来自当事方与Cloudflare、GitHub事后报告;2024年数据为Google Cloud单方披露,未经第三方独立验证。)
这张表里有三个对运维致命的规律:
规律一:反射放大是最省钱的杠杆。 攻击者发1字节,借无辜第三方服务器替他打出几十字节。按Cloudflare当年的测量,DNS反射放大约28~54倍,NTP的monlist指令约556.9倍,Chargen约358.8倍,而memcached一度测出51,000倍——GitHub那1.35 Tbps就是这么来的。
规律二:协议漏洞型攻击不可预测地跳变。 体积赛道的增长是线性的(带宽便宜了攻击就变大),而Rapid Reset证明速率赛道存在“一日跳三档”的可能。你按去年的攻击模型做容量规划,今年可能直接作废。
规律三:攻击目标从网站转向基础设施。 2016年Dyn那一战打的是DNS根与权威服务,直接放倒Twitter、Netflix、PayPal等半个美东互联网;2023年Rapid Reset瞄准云上客户。下一步轮到谁?从行业惯例推断,运营商自身的DNS、RADIUS、N2/NAS信令面,都是理论上可被点名的目标——这也是下文重点。
所有体积型DDoS的燃料,都来自一个地方:失陷的消费级终端。而它们的落网点,几乎全部在运营商的接入网里。
Mirai是最经典的样本。USENIX Security 2017年的论文《Understanding the Mirai Botnet》对其做了完整画像:攻击者用一张仅约60组的出厂默认账号密码表(admin/admin级别),通过telnet(23/2323端口)批量扫荡网络摄像头、DVR和路由器,感染峰值约60万台。2016年9月,正是这支“哑巴军团”打出了620 Gbps,直接把安全记者Brian Krebs的网站打到下线——Krebs事后撰文称这是一次“审查的民主化”,因为任何人花几十美元就能买到同等火力。
flowchart TD
CPE["百万级失陷摄像头与路由器"] --> BOT["僵尸网络控制端"]
BOT -->|指令下发| CPE
CPE -->|洪泛与反射请求| ISP["运营商接入网"]
ISP -->|伪造源地址未拦截| AGG["城域网汇聚层"]
AGG --> NET["骨干网"]
NET --> TGT["目标:云与运营商业务"]
ISP -.->|BCP38 源地址过滤| F1["伪造源头联封堵"]
AGG -.->|流采样 异常检测| F2["清洗中心"]
F2 -.->|Flowspec 下发过滤| NET
对运营商来说,这张图里有两个扎心的技术细节:
细节一:CGNAT让溯源变成考古。 运营商级NAT之下,数千用户共享一个公网地址,攻击回溯到接入网后要靠RADIUS/AAA日志+CGNAT映射日志+精确到秒的时间戳才能定位到具体用户——前提是全网时钟同步做得好,且日志留存周期够长。2016年以来每一次Mirai变种战役,都在重复这个故事。
细节二:源地址伪造是放大攻击的通行证。 反射放大攻击要求攻击者伪造受害者的源地址发请求,第三方服务器才会把回包“反射”给受害者。拦截它的办法IETF早在2000年就写进了BCP 38(RFC 2827):在靠近源头的地方做源地址过滤(uRPF等机制)。但二十多年过去,这项“举手之劳”的部署在中小ISP和家宽网络里依旧参差不齐——每一个没开源过滤的汇聚节点,都是全球DDoS军火库的一个免费弹药库。
换句话说:攻击者用的管道,就是我们维护的管道。 DDoS防御的第一米,不在云巨头的清洗中心,而在OLT、BRAS和城域网的每一台设备上。
攻击真的来了,运营商手里有什么牌?按处置粒度从粗到细,是三级阶梯:
第一级:RTBH(远程触发黑洞,RFC 5635)。 把被攻目标的前缀指向null0接口全网丢弃,配合BGP community远程触发。优点是秒级生效、配置简单;缺点是“杀敌一千自损八百”——目标业务连同攻击流量一起消失。它是止血药,不是治疗方案,适合用来保骨干网的其他业务。
第二级:Flowspec(RFC 5575,更新于RFC 8955)。 通过BGP向全网路由器下发按五元组匹配的过滤规则,可以做到“只丢攻击流、放过正常流”,粒度细到端口和包长。但它有个运维人都不陌生的特性:一条下错的规则,故障面等于全网。所以Flowspec规则必须纳入变更管理:模板化、先灰度、留回退。标准只定义了机制,具体下发策略和风控流程各网各有章法,以自家网络的实际验证为准。
第三级:清洗中心(Scrubbing Center)。 完整链路是:检测(NetFlow采样基线异动)→牵引(用BGP把被攻前缀公告到清洗集群)→清洗(异常流量识别与剥离)→回注(干净流量送回业务)。国内的中国电信“云堤”、国际上的Akamai Prolexic、Cloudflare Magic Transit等,都是这条链路的商业化实现。清洗能力的核心资产有两个:一是带宽储备(清洗池必须比攻击者火力大),二是特征库与检测模型——近年各家都在往异常检测模型上加码,用历史流基线区分“攻击洪峰”和“晚八点的业务洪峰”,这是AI在抗D领域最实际的落点,不神秘,但有效。
还有一张容易被忽视的牌:核心网与信令面的自我保护。信令风暴(SigStorm)和DDoS的叠加效应值得单独警惕——海量终端同时冲击N2/NAS、Diameter或SIP信令面时,网元自身的控制面限速、白名单和过载控制(如3GPP定义的NAS级拥塞控制)就是第一道闸门。这块的容量规划应该和抗D预案放在同一本剧本里。
把上面所有内容压缩成一份可以贴在工位上的清单:
这七条没有一条需要新技术,全是纪律问题。DDoS防御的短板,通常不在买不买得起清洗设备,而在第2条和第6条这种“没人负责、不出事就不做”的环节。
回顾这十年账本:2016年我们以为管好摄像头就能堵住Mirai,2018年memcached告诉我们放大器永远会有新的,2023年Rapid Reset又证明协议状态机里也藏着炸弹。据Google Cloud 2024年披露,体积赛道已冲到5.6 Tbps;速率赛道在Rapid Reset之后,各厂商季度报告的纪录仍在刷新。DDoS攻防是一场没有终局的战争——带宽在变便宜,漏洞在换地方出生,而攻击者用的燃料,始终是我们接入网里那些没人改过密码的终端。
对通信工程师来说,这场战争最大的认知错位在于:大家默认抗D是云厂商和安防团队的事。但真正决定攻击能否“出门”的,是汇聚层有没有开源过滤;真正决定溯源能否成立的,是CGNAT日志和时钟同步;真正决定业务能否撑过第一波冲击的,是信令面的过载控制和那份写好却从没演练过的黑洞预案。
云巨头的清洗中心挡得住398M rps,但挡不住一个从未开源过滤的城域网。战争的边防线,永远画在离自己最近的那一跳。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
