内核处理器爆发高危漏洞!电脑手机均受影响,苹果、英特尔灾情严重
近日,安全研究人员公布了一份官方文档,揭露了两个几乎影响所有现代中央处理器的主要缺陷。
这些缺陷并不是CPU本身的物理问题,或是在使用Word或Chrome等应用程序中可能遇到的普通软件错误。这些问题位于处理器的“架构”层面,也就是所有数以百万计的晶体管和逻辑单元一起协作来执行指令的层面。
在现代体系结构中,存在着不可侵犯的空间,在这里数据以原始未加密的形式进行传递,比如内核中——即体系结构中最核心的软件单元,或在系统内存中与其他应用程序谨慎地分离开。这些数据具有强大的保护功能,防止自身被其他进程和应用程序干扰,甚至被其他程序监测到。
Meltdown和Spectre是研究人员发现的两个技术漏洞,它们可以规避以上保护措施,几乎将计算机处理的任何数据全部暴露在外,比如密码、专有信息或加密通信。
Meltdown可影响英特尔处理器,并通过阻止应用程序访问内存中任意位置的屏障实现其干扰目的。隔离和保护内存空间可以防止应用程序意外干扰彼此数据,或者防止恶意软件偷窥和任意修改数据;但是,Meltdown让这些基础进程从根本上变得不再可靠。
Spectre则可以影响英特尔、AMD和ARM等处理器,扩大了其影响范围,包括手机、嵌入式设备和几乎所有带有芯片的设备,即从温度调节器到婴儿监视器等等,只要有芯片,就会受影响。Spectre的工作方式与Meltdown有所不同,Spectre实质上是在欺骗应用程序。这个漏洞触发不容易,但由于它是建立在多芯片架构的基础上,修复起来也更加困难。
谁将受到影响?—— 几乎每一个人。
经过测试后发现,2011年以来的芯片其易受攻击。理论上,这些技术可以影响到1995年发布的处理器。你也许会觉得这些芯片大多已经被淘汰,而事实上并非如此。由于Meltdown和Spectre是存在于架构层的缺陷,所有无论用户的设备运行的是Windows系统还是OS ,抑或Android或其他各种——所有软件平台都一样易受攻击。
因此,从笔记本到智能手机到服务器都会受到影响。进一步地,我们可以假设,任何未经测试的设备都可能是易受攻击的。不仅如此,可以想象,Meltdown也能被应用到云平台上。在这里,大量互联的计算机经常在成千上万的用户和实例之间共享和传输数据。
好消息是,机器本身运行的代码容易受到攻击,但远程则不易执行。所以,至少还没那么糟糕。
漏洞可以修复吗?—— 仅可部分修复,且需要时间。
这些漏洞可以影响或攻击很多很多设备,但不等同于说这些设备完全暴露在漏洞的影响或攻击之下。英特尔、AMD、ARM和其他公司已经花了几个月时间来制定解决方案和“缓解措施”。
通过在核心周围建立一个坚固的防火墙可以从本质上解决Meltdown漏洞;技术术语叫做“内核页表隔离”。这虽然解决了问题,但代价也颇大。现代CPU体系结构假定了一系列特定的内核工作和被访问方式,而改变这些特定方式意味着内核将无法满负荷运行。修复Meltdown漏洞可能会减少英特尔芯片的性能,少则降低5%的性能,多则降低30%多——总之,副作用在所难免。然而,不管怎样,都比Spectre的情况好多了。
Spectre不太可能在短时间内完全修复。事实是,导致这个攻击成为可能的操作完全是硬连接到处理器的,因此研究人员实在无法找到任何方法来完全避免这个问题。他们虽然列出了一些建议,但总结道:虽然前面介绍的阻止对策可能有助于在短期内限制实际的攻击,但目前还是没有办法获知某个特定的代码构建在当今的处理器中是否安全,更不用说未来的设计。
实际会发生什么很难说,但很可能会出现一连串的更新来防止最明显和最具破坏性的攻击。微软已经为Windows系统发布了一个类似的软件;ARM对其受影响的芯片也采取了一套缓解措施;亚马逊正在更新其大量的服务器。
然而,这些缓解补丁如何才能快速广泛地应用呢?现在到底有多少易受攻击的设备呢?这些更新不够完美,可能需要更改才能突破其他软件、驱动程序和组件。而且,所有补丁都有可能会降低设备性能。
更持久的解决方案是需要对电路板进行大量更改。我们设备已经用了几年甚至几十年的基础架构选择,需要重新设计。这并非易事,也十分枯燥。
与此同时,各大公司正在全力开展工作,以尽量减少明显的威胁:“缓解措施”可能或不能阻止一些或所有的不同攻击。像往常一样,这些补丁只会达到一小部分新的和快速更新的用户与设备,或那些可以直接自行执行更新的公司。我们只能通过现实世界中的表现来了解这些措施的有效性。
值得注意的是,此次事件不存在“召回”。如果漏洞仅影响一个单一的设备,好比三星手机的电池问题,召回是可以解决问题的。但是目前的这个问题,影响到数百万甚至数十亿台设备,召回几乎不可能。
为什么我们才听说此事?——一场策划好的“延迟披露”
大公司们好几个月前就已经知道类似Meltdown和Spectre这种重大的安全漏洞,研究人员已经研究这个特定的漏洞很久。并且,传闻各种操作系统也采取了微小的更新,来解决迄今暂未被证实的安全漏洞。
如果研究人员在发现漏洞时就公布这些细节,必将会在寻求解决方案的同时引来黑客。一般来说,安全调查人员只是做了所谓的“负责人披露”,即秘密联系受影响的公司,不论是走个形式还是为了与公司协作开发解决方案。
在此次事件中,谷歌于几个月前就联系了英特尔,毫无疑问,其他人也或多或少有所了解,因为微软在漏洞公布之前已经向内部人员发布了几个补丁,而Linux也在描述漏洞的文件还没发布之前就开始处理这些问题。
本来的计划应该是,受影响公司们先给出解决方案,悄悄布置应用,然后同时宣布漏洞和解决方案。而且事实证明,此次事件也是这么计划的。
但是有一家外媒的精明报道似乎迫使这些几十亿美元的公司不得不立即采取行动。这些公司争相敲定他们的报告,处理“不准确”的媒体报道,并匆匆发布很可能下周都来不及完成的补丁和解释。
尽管有些人认为,媒体应该让事情顺其自然,但是让这些数十亿美元的公司完全掌控此类重大漏洞的说辞未免也不妥当。如果我们获知的唯一真相就是这些公司联合认可的版本,那么很可能真相并非如此。