《大众科学》论坛是来自科学和技术领域专家关于热点问题的特邀文章。
“心脏出血”漏洞是迄今为止最严重的互联网安全漏洞。大约两年时间里,三分之二的网站都容易受到远程攻击者的内存提取攻击——这些内存包含私人信息、密码和加密密钥。“心脏出血”攻击不会出现在大多数网站的日志中,因此我们不能确定它被利用的范围有多广,或者可能泄露了哪些信息。一些证据表明,早在2013年11月就有人积极利用“心脏出血”漏洞,但研究人员仍在努力核实这些说法。
“心脏出血”漏洞是由一位德国博士生在2011年提交给OpenSSL加密包的代码中的一个编程错误引起的。这是一个常见的错误类型,但不知何故没有人发现它。有缺陷的代码不仅通过了OpenSSL的审查流程,而且在被采用到官方OpenSSL版本后,这个漏洞仍然悄无声息地存在了两年。
支持科学新闻报道
如果您喜欢这篇文章,请考虑通过 订阅 来支持我们屡获殊荣的新闻报道。通过购买订阅,您正在帮助确保关于塑造我们当今世界的发现和想法的具有影响力的故事的未来。
像OpenSSL这样的开源软件本应有利于安全,因为每个人都可以自由地阅读和分析代码。开放代码最大限度地提高了有人在最终用户遭受损失之前发现错误的几率。开源倡导者埃里克·S·雷蒙德(Eric S. Raymond)曾有名地称之为林纳斯定律:“只要有足够的眼球,所有错误都是浅显的。” 如果你有足够的眼球,那这当然是个好消息。
但OpenSSL正面临着严重的眼球短缺。该项目由四个人维护,每年的预算不到100万美元。另外花费一两百万美元进行安全审计很可能可以防止“心脏出血”漏洞。然而,OpenSSL安全是一种公共利益,它存在着资金问题:一旦它存在,就无法阻止任何人从中受益,因此许多人希望在其他人承担费用后搭便车。
政府经常为基础科学研究等公共产品付费。但政府并没有投资于OpenSSL的安全性。尽管每年在网络安全上花费数十亿美元,并将“网络”宣布为国家优先事项,但政府甚至没有提供几百万美元来加强这一核心安全基础设施。
在“心脏出血”漏洞公开后,当整个网络的的用户和小网站运营者都在想该怎么办时,政府也没有提供权威、具体的建议。尽管政府向面临自然灾害或人身安全风险的人们提供此类建议,但在“心脏出血”漏洞出现时,它却让用户不知所措。
相反,来自政府关于“心脏出血”漏洞的最佳消息是白宫异常明确和直接的声明,即美国政府的任何部门在此漏洞披露之前都不知道它。这一声明避免了如果国家安全局隐瞒了影响三分之二网络的严重漏洞知识而引起的强烈抗议。政府的支持者们松了一口气。
许多人,包括本文的作者在内,担心政府可能已经掌握“心脏出血”漏洞的知识数月之久,因为它更希望看到人们处于脆弱的状态。事实证明,这种恐惧被误解了——这次是这样。新宣布的政策是负责任地披露漏洞,除非有“明确的国家安全或执法需求”。一位评论员将此比作一项严格的政策,即除非巧克力美味,否则不会吃它。
在大多数情况下,公司比政府更不可能提供像OpenSSL安全资金和用户广泛指导这样的公共产品。就“心脏出血”漏洞而言,一些公司警告用户更改其公司网站上的密码——这是一个好主意——但很少有公司提供一般性建议。
简单的事实是,我们没有所需的支持普通互联网用户安全的机构。公司并没有完成全部工作。政府没有填补这一空白——而且在恢复人们对其不采取积极措施破坏安全的信任之前,政府也无法有效地做到这一点。有人需要牵头资助和协调基础设施审计,组织向公众有用的漏洞披露,并为用户以及小型网站的运营者提供易于理解的建议和指导。
现有实体提供其中一些功能——例如,开放加密审计项目旨在资助和协调对安全关键的开源软件的审计。但一个中央组织应该统一这些努力,找出未解决的问题,并向公众提供清晰的信息。如果政府和私营公司都不这样做,那么我们需要一个独立机构,专门为最终用户的安全需求服务。
我们将长期与安全问题作斗争,没有任何东西能让我们完全安全。“心脏出血”漏洞不会是我们遭受的最后一个严重的计算机安全漏洞。但是,更好的机构可以使这些漏洞发生的频率更低、危害更小、对用户造成的困惑更少。凭借一些领导力和适度的投资,我们可以拥有一个用户安全的捍卫者。