财新传媒

从Stuxnet病毒看网络战

2013年12月06日 15:02 来源于 《财新周刊》
看完兰纳的分析,有种得知美国刚炸完广岛的感觉,而Stuxnet就是网络战时代的“小男孩”

  正当世界大国和伊朗新总统鲁哈尼在日内瓦展开新一轮伊核问题谈判时,德国网络安全专家兰纳(Ralph Langner)在11月20日发布了一篇分析报告,《如何破坏一台离心机》,内容是关于美国攻击伊朗核设施的Stuxnet蠕虫病毒。早在2010年,兰纳就分析出这种蠕虫的真正目的,此次报告则更详尽地分析了该病毒如何在物理层实现对核设施的破坏。

  一般人对网络战(Cyberwar)的观念,还是停留在对联网电脑攻击的“网络层”,但Stuxnet病毒最精彩的部分是在“物理层”,也就是病毒通过网络或者移动设备传播到位之后,对非网络目标进行真正的破坏。Stuxnet是美国国务院、中情局的计算机、情报、核工程专家通力合作的结果,按照兰纳的说法,病毒代码技术水平极高,如果不是第二代升级版过度照顾传播速度,从而牺牲了保密性,大概至今整个世界还不知道这个网络战中里程碑战役的存在。

  纳坦兹是伊朗生产浓缩铀的地点,被美国核不扩散专家定为制止德黑兰发展核武器的物理层攻击点。因为美国当时缺乏其他手段制约伊朗总统内贾德,专家们就想出了编写病毒来破坏铀浓缩离心机的想法。

  看上去这个目标非常疯狂,连国际核查人员都无法进入纳坦兹核工厂,如何将病毒注入离心机?长期积累的情报此时起了作用。伊朗核设施是从巴基斯坦核黑市买来的欧洲淘汰机型,只获得机器的伊朗人,无力对这些旧设备进行周全维护,即便已经减压运行,依然常会有机器失效。为了保证其稳定性,伊朗人创造性地使用了离心机阵列系统——任何一个离心机失效,就自动切掉开关隔绝,用同组好的机器接上。这个系统是用西门子可编程控制器(PLC)S7-417来控制的。

  这些情报给了美国专家灵感,因为破坏PLC比直接破坏离心机更容易:技术人员总得用个人电脑把程序输入PLC。因此,第一代Stuxnet是由间谍用USB注入有西门子编程环境的个人电脑,等伊朗技术人员把污染的电脑接上PLC,这个病毒就会篡改编码,让PLC判断错误,遇到离心机出问题也不改变线路,最终导致无法稳定生产浓缩铀。

  仔细分析病毒代码,发现其实美国专家手下留情,目的只是延缓伊朗核武发展,而不是彻底摧毁,只要稍微改变代码,就能造成整个离心机增压爆炸,机毁人亡。手下留情的目的也许不是为了担心人员伤亡——如果一下子就爆炸,反而伊朗人会很快就发现病毒,无法长期阻止其核武器发展。

  病毒的确起到了作用,但是伊朗人升级了系统,导致病毒失效。美国专家针对性推出了第二代Stuxnet,直接使用Windows和网络证书本身的漏洞,随着各种升级从网络上传播,而不需派间谍带着USB去伊朗冒险。但这样做并非没有代价:在网络上传播,会有很多非伊朗电脑被感染,也就会有像兰纳这样的网络安全人员发现这个看上去无害多余代码的真正目的,伊朗人也因此很快发现了病毒的存在。2010年,Stuxnet第二代被揭露,美国政府人员也对媒体承认这个秘密行动。《纽约时报》2012年6月报道,这项秘密任务始于2006年,代号是“奥林匹克行动”。

  兰纳的技术分析报告可以说是打开了一个潘多拉盒子,因为这等于是公布了《网络战入门指南》,任何国家和团体都能从这本教科书中学会真正网络战的窍门:既然破坏力只有进入“物理层”才能发挥最大效果,因此在网络战中,其实情报比编程技术更重要。如果没有准确的情报,美国人不可能编出精确打击的“数码导弹”。

  不过虽说只要情报准确、编程精巧,任何黑客都可在任一国家,控制另一个国家的核设施、电网、交通、医院,甚至个人的心脏辅助设备;但要想有如此准确的情报,也只有大国资源才能达到,所以网络战首先得防止国家一级的对手。

  目下中美正在进行网络战谈判,美方把这个议题提升到了两国战略对话的高度。很多中国人认为这是小题大做,因为中国很多所谓“黑客”用的攻击工具大都直接使用美、俄的程序,在网络战技术上,中国根本还没能达到和美、俄谈判的水平。但是看完兰纳关于Stuxnet的分析,有一种得知美国刚炸完广岛的感觉,而Stuxnet就是网络战时代的“小男孩”炸弹。在创造了网络战历史上第一次原爆攻击之后,美国最了解新战争武器可能达到的恐怖程度,所以立刻和第二大国展开网络战谈判,防患于未然,在对手远还没有形成威慑能力的时候,就着手制定对自己有利的游戏规则。

安替
安替

  作者为专栏作家

版面编辑:王永
财新传媒版权所有。
如需刊登转载请点击右侧按钮,提交相关信息。经确认即可刊登转载。
财新微信