据彭博社北京时间1月9日报道,近期曝光的“融化”(Meltdown)和“幽灵”(Spectre)芯片漏洞令行业震惊。其实,早在2005年,研究人员就开始讨论芯片的安全弱点。随后,不断有研究人员发现英特尔芯片的内核存在安全隐患。不过,一些研究人员认为,这一漏洞很明显,英特尔在测试中就能发现,不可能会被用于攻击中。在得知芯片漏洞后,英特尔与微软公司、谷歌公司等大型科技公司合作,花费了几个月时间秘密开发更新修复漏洞,最终才公布。
以下是文章摘要:
那是去年11月底。当英特尔公司前工程师托马斯·普雷舍尔(Thomas Prescher)正在德国德累斯顿与好友享用啤酒和汉堡时,话题有些扫兴地转移到了半导体上。
漏洞的发现
几个月前,网络安全研究员安德斯·福格(Anders Fogh)发表了一篇博文,暗示有一种方法或许能够侵入驱动着全球多数电脑的芯片。
他们一群朋友在那天晚上抽出了一些时间试图弄明白这件事。普雷舍尔对这件事一直念念不忘,于是当他回到家后,他便打开自己的台式机,验证这一理论。凌晨2点,普雷舍尔取得了突破性进展:他串连起了能够进一步证实福格想法的代码,这些代码表明芯片存在严重漏洞。
“我的第一反应是,‘这不可能是真的,这不可能是真的’,”普雷舍尔表示。
上周,他最怕的事情成真。英特尔证实,所有现代处理器都可以被名为“融化”(Meltdown)和“幽灵”(Spectre)的技术所攻击,导致重要数据泄露,例如密码和加密密钥。包括微软公司、苹果公司、谷歌公司以及亚马逊公司在内的全球大型科技公司急忙为他们的PC、智能机以及服务器发布更新。一些公司还警告,在某些情况下,他们的补丁可能会影响设备性能。
普雷舍尔是发现“融化”和“幽灵”漏洞的至少10位全球研究员和工程师之一,他们有时独立展开研究,有时一起共同研究。通过对其中几位研究员的采访可以知道,尽管芯片行业一直在说要努力确保计算机的安全,但是却未能发现一个会导致机器如此易于攻击的共同特性。
奥地利格拉茨技术大学研究员施瓦茨(最左)和格鲁斯(最右)
“这让你不寒而栗,”保罗·柯歇尔(Paul Kocher)表示,他协助发现了“幽灵”漏洞,在去年离开芯片公司Rambus后开始研究安全和性能之间的平衡,“人们看重的是处理器的性能,而不是安全。”
所有处理器制造商都在试图加快处理器处理数据,运行程序的速度,方法就是为它们增加推测功能。通过执行推测程序,微处理器获取他们预计下一步需要的数据。
“幽灵”漏洞能够欺骗处理器,让它执行推测程序,然后利用处理器检索数据所花费的时间信息来推测信息的细节。“融化”漏洞则能够直接曝光数据,它可以破坏内核区分不同应用信息的方法。内核是每台计算机核心部分的重要软件。
2005年初见端倪
至少早在2005年,研究人员就开始发表文章,讨论CPU内核存在安全弱点的可能性。澳大利亚阿德莱德大学研究院尤瓦尔·亚罗姆(Yuval Yarom)协助发现了“幽灵”漏洞,他发布了一些早期研究成果。
2013年,其他研究论文显示,CPU能够允许未经授权的用户看到内核的布局。所谓的内核就是指导计算机执行软件、安全管理以及分配资源等重要任务的一系列指令。这一漏洞就是日后曝光的KASLR破解,是上周所公布的部分漏洞的基础。
2016年,菲利克斯·威廉(Felix Wilhelm)和其他人的研究展示了早期版推测执行程序如何导致芯片遭到攻击,泄露数据。近期的推文显示,被认为首次报告了“融化”和“幽灵”漏洞的年轻谷歌研究员雅恩·霍恩(Jann Horn)受到了这一研究部分内容的启发。
2016年8月,在拉斯维加斯举行的一次重要网络安全会议——美国黑帽大会上,奥地利格拉茨技术大学的一支团队介绍了他们在当年早些时候的一项研究,旨在防止英特尔芯片的内核存储遭到攻击。团队成员之一的丹尼尔·格鲁斯(Daniel Gruss)恰好与福格同住一间酒店客房。福格是IT安全咨询公司G Data Advanced Analytics的恶意软件研究员,他一直对侧信道攻击(Side Channel Attack)很感兴趣。侧信道攻击利用芯片结构迫使计算机披露数据。
漏洞明显以至于无人相信
福格和格鲁斯彻夜讨论了随后发展为“融化”和“幽灵”漏洞的理论基础。但是,和一年多后的普雷舍尔一样,格拉茨技术大学的团队当时怀疑这不是一个真正的漏洞。格鲁斯回忆道,他当时对福格称,芯片制造商会在测试过程中发现如此明显的安全漏洞,绝不会销售存在这种漏洞的芯片。
在2016年11月初举行的欧洲黑帽大会上,福格再次阐述了这一发现,这次是向奥地利格拉茨技术大学的研究员迈克尔·施瓦茨(Michael Schwarz)。两人讨论了侧信道攻击可能会攻破虚拟化计算的安全防护。虚拟化计算是日益流行的云服务的重要组成部分,它本该是安全的,因为每个虚拟化计算会话旨在分离不同客户的信息,即便这些信息是在同一台服务器上。
发现芯片漏洞的全球网络安全研究人员
尽管获得了福格的鼓励,但是奥地利格拉茨技术大学的研究人员依旧不认为这种攻击能够在实际应用中实现。”这么大的漏洞,英特尔发现不了吗?这不可能,”施瓦茨回忆称。因此,该团队并未在这方面投入大量时间。
2017年1月,福格表示,他终于弄清楚了推测执行程序与内核攻击之间的联系。他在1月12日举行的一次行业大会上提到了他的发现,然后在3月把这一想法告诉了奥地利格拉茨技术大学团队。
2017年年中,奥地利格拉茨技术大学研究员开发了一个名为KAISER的软件安全补丁,旨在修复KAISER破解漏洞。这一补丁针对的是Linux系统,后者是全球最受欢迎的开源操作系统。Linux控制着服务器,所以它对云计算至关重要。此外,它还驱动着多数移动设备所使用的Android操作系统。鉴于它的开源属性,所有人建议Linux更新应该公开分享。KAISER补丁在开发者社区广受好评。不过,研究员们当时不知道,他们的补丁能够协助预防“融化”漏洞攻击。
漏洞逐渐显现