秦皇岛市国家保密局
正文 >   >  首页
解读CPU漏洞:熔断和幽灵
发布人:徐怀祥   发布时间:2019-03-21

201814日,国外安全研究机构公布了两组CPU漏洞,由于漏洞严重而且影响范围广泛,引起了全球的关注。

Meltdown(熔断),应对漏洞CVE-2017-5754

Spectre(幽灵),对应漏洞CVE-2017-5753/CVE-2017-5715

利用Meltdown漏洞,低权限用户可以访问内核的内容,获取本地操作系统底层的信息;当用户通过浏览器访问了包含Spectre恶意利用程序的网站时,用户的如帐号,密码,邮箱等个人隐私信息可能会被泄漏;在云服务场景中,利用Spectre可以突破用户间的隔离,窃取其他用户的数据。

Meltdown漏洞影响几乎所有的Intel CPU和部分ARM CPU,而Spectre则影响所有的Intel CPUAMD CPU,以及主流的ARM CPU。从个人电脑、服务器、云计算机服务器到移动端的智能手机,都受到这两组硬件漏洞的影响。

https://ss0.baidu.com/6ONWsjip0QIZ8tyhnq/it/u=421932942,559099286&fm=173&app=25&f=JPEG?w=640&h=405&s=F197C732EFE04C821051E45B0200D073

这两组漏洞来源于芯片厂商为了提高CPU性能而引入的新特性。现代CPU为了提高处理性能,会采用乱序执行(Out-of-Order Execution)和预测执行(Speculative Prediction)。乱序执行是指CPU并不是严格按照指令的顺序串行执行,而是根据相关性对指令进行分组并行执行,最后汇总处理各组指令执行的结果。预测执行是CPU根据当前掌握的信息预测某个条件判断的结果,然后选择对应的分支提前执行。

乱序执行和预测执行在遇到异常或发现分支预测错误时,CPU会丢弃之前执行的结果,将 CPU的状态恢复到乱序执行或预测执行前的正确状态,然后选择对应正确的指令继续执行。这种异常处理机制保证了程序能够正确的执行,但是问题在于,CPU恢复状态时并不会恢复CPU缓存的内容,而这两组漏洞正是利用了这一设计上的缺陷进行测信道攻击。

 

漏洞修复进展

针对这两组漏洞,各家芯片厂商,操作系统厂商,浏览器厂商,以及云服务厂商,都积极采取措施,发布安全公告,并及时推出缓解措施和修复补丁。

芯片厂商

1. Intel

Intel已经确认自身CPU中存在相关问题,并正与包括AMDARM和多家操作系统厂商在内的许多其他科技公司紧密合作,制定行业范围的方法,以便及时和建设性地解决这些漏洞。另外Intel认为有些媒体里面的报道并不准确,这些问题不仅仅Intel,其他厂商的CPU中也存在相关问题。这些问题的修复对性能的影响和具体的工作场景相关,对一般用户而言,影响并不显著,而且随着时间的推移这些影响都会得到缓解。

Intel已经提供软件和固件更新以解决这些漏洞。

2. ARM

ARM确认大部分处理器不受漏洞影响,但给出了一个受影响的处理器列表。ARM认为,利用这些漏洞进行攻击需要在本地运行恶意软件,用户及时更新软件和不点击来历不明的链接会降低攻击风险。针对linux上的程序,ARM提供了新编译器,可用新编译器重新编译。

3. AMD

AMD针对每个漏洞做了回复,第一个漏洞由软件、操作系统厂商发布补丁解决,性能影响非常轻微,其他两个漏洞由于AMD CPU特殊的架构,都不受影响。

操作系统

1. Windows

微软已经发布了安全通告,修复了IEEdgeWindows内核中相关问题,并针对普通用户、服务器用户、云用户各自给出了防护指南。

2. Linux

Linux内核开发者Thomas Gleixner201712月在Linux内核邮件列表中就新的KAISER隔离补丁发布了说明。目前有人怀疑这批补丁可能正是为了解决Linux系统当中的MetldownSpectre 漏洞。

3. RedHat

红帽公司已经发布一项建议,其中列出受到影响的产品及其当前状态。建议内容表明:对于正在运行受影响版本产品的红帽客户,强烈建议用户尽快根据指导清单进行更新。所有受影响产品都应安装修复补丁,借以缓解CVE-2017-5753 (变种1) CVE-2017-5754 (变种3)漏洞。CVE-2017-5715 (变种2)可通过本地以及虚拟访客边界两种方式被加以利用。

4. 安卓

Android团队于20181月更新了安全通告:CVE-2017-5715CVE-2017-5753以及CVE-2017-5754为已经得到公开披露的一系列与处理器内推测执行相关的漏洞。Android尚未发现任何在基于ARMAndroid设备之上重现上述漏洞以进行的未授权信息泄露行为。为了提供额外的保护措施,本公告当中包含的CVE-2017-13218更新减少了对高精度定时器的访问,旨在限制旁路攻击(例如CVE-2017-5715CVE-2017-5753以及CVE-2017-5754)所有已知变种对ARM处理器的影响。

浏览器

 

1. Microsoft Edge

微软已经发布了浏览器补丁。

2. FireFox

MozillaFireFox 57版本开始采取了这两个缓解措施。

3. Chrome

谷歌从Chrome 64版本开始采取了这两个缓解措施。

云服务厂商

1. Amazon

Amazon方面已经发布一项安全公告,指出:此项安全漏洞广泛存在于过去20年推出的英特尔、AMD以及ARM等各类现代处理器架构当中,影响范围涵盖服务器、台式机以及移动设备。Amazon EC2体系中除极少数实例外,其余皆受到严格保护。剩余部分的修复工作将在接下来数小时内完成,并附有相关实例维护通知。虽然AWS所执行的更新能够切实保护底层基础设施,但为了充分解决此次问题,客户还应对实例中的操作系统进行修复。

2. 阿里云

为解决处理器芯片的安全问题,阿里云将在北京时间2018112日凌晨1点进行虚拟化底层的升级更新。届时,阿里云将采用热升级的方式,绝大多数客户不会受到影响。但个别客户可能需要手动重启,阿里云建议客户提前准备运营预案及数据备份。

3. 腾讯云

腾讯云将于北京时间2018110日凌晨01:00-05:00通过热升级技术对硬件平台和虚拟化平台进行后端修复,期间客户业务不会受到影响。对于极少量不支持热升级方式的,腾讯云另行安排时间手动重启修复。

漏洞修复存在的问题

由于漏洞是芯片底层设计上的缺陷导致的,修复起来会非常复杂,同时难以完美修复。从目前的情况来看,漏洞很难通过CPU微码修复,更多是依赖于OS级的修复程序。

出于兼容性考虑,Windows Update并不会在所有的电脑环境中进行自动更新,而是在其认为软件比较兼容的情况下 才会进行自动更新。另外,对于有需要更新的用户,可以通过下载微软相关补丁包,进行手动运行修复安全威胁。

漏洞对普通用户的影响

虽然漏洞影响范围广泛,并引起全球关注,但受影响最大的主要是云服务厂商,对于普通用户来说,大可不必过于恐慌。

首先,虽然漏洞细节以及PoC已经公开,但是并不能直接运用于攻击。漏洞运用于真实攻击还有许多细节问题需要解决,目前也没有一个稳定通用,同时可以造成明显严重后果(窃取账号密码等)的漏洞利用代码;

其次,我们和其他安全厂商目前也还没有监控到利用这些漏洞进行的真实攻击,一旦出现真实攻击,我们将第一时间跟进,确保用户安全;

另外,对于普通用户而言,漏洞可造成的主要危害在于用浏览器访问了一个带有漏洞利用代码的网页,导致敏感信息(账号密码等)泄露。只要养成良好的上网习惯,不轻易点击陌生人发来的链接,基本不会受到漏洞影响;同时,浏览器针对漏洞发布的补丁和缓解措施简单有效,而且不会造成性能下降或兼容性问题,用户可以选择将浏览器升级到最新版本,从而避免受到漏洞攻击。

冀ICP备13022690号-1 秦皇岛市国家保密局
电话:0335-3220022 地址:中国·河北·秦皇岛
Copyright © 2013 qinhuangdaoshibaomiju All rights reserved