此前发现的一种攻击方法叫作ZMW攻击,它是通过扰乱BGP,使两个路由器之间的连接显示为脱机,从而切断这两个路由器之间的连接。舒哈德和他的同事们研究出了如何将这种方法扩大到整个互联网,并模拟了其效果。
这种攻击需要一个巨大的“僵尸网络”———一个由被木马感染的计算机组成的网络。舒哈德估计25万台这样的电脑将足以摧毁互联网。僵尸网络经常被用来发动分布式拒绝服务(DDoS)攻击,这种攻击方式通过让网络服务器流量超载而使其死机。但舒哈德的这种新攻击方法与此不同。
“数字大炮”运作机制
发动舒哈德网络武器的攻击者要在僵尸网络中的计算机之间发送流量,建立它们之间的“路径地图”。然后他们要找到众多路径共用的一个连接,发动ZM W攻击摧毁它。附近的路由器会对此作出回应,发送
BGP更新消息,将流量导向别的地方。很短的时间之后,这两个被切断的路由器会重新连接,并发送它们自己的BGP更新信息,攻击流量由此会再次流入,让它们再次断开。这一循环不断重复,每次断开和重建连接都会向互联网上的每一台路由器发送BGP更新消息。最后全世界每一台路由器都会接收到超出自身处理能力的更新消息。
在世界上每一台路由器都被占用的情况下,正常的路由中断无法得到修复,最终互联网会变得千疮百孔,无法进行通讯。舒哈德认为这种情况需要数天时间才能恢复。
他说:“这种攻击一旦发动,就无法通过技术手段解决,只能由网络运营者互相口头交流。”每个自治系统都必须关闭并重启,以清除那些BGP积压处理任务。
如何防止网络崩溃
那么,互联网的崩溃是不是不可避免?可能不是。这种攻击不太可能由黑客蓄意发动,因为绘制网络地图、找到目标连接是一项技术性很强的工作,而且任何拥有足够大的僵尸网络的人更有可能将其出租来赢利。
不管是谁发动这样的攻击,我们对此都做不了什么。舒哈德的模拟显示,现有的BGP内置故障保护措施对于他的攻击几乎无能为力。一种解决办法是通过一个独立网络来发送BGP更新消息,但这不太现实,因为这必然涉及建立一个影子互联网。
另一个办法就是改变BGP系统,让其假定连接永不断开,但根据研究者的模型,此方法必须让互联网至少10%的自治系统作出这种改变,并且要求网络运营者寻找其他方法监控连接的健康状况。舒哈德说,要说服足够多的独立运营商作出这一改变将很困难。