近日,Intel处理器被爆出存在硬件上的漏洞,该漏洞源于芯片硬件层面的一处设计BUG。这个BUG会允许程序窃取当前在计算机上处理的数据,并且影响Windows, MacOS, Linux。由于涉及硬件,该漏洞无法通过芯片的微码(microcode)更新进行修复,需要通过内核级别的修复来解决,并且据研究表明,修复该漏洞会牺牲5%-30%的性能,此次漏洞事件共包含Meltdown和Spectre两个安全问题,部分利用代码已经公开。
一、漏洞摘要
Meltdown
漏洞编号:CVE-2017-5754
Meltdown打破了用户应用程序和操作系统之间最基本的隔离。 这种攻击允许程序访问其他程序和操作系统的内存,也就是可以读取到敏感的,秘密的信息。
如果您的计算机装有受影响的处理器并运行未打补丁的操作系统,则在操作敏感信息时就会有泄漏的危险。个人用户和云设施均会受到影响。
参考链接:https://meltdownattack.com/
Spectre
漏洞编号:CVE-2017-5715、CVE-2017-5753
Spectre打破了不同应用程序之间的隔离。 它允许攻击者欺骗无错程序(error-free)并使其泄露秘密信息。事实上,最佳实践的安全检查反而会增加攻击面,并可能使应用程序更容易受到Spectre的影响。
Spectre比Meltdown更难被利用,然而它也更难以防护。但是,可以通过软件补丁防止基于Specter的特定已知漏洞。
参考链接:https://spectreattack.com/
二、漏洞影响分析
目前来看,漏洞的利用只能读取敏感信息。由于云主机共享CPU,攻击者可通过此漏洞越权读取他人主机相关信息,甚至普通用户可通过越权读取内存信息以获得主机管理员权限。
在漏洞公开后Mozilla官方证实Meltdown和Spectre漏洞均存在远程利用风险,可以通过WEB页面的JavaScript文件直接实施攻击。攻击者可通过DNS劫持,对普通用户进行攻击,建议相关个人用户及时升级操作系统补丁及浏览器版本。
受影响的处理器
1995年以后生产的所有处理器芯片,具体如下:
Intel:
Intel® Core™ i3 processor (45nm and 32nm)
Intel® Core™ i5 processor (45nm and 32nm) Intel® Core™ i7 processor (45nm and 32nm) Intel® Core™ M processor family (45nm and 32nm) 2nd generation Intel® Core™ processors 3rd generation Intel® Core™ processors 4th generation Intel® Core™ processors 5th generation Intel® Core™ processors 6th generation Intel® Core™ processors 7th generation Intel® Core™ processors 8th generation Intel® Core™ processors Intel® Core™ X-series Processor Family for Intel® X99 platforms Intel® Core™ X-series Processor Family for Intel® X299 platforms Intel® Xeon® processor 3400 series Intel® Xeon® processor 3600 series Intel® Xeon® processor 5500 series Intel® Xeon® processor 5600 series Intel® Xeon® processor 6500 series Intel® Xeon® processor 7500 series Intel® Xeon® Processor E3 Family Intel® Xeon® Processor E3 v2 Family Intel® Xeon® Processor E3 v3 Family Intel® Xeon® Processor E3 v4 Family Intel® Xeon® Processor E3 v5 Family Intel® Xeon® Processor E3 v6 Family Intel® Xeon® Processor E5 Family Intel® Xeon® Processor E5 v2 Family Intel® Xeon® Processor E5 v3 Family Intel® Xeon® Processor E5 v4 Family Intel® Xeon® Processor E7 Family Intel® Xeon® Processor E7 v2 Family Intel® Xeon® Processor E7 v3 Family Intel® Xeon® Processor E7 v4 Family Intel® Xeon® Processor Scalable Family Intel® Xeon Phi™ Processor 3200, 5200, 7200 Series Intel® Atom™ Processor C Series Intel® Atom™ Processor E Series Intel® Atom™ Processor A Series Intel® Atom™ Processor x3 Series Intel® Atom™ Processor Z Series Intel® Celeron® Processor J Series Intel® Celeron® Processor N Series Intel® Pentium® Processor J Series Intel® Pentium® Processor N Series |
AMD:
Ryzen 5系列
Ryzen 7系列 FX系列 Ryzen Threadripper系列 A10系列 A8系列 速龙系列 |
ARM:
CORTEX-A系列
CORTEX-R系列 |
受影响的操作系统
Android:
Android 8.0及以下版本 |
iOS:
iOS 11.1 及以下版本 |
Windows系统
Windows 10
Windows 8 Windows 8.1 Windows 7 Windows Vista Windows XP Windows Server 2003 Windows Server 2008 Windows Server 2012 Windows Server 2012 R2 |
Linux系统
Debian系列
Ubuntu系列 RedHat系列 CentOS系列 Fedora系列 OpenSuse系列 |
三、升级建议
1月3日晚,微软发布了针对Meltdown和Specter的系统安全更新,请用户开启系统更新功能及时打全最新的安全补丁。
系统版本 | KB号 |
Windows Server, version 1709 (Server Core Installation) | 4056892 |
Windows Server 2016 | 4056890 |
Windows Server 2012 R2 | 4056898 |
Windows Server 2012 | 暂不可用 |
Windows Server 2008 R2 | 4056897 |
Windows Server 2008 | 暂不可用 |
Windows 8 | 4056897(1月9日发布) |
Windows 7 | 4056898(1月9日发布) |
苹果公司发布公告已经对部分系统进行了升级,相关产品及最新版本信息如下:
产品名称 | 更新版本 |
iOS | 11.2 |
macOS | 10.13.2 |
tvOS | 11.2 |
Apple Watch | 不受影响 |
Safari | 暂未发布更新 |
根据官方的公告,RedHat、SUSE、Ubuntu等Linux操作系统暂时没有发布更新。
该漏洞存在于CPU硬件中,无法通过固件来修复,目前各厂商都在致力于各自产品的修复,请相关用户及时关注官方的升级通告。
以下是部分厂商的通告链接:
Intel | https://newsroom.intel.com/news/intel-responds-to-security-research-findings/ |
VMWare | https://www.vmware.com/us/security/advisories/VMSA-2018-0002.html |
AMD | https://www.amd.com/en/corporate/speculative-execution |
Red Hat | https://access.redhat.com/security/vulnerabilities/speculativeexecution |
NVIDIA | https://forums.geforce.com/default/topic/1033210/nvidias-response-to-speculative-side-channels-cve-2017-5753-cve-2017-5715-and-cve-2017-5754/ |
Xen | https://xenbits.xen.org/xsa/advisory-254.html |
ARM | https://developer.arm.com/support/security-update |
Amazon | https://aws.amazon.com/de/security/security-bulletins/AWS-2018-013/ |
Mozilla | https://blog.mozilla.org/security/2018/01/03/mitigations-landing-new-class-timing-attack/ |
Windows | https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/ADV180002 |
https://www.chromium.org/Home/chromium-security/ssca | |
Apple | https://support.apple.com/en-us/HT208394 |
HUAWEI | http://www.huawei.com/en/psirt/security-notices/huawei-sn-20180104-01-intel-en |
由于攻击者可通过浏览器嵌入JavaScript脚本,利用此漏洞进行攻击,相关浏览器厂商也提供了升级版本,如下表:
浏览器名称 | 更新版本 |
FireFox | 57 |
Chrome | 64(将在1月23日更新) |
Safari | 暂未发布更新 |
Internet Explorer 11 | KB4056890等 |
Microsoft Edge | KB4056890等 |
四、漏洞分析
4.1 本地利用分析
CPU会利用分支预测和乱序执行提高执行效率,CPU会预测将来会执行的命令,并提前加载到缓存中,例如将下一条指令所需要访问的内存提前加载到CPU缓存中,这就避免了执行具体指令时再去读内存,从而加快了CPU的执行速度。
假设在执行第3条指令时发生了异常(比如除0操作),会触发CPU的异常处理,从而中断指令3和指令4的执行,但是并不会撤销指令4,此时的指令4所需的内存数据已经被加载到缓存中。如果指令4访问了非法内存地址,则有可能造成泄露。由于CPU缓存速度高于系统内存的速度,可利用时间差猜测出内存中的数据。
漏洞复现:
部分漏洞利用的源代码已经公开,经测试源码可在Windows和Linux两个平台下编译执行。
Windows上运行截图:
Linux上运行截图:
4.2 远程利用分析
虽然该漏洞只能在主机上触发,但是根据最新的研究结果发现,该漏洞可通过Web站点对目标系统进行攻击。Mozilla已经正式确认, Meltdown和Spectre CPU漏洞可能通过恶意JavaScript文件进行漏洞利用,也就是说,用户可能因为访问某个网页而被提取信息。也就是说,基于网络的攻击形态是完全可能的,并非只能在本地执行恶意代码。
Google安全人员将漏洞公开的几个小时之后,Mozilla证实了Meltdown和Spectre漏洞都可以远程利用,只需要通过网站页面的JavaScript文件就可以实施攻击。FireFox57版本中加入了一些临时防范策略,但Mozilla同时也表示,这会降低Firefox部分功能的效率,目前FireFox针对该漏洞的完美修复方案还在研发当中。
Google表示将会在1月23日发布新版本Chrome 64浏览器,在新版本发布之前,官方建议开启Chrome 63中站点隔离功能来减小攻击带来的影响。
截止到目前为止,Apple暂未明确如何修复Safari浏览器,建议用户及时关注官方的升级通告。
实际攻击场景中,攻击者可通过攻击目标网站或自己建立恶意网站实施攻击,攻击者可以在未授权的情况下获取以下内容或实施进一步攻击:
- 获取本地操作系统内存中的信息,包括系统运行数据、秘钥、图片等。
- 通过获取到的秘钥登录应用系统,从而实施进一步的攻击行为。
- 可以绕过虚拟机超级管理器(HyperVisor)的隔离防护。
- 在云服务中,可以泄露其他用户的隐私信息。
- 通过浏览器泄露受害者的账号、密码、邮箱、cookie等隐私信息。
4.3 漏洞检测
微软已经公开Powershell的检测程序,请用户尽快进行检测是否受影响,具体操作步骤如下:
以管理员身份打开Powershell:
安装powershell SpeculationControl检测模块,安装完成后执行来启动检测,依次输入如下命令:
Install-Module SpeculationControl
Get-SpeculationControlSettings |
如果在运行Get-SpeculationControlSettings时出现如下错误,需要开启脚本执行权限,且需要将SpeculationControl模块导入。
命令如下:
set-executionpolicy remotesigned
Import-Module SpeculationControl |
命令执行完成后若出现如下提示,则说明存在漏洞风险。
详情可参考官方链接:
https://support.microsoft.com/en-us/help/4073119/protect-against-speculative-execution-side-channel-vulnerabilities-in
声明
本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。
绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。
关于绿盟科技
北京神州绿盟信息安全科技股份有限公司(简称绿盟科技)成立于2000年4月,总部位于北京。在国内外设有30多个分支机构,为政府、运营商、金融、能源、互联网以及教育、医疗等行业用户,提供具有核心竞争力的安全产品及解决方案,帮助客户实现业务的安全顺畅运行。
基于多年的安全攻防研究,绿盟科技在网络及终端安全、互联网基础安全、合规及安全管理等领域,为客户提供入侵检测/防护、抗拒绝服务攻击、远程安全评估以及Web安全防护等产品以及专业安全服务。
北京神州绿盟信息安全科技股份有限公司于2014年1月29日起在深圳证券交易所创业板上市交易,股票简称:绿盟科技,股票代码:300369。