2014年最危险的五大软件漏洞
安全业界的研究员们每天都在寻找新的软件漏洞,但是已经很久没有象2014年这样出现数量如此之多或影响范围如此之广的漏洞了。回顾即将结束的2014年,一个又一个重量级漏洞接踵而至,受到影响的设备竟以百万计,系统管理员和用户简直要抓狂了。
今年被发现的几个重大安全漏洞震惊了整个互联网,令安全社区颜面尽失,因为这些漏洞并不是在新软件中被发现的,而是从已经推出了几年甚至几十年的老软件中被挖出来的。有几个漏洞可以说是普通用户的悲剧,因为这么多人使用了这么久的时间,人们一直以为它们是没有漏洞的。
SR Labs的柏林安全研究员卡尔斯滕诺尔(Karsten Nohl)称:“人们总是认为,拥有大量安全预算的大公司们都普遍使用的软件肯定已经被检查了很多次了,大家都想偷懒,希望其他人去做检测工作,结果谁都没有认真做完所有的安全检查工作。”
他说,今年在最常用的工具中发现的那些重要漏洞说明了一个问题,即黑客们已经开始在老软件中寻找长期被人们忽略掉的漏洞。在很多情况下,这将造成惊人的后果。现在就跟我们来一起历数2014年在研究社区和全球网络上横行无忌的安全漏洞。
心脏流血
当加密软件失效的时候,最糟糕的结果是某些信息可能会外泄。但是当心脏流血漏洞被黑客利用时,后果要严重得多。
心脏流血漏洞在今年4月被首次曝光时,黑客可以通过它向全球三分之二的网络服务器发动攻击。那些服务器使用了开源软件OpenSSL,心脏流血漏洞就存在于该软件中。利用这个漏洞,黑客不仅可以破解加密的信息,而且可以从内存中提取随机数据。换句话说,黑客可以利用这个漏洞直接窃取目标用户的密码、私人密钥和其他敏感用户数据。
谷歌(微博)工程师尼尔梅赫塔(Neal Mehta)和发现这个漏洞的安全公司Codenomicon一起开发出了对应的补丁,但是即便在系统管理员安装好这个补丁之后,用户仍然不能肯定他们的密码是否失窃了。因此,心脏流血漏洞促成了历史上最大规模的修改密码行动。
即使到今天,很多设备上的OpenSSL存在的漏洞仍然没有被补上。扫描工具软件Shodan的发明者约翰麦瑟利(John Matherly)通过分析发现,现在仍有30万台服务器没有安装心脏流血的补丁,其中有很多设备可能是所谓的“嵌入式设备”,比如网络摄像头、打印机、存储服务器、路由器、防火墙等。
Shellshock
OpenSSL软件中的漏洞存在了两年多的时间,但是Unix的“进入子程序”功能中的一个漏洞却是存在时间最长的漏洞,它至少存在了25年的时间才被发现。任何安装了这个壳工具的Linux或Mac服务器都有被攻击的危险。
结果是,美国计算机紧急响应小组在9月公布这个漏洞后,不到几个小时就有上万台机器遭到恶意软件的DoS攻击。然而灾难并没有结束,美国计算机紧急响应小组最开始发布的补丁很快被发现自身也有一个漏洞。第一个扫描互联网来寻找存在漏洞的Shellshock设备的安全研究员罗伯特大卫格拉汉姆(Robert David Graham)称,这个漏洞比心脏流血漏洞还要糟糕。
POODLE
心脏流血漏洞袭击了全球的加密服务器之后仅过了6个月,谷歌的研究员们又发现了一个加密漏洞。这次漏洞位于安全软件保护的另一端:与那些服务器连接的PC和手机。
存在于3.0版SSL中的这个名为POODLE的漏洞允许攻击者劫持用户的会话,窃取在用户电脑与加密在线服务之间传输的所有数据。与心脏流血漏洞不同的是,黑客可以利用POODLE漏洞发起攻击时必须与目标在同一个网络上,这个漏洞威胁的主要是开放WiFi网络的用户,比如星巴克的顾客。
Gotofail
心脏流血漏洞和Shellshock漏洞给安全社区造成了巨大的震动,以至于人们可能会忘了2014年最先被发现的重要漏洞Gotofail。Gotofail漏洞影响的只是苹果用户。
今年2月,苹果宣布用户的加密网络数据可能会被同一本地网络上的其他人截获,这主要是因为管理OSX和iOS如何执行SSL和TLS加密的软件代码中的“转至”命令出错引起的。
不幸地是,苹果只发布了一个针对iOS的补丁而没有发布适用于OSX的补丁。也就是说,苹果在公布这个漏洞的消息时完全让其台式机电脑用户陷入了随时被攻击的境地。它的这个失误甚至激起了公司自己以前的一名安全工程师专门发了一篇博客文章来痛斥它。
克里斯汀帕吉特(Christin Paget)写道:“你们在向你们其中一个平台发布SSL补丁时难道没有想到其他的平台?我在使用我的Mac电脑时,我随时都会受到攻击,而且我现在还只有眼睁睁地看着,什么也干不了。可爱的苹果,你他妈的在干什么??!?!!”
BadUSB
2014年被发现的最阴险的攻击并没有借助于任何软件中的任何安全漏洞,因此它也是无法通过补丁来修复的。这种攻击方式是谷歌研究员卡尔斯滕诺尔(Karsten Nohl)8月份在黑帽子安全大会上最早演示的,它依仗的是USB设备中固有的一种不安全因素。
因为USB设备的固件是可以被复写的,黑客可以编写出恶意软件悄悄地侵入USB控制器芯片,而不是安全软件通常在查毒时扫描的闪存。例如,一块U盘可能会包含一个无法被安全软件查出的恶意件,它会破坏U盘上的文件或者模拟键盘动作,悄悄地将各种命令注入用户的机器之中。
大约只有一半的USB芯片是可被复写的,因此就有一半的USB设备会受到BadUSB的攻击。但是由于USB设备厂商并没有公布它们使用的是哪家厂商的芯片并且经常更换供应商,因此用户不可能知道哪些设备会受到BadUSB的攻击。
据诺尔说,针对这种攻击方式的唯一保护方法是将USB设备当作“一次性注射器”一样使用,永远不要与他人共用或将它们插入不被信任的机器。
诺尔认为这种攻击方式会造成很严重的后果,因此他拒绝公开相应的验证概念代码。但是一个月之后,另一群研究员公布了他们自己通过反向推导得出的攻击代码,迫使芯片厂商解决这个问题。很难说是否有人利用那段代码发动过攻击,这意味着全球各地的人们使用的无数USB设备已经不再安全了。