独家连载 | 零日漏洞:震网病毒全揭秘(30)
作者:星期四, 十月 22, 20150

640.webp

攻击关键基础设施的方法有无数种,其中最有效的,当属攻击所有关键基础设施的共同要害——电网……

第九章 工控系统失控(接上)

多年来,人们想象出了由大规模网络攻击引发的、各种各样的末日灾难场景。但时至今日,这样的攻击并未发生,而且,绝大多数与控制系统有关的事故,都是意外而非人为。

不过,人们可以从意外发生的工业事故中,窥见网络攻击可以造成怎样的后果。因为,一般而言,网络攻击可以让每一个意外事故“昨日重现”。聪明的黑客可以利用新闻报道的细节,对意外灾难发生的原因和效果进行研究,并据此设计能造成类似破坏性后果的网络攻击。

南西伯利亚地区的萨扬舒申斯克水电站,是世界第6大水坝。水坝位于叶尼塞河上一个风景如画的峡谷,始建于30年前,高800英尺,跨度约半英里。2009年,水坝发生爆炸,造成75人死亡。美国国家安全局局长基思•亚历山大曾援引此例,以讨论网络攻击所能造成的后果。

那是8月17日午夜刚过,大坝发电装置中一台重大940吨的涡轮机被突然喷涌而来的高压水流击中。它的螺栓被敲掉,旋即发生爆炸。之后,巨浪从已爆炸涡轮机形成的空隙中冲入了发动机房,破坏了另外6台涡轮机,触发了连环爆炸,最终炸塌了房顶。

这场灾难,应部分归咎于大约500英里外布拉茨克电站的一起火灾。这场火灾导致布拉茨克的电力输入中断,进而迫使萨扬舒申斯克水电站的涡轮机满负荷运转。不幸的是,其中一台已接近使用寿命的涡轮机开始间歇性的摇晃,进入了“带病工作”的危险状态。为确保安全,水电站在已几个月前安装了新的控制系统,但突然增加的负荷,让涡轮机无法承受。用于固定涡轮机的螺栓开始松动、掉落,涡轮机一步步被“拔锚”。监控图像显示,故障发生的那一刻,工人们拼命向上爬,想逃离现场。事故除了造成75人死亡、将附近地区变为汪洋之外,还泄漏了100吨汽油。这些汽油流入了叶尼塞河,使当地渔业减产鳟鱼4000吨。专家估计,要将水电站复原,至少需要4年时间和13亿美元。

1999年6月发生在华盛顿州的管道爆炸事故,也是黑客可以仿效的样板。在这起事故中,贝灵翰姆奥林匹克管道公司直径16英寸的管道破裂,喷出的237000加仑汽油流入了沃特科姆瀑布公园的一条小溪中。同时喷出的还有瓦斯。90分钟后,爆炸发生了。巨大的火球一直延伸到小溪下游1.5英里处、造成3名儿童死亡、8人受伤。这次灾难的原因,包括阀门配置不当、铲车挖到管道让管道变脆弱等,但万万不可忽略,反应迟钝的控制系统也是罪魁祸首之一。“如果工业控制系统的计算机,始终能对奥林匹克公司管理人员的指令做出及时反应,”调查者说,“负责维护事故管道的管理人员很可能(看到压力增大)会采取行动,防止管道内的压力增大到使管道破裂的程度。”

而实际中,管理人员在1小时后才确定泄露发生,而此时附近的居民们已经报了警。居民在电话里告诉警察,他们在小溪的水流中闻到了一股浓烈的石油味道。虽然这起油气泄露事件不是黑客攻击造成的,但调查者的确在奥林匹克公司的控制系统中发现了一些可供利用的安全漏洞。比如,可以从公司通过拨号,远程接入工业控制系统,安全措施只有一道用户名/密码,而且,公司的业务网络与工业控制网络之间并未隔离。虽然桥接策略提供了一定程度的安全防护,但是,由于既没有鲁棒的防火墙,也没有反病毒和接入控制系统,根本无法阻止一个有想法的黑客先从因特网攻入公司业务网络,再从业务网络攻入核心的工业控制网络。

2000年发生在加州圣布鲁诺的天然气管道爆炸事故,其情节之狗血、后果之严重,堪称工控系统安全的警示教科书。出事那天,操作人员在对不间断电源(UPS)进行维护时,不小心引起了工业控制系统供电中断。根据事先编好的程序,管道的某个控制阀会在工业控制系统断电时自动开启;而实际的结果是,缺少了压力监测和反馈的机制,天然气不断进入管道,管道中个别老化部位的压力持续增加,直到引发爆炸。由于控制系统断电,操作人员对这一切浑然不觉。

2005年12月,密苏里州还发生了一起堤坝倾覆事故。事故的起因是堤壁上的传感器和浮在水面上的水位测量装置之间的通信中断,当水库容量超过15亿加仑(约5.7万立方米)的极限时未能及时报警。就在水位持续上升的过程中,“自动应急保险系统”也失效了。一天早晨的5:10,大水开始漫过堤顶,向外溢出。短短6分钟之后,堤坝就被冲开了一个60英尺(18米)宽的大口子。之后,超过10亿加仑的水从普罗菲特山(Proffit Mountain)上倾泻而下,一路上席卷着无数的石块和树木,冲进了约翰逊溪瀑州立公园(Johnson’s Shut-Ins State Park),把公园管理员一家连人带屋一起冲出了四分之一英里远。洪流还冲向了附近高速公路上的汽车,淹没了公园中的露营地,所幸时值冬季、户外无人,没有造成人员伤亡。

可以作为黑客攻击素材的,还有一些列车事故。客运列车的运行是由多个系统共同控制的:负责查验车票的检票系统、信用卡交易处理系统、电子广告系统、灯光管理系统、闭路电视系统,还有最重要的消防应急系统、交通信号系统和列车运行控制系统。它们之间的相互连接,为攻击提供了可能的途径。过去,除非刻意连接,这些系统彼此之间并没有通信。但如今,这些系统的数字化程度越来越高、连接也越来越多,很多系统之间通过无线信号进行通信,非加密控制指令在其中随意传输。虽然铁路系统设立了冗余备份和故障应急响应等安全机制,但多个互联系统的存在,增加了配置错误的可能性,从而给有心人入侵安全系统并实施破坏留下了可乘之机。

2009年6月22日下午的晚高峰时段,华盛顿特区地铁中,一列运行中的列车与另一列停靠在轨道上的列车发生了碰撞,造成8死80伤的惨剧。轨道上的传感器,本应探测到那列静止列车,并将这个消息发送给运行中的列车,但是,这个传感器恰巧坏了。后面那列列车上安装的防碰撞传感器,本应在距离前面列车1200英尺时自动触发刹车,但是,这个传感器也坏了。更要命的是,列车驾驶员连手动刹车都没有拉。真是各种无语。更奇葩的是,10年前,这套地铁系统,就曾多次发出错误信号——其中一次,是指示列车在一个限速15码的路段上以45码的速度行驶。

以上事故都是偶发的,但也有人为的。2008年,波兰罗兹一个14岁的男孩,通过网络攻击引发了数起列车脱线事故。当时,他用一个经过改装的电视遥控器的红外信号,成功侵入了铁路信号系统并扳动了道岔。这起事故造成4列列车脱轨,12人死亡。

攻击关键基础设施的方法有无数种,其中最有效的,当属攻击所有关键基础设施的共同要害——电网。如果断电相当长一段时间,那么将会有N多种基础设施受到影响——通勤车辆和交通信号灯,银行和证券交易,学校和军事设施,食品和血液供应站的温控空调,医院里的呼吸机、心脏监护器和其他重要设备,机场的跑道灯和航管控制系统,诸如此类。有些场所可能配有应急发电机,但应急发电机也只能撑上一会,遇上长时间停电就会应付不来。如果核电站出现掉闸事故,就会让核裂变反应堆出现不可挽回的停机。

要想攻击电网,有一个办法,就是入侵装在一众家庭和商户住所内的智能电表。至今,美国政府已在智能电表项目上投资30亿美金,完成了数千只智能电表的安装。然而,这个项目在大力推进新技术应用的同时,却没有充分考虑到它所带来的安全问题。

安全研究人员在智能电表系统中发现的最大问题,就是它的远程控制功能。这项功能,让电力公司可以在不派遣工程人员上门的情况下,对一幢建筑的电闸执行闭合和切断操作。既然如此,黑客同样可以利用这个功能,设法切断千家万户的电力供应,并令其难以迅速复原。2009年,一位名叫迈克•戴维斯(Mike Davis)的研究员真的制作出来一种“断电蠕虫”。(待续)

译者:李云凡

 

关键词:

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!