我们知道,通过分布式拒绝服务(DDoS)攻击可以黑掉一个网站,通过某些手段可以封锁整个国家的互联网基础设施,但是能不能让整个互联网瘫痪下来呢?看起来有些不可思议,但似乎确实能做到。
英国《新科学家》杂志报道称,明尼苏达大学计算机科学与工程系研究生Max Schuchard及其伙伴通过研究发现了一种方法,在边界网关协议(BGP)网络路由器上发起DDoS攻击就可以击垮整个互联网。
BGP是一种必不可少的互联网协议,是整个互联网上交换路由信息的路由协议,没有它ISP就不能彼此通信,用户也无法访问网站和服务。由于网络连接和路由器都在随时变化,BGP路由器和交换机也必须时刻维持最新的互联网路由图。简而言之,它可不能乱。
在一篇题为《互联网失控:使用数据平面攻击控制平面》的美国计算机协会论文中,Max Schuchard描述了一种名为“协调跨平面会话终结”(CXPST)的理论攻击方法,一种针对互联网控制平面的DDoS攻击行为。相比于之前类似的攻击行为,CXPST只使用了数据平面流量。通过精心挑选需要终结的BGP会话,CXPT能够产生海量的BGP更新,互联网上几乎所有核心路由器都能看到,但是却没有足够的能力去对付,最终失控。
整个过程其实看起来很简单:首先组建一个由大约2.5万台PC组成的僵尸网络(这其实很简单),然后使用ZMW(三位发明人张/毛/王的姓名缩写)方法发动攻击。
僵尸网络会使用路由追踪分析当前BGP连接状态,然后根据这些信息对关键的BGP路由器发起同步攻击,使之出现“路由翻动”并临时下线。在BGP路由器重启的时候,CXPST能够识别出来,并转而攻击其他GBP路由器,而等到之前的BGP路由器重启完毕并恢复,其他的又倒下了,最终BGP路由器崩溃的速度远远快于自动重启的速度。结果就是,整个互联网乱了套了。
如何修复呢?Max Schuchard解释说:“这种攻击一旦发动,通过技术手段是无法解决的,只能靠网络运营商彼此联系。”每一台BGP路由器都必须手动重启。整个恢复过程少则几个小时,多则一两天。
幸运的是,Max Schuchard和他的伙伴们都不是恶意黑客,做出这种研究并不是真的为了整垮互联网,事实上他们只是建议有关部门改善互联网的防御能力。