4月1日,这个不寻常的愚人节,俄罗斯Rostelecom被发现涉嫌劫持全球200多家CDN和云托管提供商的流量。这次BGP劫持影响有多大?200多个网络的8800多条互联网流量路由受到影响,谷歌、亚马逊、Facebook、Akamai、Cloudflare、GoDaddy、DigitalOcean、Joyent、LeaseWeb、Hetzner、Linode等知名公司受到攻击。BGP的安全问题实在是惹不起。互联网是一个去中心化的分布式结构,整个网络由成百上千个不同ISP(InternetServiceProvider)的子网组成。为了实现互联互通,子网A通过BGP协议告诉子网B:这里包含了哪些IP地址段,AS号(ASNumber)是多少等一些信息。同时,为了避免人们使用相同的地址空间,IP地址由主管部门(RegionalInternetRegistries/RIRS)分配。在网络流量互联的整个过程中,BGP就像一个“通道”。作为互联网核心基础设施不可或缺的一部分,诞生于1989年的BGP已经在互联网上运行了几十年,但令人惊讶的是,即便是现在,BGP仍然缺乏足够的安全措施。例如,由于每个ISP(互联网服务提供商)通常必须默认信任其对等网络运营商在传输流量时与其共享的路由信息??。当路由信息没有得到适当的审查和过滤时,这意味着流量可能会被发送到恶意站点。综上所述,互联网路由功能攻击可能造成的后果有:DDoS攻击、互联网服务拒绝访问绕过互联网流量监控、终端(网站)路径攻击将互联网网络流量错误投递到恶意终端破坏IP地址——基于信誉和过滤系统Internet路由不稳定一般来说,BGP劫持虽然很常见,但大多是短暂的。而且,并不是所有的BGP劫持都是恶意的,很可能只是运营商的一次握手,错误的配置导致的意外劫持。当然,也不否认有恶意分子使用和故意劫持。[尴尬的是,很难说这是故意的还是无意的。】以Rostelecom路由劫持事件为例,事件发生的原因可能是Rostelecom的内部流量整形系统不小心在公共互联网上暴露了错误的BGP路由,而不是Rostelecom内部网络的整体问题。不幸的是,这个小错误被Rostelecom的上游提供商用新公布的BGP路由在互联网上重新传播,从而在几秒钟内放大了BGP劫持事件。一个“小错误”瞬间滚成巨大的雪球,波及全球200多个网络。虽然过去十年的经验告诉我们BGP路由泄露和劫持问题有多么严重,但这个问题并没有得到解决。回顾那些年,BGP安全问题引发的“灾难”:2003年5月,当时世界第三大军工制造商诺斯罗普·格鲁曼公司的部分BGP网络被恶意利用,发送海量垃圾邮件。最终,军火承包商用了整整2个月的时间才收回了这些IP地址的所有权。同时,由于垃圾邮件地址频繁被列入黑名单,所有IP地址都被禁止使用。2008年2月,巴基斯坦政府以YouTube包含亵渎神明的内容为由,命令互联网服务提供商屏蔽YouTube。巴基斯坦电信试图限制本地用户访问YouTube,并通过BGP向香港电讯盈科太平洋(PCCW)发送新的路由信息??,然后电讯盈科将这个错误的路由信息??广播到互联网上。但由于工程师手抖,导致路由信息错误,导致“YouTube断开连接”。2015年,HackingTeam利用BGPHijack劫持目标网络链路数据,协助意大利黑客组织进行攻击行动,并完成长期监控。2017年,谷歌工程师错误配置并意外劫持了NTTCommunicationsCo.,Ltd.(NTT是日本的主要ISP,支持OCN和KDDI两个小型ISP)的流量,导致日本800万用户断网约40分钟。2018年4月,亚马逊权威域名服务器遭到BGP路由劫持攻击,价值1730万美元的ETH被盗。……既然知道自己受不起伤害,为什么BGP的安全性依然脆弱?事实上,通信从业者多年来一直在努力加强BGP协议的安全性。早在2018年,美国国家标准技术研究院(NIST)和国土安全部(DHS)就联合发布了第一份防止BGP劫持的安全标准草案;ROV、RPKI以及最近的MANRS等项目都在研究BGP安全问题。然而,采用这些新协议的进展缓慢。以MANRS为例,它已经成立了6年,但直到最近,主要的CDN服务提供商和云计算公司亚马逊、谷歌、微软、Facebook、Akamai、Cloudflare、Netflix和VeriSign都加入了这一安全路由计划。资料显示,加入MANRS的网络提供商需要承诺实施过滤、反欺诈和验证,使用多种方法防止流量劫持和路由攻击,并与其他网络提供商协调合作。话虽如此,但需要强调的是,网络运营商必须确保全球路由安全,这是底线。他们有责任在全球范围内确保强大而安全的路由基础设施,防止恶意行为和意外错误配置产生进一步影响。这些问题可以通过实施一些措施来解决,例如实施适当的前缀过滤器以确保其客户只发布自己的前缀;实施TTL安全机制(GTSM)以防止攻击者使用伪造的数据包等待。说到底,BGP的安全问题还不止于此。由于缺乏有效的解决方案、切实可行的安全标准和足够的推动力,使得BGP在攻击者眼中只是一个移动的目标。这是需要所有网络运营商和安全人员认真对待的问题。
