昨日,全世界IT界都被来自OpenSSL项目的针对名为“心脏流血”(Heartbleed)的开源漏洞的紧急警告震醒,该漏洞可被用于从任何使用OpenSSL协议的软件的服务器上获取服务器工作日志,如果不安装紧急软件包对该漏洞进行修复,世界范围内数千万计的服务器都处于危险之中。
“心脏流血”这个名字听起来有点夸张,但这个漏洞的威力似乎当得起它的名字。不管是从可能感染的电脑数量还是从可能被泄露的数据规模,“心脏流血”的破坏力都超过在今年早些时候狠狠羞辱了苹果公司的“GoToFail ”漏洞。“心脏流血”漏洞可以帮助黑客获得打开服务器的密钥,监听服务器数据和流量。更糟糕的是,这并不是一个新的漏洞, “心脏流血”其实已经存在两年了,但具体何时被人发现其危险性尚不得而知。
对于不熟悉编程的人来说,OpenSSL可能是个陌生的名字,但是,实际上全世界网站服务器中有三分之二都是用OpenSSL的软件,如今所有人都开始急着寻求补救方法,比如深陷其中的雅虎,不少专家建议雅虎用户,在雅虎更新器服务器前,清空账号内容以防万一。除了雅虎,还有众多中小网站也受到了影响,比如Imgur,Flickr以及LastPass (尽管LastPass 称并未有未加密的数据可能泄露)。
“这是个灾难性的事件,一个破坏力极强的漏洞,”ICSI的网络安全研究员尼古拉斯·韦弗(Nicholas Weaver)表示。
“心脏流血”首先被谷歌研究员尼尔·梅塔(Neel Mehta)发现,它可从特定服务器上随机获取64k的工作日志,由于数据是随机获取的,所以攻击者也不一定可以获得想要的信息,因此整个过程如同钓鱼,攻击可能一次次持续进行,大量敏感数据可能泄露。由于一台服务器的密钥也记录在其工作日志中,并且在大量数据中可被轻易辨别,因此将是首当其冲的获取目标,获取密钥后,攻击者可以掌握某网站或服务的实时流量情况,甚至可以破解被加密的以往流量日志。
对于依赖OpenSSL的加密工具来说,数据被泄露将面临灾难性的后果,加密社区Tor Project发布博客文章警告用户:“如果你在网上希望匿名或者隐私保护,那么接下来的几天最好还是完全远离互联网吧。”而且,很多情况下,几天的时间根本不够,网站或者服务提供商需要不少时间将其服务器升级修复,一旦在这段时间内服务器密钥被捕获,攻击者可能有足够的时间对网站进行攻击。网站可以对其密钥和证书进行重新设定,但这个过程非常缓慢并且代价昂贵,不少网站可能仅仅选择对服务器进行漏洞修复。上述 ICSI的网络安全研究员尼古拉斯·韦弗怀疑,一年后,很多网站的服务器可能处于非常脆弱的状态,“问题并没有彻底解决。”
苹果、谷歌、微软似乎暂未中枪,一些网络银行服务商似乎也没受到影响,但是一部分雅虎用户数据则在一天之内遭到泄露(一名雅虎发言人称雅虎主站已经得到修复,团队目前正在修复其他雅虎网站)。任何采用了使用OpenSSL协议的Apache或者Nginx软件都会受到影响,很多不少用户常用的网站或者服务都因此中枪。
目前,有几种方法可以鉴别一个网站是否安全,有一家由开发者费力坡·瓦索达(Filippo Valsorda)建立的网站提供检测一家网站是否尚未修复漏洞的方法,但这家网站并不能提供百分之百准确的鉴定结果。所有已被修复的服务器仍需产生新的SSL证书密钥保证攻击者无法利用捕获的密钥进行攻击,因此也可以通过检测某网站密钥的产生日期来判断该网站是否近期被修复。网站重新设定密钥证书需要花费时间和金钱,但是如果不这么做,就很容易被攻击。
目前来看,这场风波会给互联网行业带来什么样的影响还很难说,但是一些教训已经很明显。尽管大量的网站使用OpenSSL,这项开源的协议依然缺乏足够的资金进行发展,不少专家已经开始号召向OpenSSL项目进行捐钱,避免未来再次出现如同“心脏流血”的漏洞。