概述:2020年11月30日深夜(北京时间23时58分),Google、亚马逊、Facebook、Cloudflare、Akamai的路由同时被一条来自俄罗斯国营电信Rostelecom的宣告“接管”,约200条假路由持续了约3小时才撤回。本文以这起被Cleafy实验室定性为“疑似蓄意拦截”的事件为轴,结合Cloudflare官方资料与维基百科整理的近三十年事故年表,回答三个问题:BGP劫持是怎么发生的?运营商为什么既是受害者又是帮凶?防线到底该怎么搭?
1989年1月,在美国奥斯汀举行的IETF会议上,Yakov Rekhter、Len Bosack和Kirk Lougheed围着一张桌子,在两张餐巾纸上画出了互联网路由协议的设计草图。这就是后来被称作“两餐巾协议”的BGP——边界网关协议。同年RFC 1105发布,1994年BGP4成型,如今的权威定义是2006年的RFC 4271。三十七年过去,它依然是全球互联网唯一的域间路由协议。
BGP的工作方式说穿了很简单:每个自治系统(AS)向邻居宣告“这些IP前缀归我管、能从我这里到达”,邻居之间口口相传,全球路由表就建起来了。截至2025年,全球IPv4路由表已经超过100万条前缀,自治系统超过8万个。路由器之间通过TCP 179端口建立会话,每30秒互发19字节的Keepalive报文确认对方还活着。
问题出在设计哲学上:BGP默认邻居说的都是真话。宣告里没有任何密码学凭证证明“这个前缀真的归你”。就像Cloudflare官方科普里的比喻:有人把一段高速公路的所有路牌换掉,车流就会乖乖开进错误的出口——而路上没有任何人负责核对路牌的真伪。
对通信工程师来说,BGP离我们并不遥远。它不只跑在互联网骨干上:运营商IP承载网的跨域互通、MPLS L3VPN的VPNv4路由分发,用的都是MP-BGP扩展。换句话说,从互联网骨干到你手机流量的承载网,BGP无处不在——它的信任缺陷,也就无处不在。
2020年11月30日美国东部时间上午10时58分,意大利安全公司Cleafy的监测系统捕捉到从莫斯科方向涌来的一批异常BGP更新:俄罗斯最大固网运营商Rostelecom(AS12389)开始对外宣告一批不属于它的前缀——而且不是一两条,是约200条,覆盖Google、亚马逊、Facebook、Cloudflare、Akamai等多家巨头的地址段。
技术手法是教科书级的“子前缀注入”:把别人的地址段切成更精确的/24再宣告出来。由于BGP选路遵循最长前缀匹配原则,这条更精确的假路由会毫无悬念地赢过正规路由,把流量从全世界吸过来。Cleafy在事后复盘中指出,Rostelecom凭借自身配置,本就是承接过境俄罗斯流量的骨干枢纽,流量一旦被吸进去,去向就只有它自己知道。
异常在开始后不久即被开源监测系统ARTEMIS捕获并告警,但宣告的撤回用了大约3个小时。Cleafy研究团队的结论相当直白:这不是配置错误,而是一次“机会主义流量拦截”,更像是老练的威胁行为体(甚至可能有国家级背景)所为,而非BGP失配。他们还发现同样手法与2017年、2020年4月的两起事件高度相似——同一招式,反复出现,从未有人为此负责。
timeline
title 2020年11月30日:巨头流量被拐三小时
23时58分 : 莫斯科方向出现异常BGP更新
随后 : Rostelecom宣告约200条他网前缀
即刻 : ARTEMIS等监测系统捕获告警
三小时后 : 错误宣告撤回,路由恢复
事后 : Cleafy定性为疑似蓄意拦截
值得强调的是,“疑似蓄意”是Cleafy的分析结论,属于该公司的研判观点;Rostelecom方面当年并未给出令人信服的技术解释,也没有任何监管机构公布调查结果。真相至今存疑——这恰恰是BGP劫持最让人不安的地方:它难以归因,甚至难以证明。
把视角拉高,维基百科BGP劫持条目和IETF的RFC 7908把这类事故归纳成几种形态。它们的共同点是:利用路由表的信任机制,让流量偏离正轨。
| 类型 | 原理 | 典型案例 | 主要危害 |
|---|---|---|---|
| 前缀劫持 | 直接宣告不属于自己的地址段 | 2018年4月亚马逊Route 53被劫 | DNS解析被接管,钓鱼与窃密 |
| 子前缀劫持 | 宣告更精确的/24,利用最长匹配必胜 | 2020年Rostelecom约200条假路由 | 流量拦截、定向黑洞,最难防 |
| AS路径伪造 | 伪造更短的AS路径吸引流量 | 2014年起多起隐身劫持 | 静默改道,持续窃听 |
| 路由泄露 | 把学到的路由越权扩散出去 | 2019年欧洲手机流量绕道中国 | 大面积断网与绕路,多为误配 |
flowchart TD
A["攻击者网络"] -->|宣告他人前缀| B["上游运营商未过滤"]
B --> C["全球路由表被污染"]
C --> D["边界路由器选中假路由"]
D --> E["用户流量被拐向攻击者"]
E --> F["窃听或黑洞或钓鱼站"]
C --> G["路由监测系统"]
G -->|比对异常告警| H["运维人工核实"]
H --> I["撤回错误宣告"]
I --> J["路由表逐步恢复"]
这张图里最致命的一环是“上游运营商未过滤”。BGP的信任链是逐跳建立的,只要路径上有一台路由器不检查宣告的合法性,假路由就能一路扩散到全球。而RFC 7908对“路由泄露”的定义是“路由宣告被传播到预期范围之外”——它甚至不需要恶意,一次忘配的导出策略就足够。
如果说明星事故是为了理解机制,那么下面几个案子展示的是BGP劫持作为“生意”的一面。
第一桶金:2018年4月,加密货币钓鱼。 事发时,一家小型服务商对外宣告了本属于亚马逊Route 53权威DNS的约1300个IP地址——维基百科整理的事故记录写的是俄亥俄州ISP eNet(或其客户),Cloudflare的官方回顾则称之为“一家俄罗斯运营商”,双方描述的是同一起事件的不同侧面。Hurricane Electric等大型对等网络未加过滤,直接转发了这些宣告。劫持持续约2小时,myetherwallet.com的DNS查询被导向攻击者控制的服务器,返回假IP,用户被带到一比一克隆的钓鱼站。浏览器证书告警弹出后,仍有大量用户点了“继续访问”。Cloudflare回顾此案时给出的损失数字约为15.2万美元的加密货币。
升级版:2022年2月,KlaySwap投毒。 韩国加密货币平台KlaySwap的前缀被劫持后,攻击者的操作远不止改道:他们利用劫持获得的对域名的临时控制,通过ZeroSSL给钓鱼域名签发了合法TLS证书,再向页面注入恶意JavaScript。用户资产被盗190万美元——直到今天,这仍是BGP劫持“变现效率”最高的公开案例。
最隐秘的形态:2014年的“30秒劫匪”。 2014年2月到5月间,一名攻击者借道一家加拿大ISP,前后22次劫持比特币矿池的流量,每次只持续约30秒——足够偷走矿工的收益,又短到几乎不会触发任何告警。《连线》杂志后来把这组攻击称为“互联网最大的安全漏洞”的现实注脚。
从骗DNS,到合法证书加脚本注入,再到秒级进出,这条演进路线说明:只要路由层的信任缺陷还在,上层一切加密与风控都可能在DNS解析那一步被釜底抽薪。
最近两年的事故呈现两个新特征:影响面更大、动静更小。
2024年6月27日,巴西ISP Eletronet(AS267613)误宣告了一条指向1.1.1.1的/32主机路由,另有网络同时泄露了/24。按最长匹配原则,多条Tier-1骨干接受了这些更精确的宣告——Cloudflare的公共DNS解析器随之在70多个国家、300多个网络范围内不可达或严重劣化。一家运营商的一条主机路由,让全球近三分之一的互联网用户“网页打不开”,而这甚至不是攻击。
2025年2月,安全研究人员发现一起更值得警惕的事件:新加坡SingNet所属的子前缀203.127.225.0/24被菲律宾网络Innove Communications悄悄宣告,SEACOM等多家大型传输商的流量被无声改道。事件最初的定性是“误配还是蓄意劫持仍在调查”——注意,这种静默子前缀劫持如果没有监测,可能永远无人发现。从2008年“全球都看得见YouTube消失”,到2025年“流量被拐了也没人喊疼”,攻击者学乖了。
把维基百科整理的事故年表压缩一下,你会看到一条清晰的规律:肇事者几乎都是网络运营方,放大器也几乎都是网络运营方。
| 时间 | 事件 | 关键细节 |
|---|---|---|
| 1997年4月 | AS7007事件 | 小网错误宣告被骨干网吞下,路由表碎化引发大范围瘫痪 |
| 2004年12月 | 土耳其TTNet | 平安夜劫持大半个互联网 |
| 2008年2月 | 巴基斯坦屏蔽YouTube | 屏蔽指令变成全球断网,本国网络先被压垮 |
| 2017年4月 | Rostelecom宣告37条前缀 | 含万事达、Visa等金融机构,持续不到7分钟 |
| 2017年12月 | DV-LINK宣告80条热门前缀 | 谷歌、苹果、Facebook、微软、NTT等悉数中招 |
| 2019年6月 | 瑞士SafeHost泄露4万条路由 | 欧洲大量手机流量绕道中国电信网络约2小时 |
| 2021年4月 | 沃达丰印度泄露3万条前缀 | 入向流量暴涨13倍,谷歌、微软、Akamai受累 |
| 2022年2月 | KlaySwap劫持 | 合法证书加脚本注入,损失190万美元 |
| 2024年6月 | 1.1.1.1被/32劫持 | 70国DNS解析劣化 |
| 2025年2月 | SingNet子前缀遭静默劫持 | 菲律宾网络宣告,来路至今存疑 |
运营商的“帮凶”身份主要有三种。第一是不设防的转发:Hurricane Electric在2018年事件中盲目转发假宣告,不是它一家的问题,而是行业对peer会话普遍不过滤的缩影——ISP之间很难高效校验“对方到底能宣告什么”。第二是自动化工具失控:2021年墨西哥Cablevision泄露282条前缀、波及80国763个AS,事后调查指向BGP优化器;同年印度沃达丰3万条前缀泄露同样如此。这类设备为了流量工程把聚合前缀拆成几千个/24,一旦策略配错,就是一次全球性“路由洪水”。第三是变更管理失控:2014年8月12日的“512K日”最具代表性——Verizon在数分钟内拆分宣告了约1.5万条新路由,全球路由表顶破51.2万条,大批老款路由器的TCAM溢出,eBay、LastPass、微软Azure相继掉线。重新聚合只花了5分钟,余震却持续了数小时,不少设备要重分配转发内存并重启才能恢复。
还有一个被忽视的角落:运营商内部。iBGP全互连、路由反射器、RR集群——这套内网架构的误配同样致命,2019年SafeHost的4万条泄露正是从自家会话漏向运营商上游的。承载网工程师对“内网BGP不会出大事”的盲目信任,和2008年巴基斯坦电信工程师对一条屏蔽配置的轻率,本质是同一种东西。
防线没有银弹,只有纵深。按投入产出排序:
第一层:过滤与上限,最老也最有效。 对客户会话强制做前缀过滤(只允许其持有的地址段)、对每条BGP会话配置max-prefix上限防止路由洪水、对来自peer的宣告做长度和合法性感检查。RFC 7908把“基于角色的泄露防范”写成了标准思路:清楚每条会话是客户、对等还是上游,导出策略就按角色写死。这层防不住蓄意攻击,但能挡住绝大多数事故——现实里多数劫持和泄露都是误配。
第二层:RPKI,给路由发身份证。 资源公钥基础设施通过ROA对象把“前缀-授权AS”绑定起来,接收方可以验证宣告来源的合法性。维基百科条目指出RPKI早年部署缓慢,但近几年大型网络加速接入,"Is BGP safe yet?"这类公开追踪页可以查到各家运营商的落地进度。ROV策略要配“无效即拒收”才有牙齿——只校验不处置等于没做。
第三层:分钟级监测,把发现时间压下来。 2020年Rostelecom事件里,ARTEMIS这类开源自检系统能在异常出现后数分钟内告警。运营商可以订阅RIPE RIS、Route Views等公开路由数据源做比对,同时在自己的网内做控制面与数据面双向探测——2014年那些“30秒劫匪”证明,发现速度就是损失金额。Cloudflare在其335多个城市的任播节点上广播同一个AS号,本质也是用架构冗余对冲路由层的单点信任。
第四层:流程。 BGP优化器的导出策略必须白名单化;跨域变更走双人复核与灰度窗口;对异常流量激增(比如2021年沃达丰那种13倍入向尖峰)预设自动诊断剧本。近年美国、欧洲的监管机构已陆续把路由安全纳入运营商安全审查范围,MANRS等行业联盟也将过滤与RPKI列为基础要求——合规压力正在变成硬约束。
回到2020年那个深夜:约200条假路由、3个小时、全球最重要的几家互联网公司,事后没有任何一方给出解释,没有任何监管机构公布结论。三十七年前写在餐巾纸上的协议,至今仍在用“默认信任”支撑着整个互联网——这不是工程师的疏忽,而是去中心化网络的原罪:8万多个自治系统之间,不存在一个能核对每张路牌的交通警察。
对运营商来说,教训可以浓缩成一句话:你对邻居的每一次“不设防”,都是在替全球互联网保管风险;而别人对你的每一次“不设防”,都可能让你成为下一场事故的帮凶。 过滤、RPKI、监测、流程,四层防线没有一层昂贵到做不起,昂贵的是它们都没做时的那三小时。
本文由「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 等场景全覆盖。
