幽灵再现:数据泄露漏洞影响英特尔、AMD、ARM芯片
作者: 日期:2018年11月17日 阅:66,669

CPU制造巨头坚称现有防护措施可抵御攻击,但研究人员不怎么认为。

计算机安全研究人员又发现了一组CPU瞬时执行攻击,本地攻击者可藉此访问特权数据,实现今年年初熔断和幽灵漏洞曝光时的预言。

简单讲,恶意用户和恶意软件可利用这组处理器安全漏洞从内存中找出口令、加密密钥等本不应被触及的秘密。目前尚未发现此类漏洞的野生利用实例,但无论如何,它们都给半导体行业敲响了警钟,芯片设计和工具链是必须做出改变了。

发现这组最新芯片漏洞的科学家中就包括有当初曝光了原始幽灵和熔断漏洞的那几位。

研究人员称,“瞬时执行”这个词比“预测执行”更适合用来描述幽灵、熔断和预兆攻击。

11月13日在ArXiv上预发布的论文中,研究人员写道:‘预测执行’常被错误地用来指代一系列基于特定事件(比如条件分支、返回地址或内存消歧)结果预测、乱序执行和管道的攻击。

然而,幽灵和熔断漏洞利用的CPU属性有本质差异。一块CPU可能容易受到幽灵攻击而对熔断免疫(比如AMD芯片),或者易遭熔断攻击而对幽灵攻击免疫。两种攻击之间唯一的共同点是都利用了瞬时执行域的边信道效应,比如那些未然执行。

不那么明显的7种新瞬时执行攻击

研究人员描述了7种瞬时执行攻击,包含2个熔断新变体(英特尔上的Meltdown-PK,英特尔和AMD都存在的Meltdown-BR),还有5个为之前披露的 Spectre-PHT (边界检查绕过) 和 Spectre-BTB (分支目标注入)漏洞设计的新幽灵分支预测器错误训练策略。研究人员已向芯片供应商负责任地披露了相关发现。

幽灵漏洞利用分支预测获取瞬时数据,熔断通过评估CPU内核内存读取失败后的瞬时乱序指令来绕过应用与操作系统间的隔离。

之前共有5个公开披露的熔断变体:Meltdown-US (熔断)、Meltdown-P (预兆)、Meltdown-GP (变体 3a)、Meltdown-NM (Lazy FP)、和Meltdown-RW (变体 1.2)。

研究人员这次拿出了2个新的:Meltdown-PK和Meltdown-BR。

Meltdown-PK攻击可突破英特尔Skylake-SP服务器芯片所谓的用户空间内存保护密钥(PKU)防护。PKU可使处理器无需系统调用/超级调用就从用户空间修改内存页面的访问权限。

Meltdown-PK显示出,只要攻击者能在进程中执行代码,即便无法执行wrpkru指令(比如因为黑名单的原因),PKU隔离也可以被绕过。而且,与跨权限级别的Meltdown攻击变种相反,其中不涉及任何软件解决方案。英特尔只能通过更新硬件或微代码更新来修复Meltdown-PK。

Meltdown-BR提供了绕过边界检查的方法。而边界检查能在发现越界值时抛出异常。Meltdown-BR利用此类异常抛出后的瞬时执行来捕获本来不应被访问到的带外秘密。

研究人员在支持内存保护扩展(MPX)的 Skylake i5-6200U CPU、 AMD 2013 E2-2000 和 AMD 2017 Ryzen Threadripper 1920X 上演示了他们的攻击,并指出,这是熔断风格的瞬时执行攻击利用AMD硬件延迟异常处理特性的首次演示。

至于 Spectre-PHT 和 Spectre-BTB 攻击中错误训练分支预测器的创新方法,研究人员在 Intel Skylake i5-6200U 和 Haswell i7-4790,AMD Ryzen 1950X 和 Ryzen Threadripper 1920X,,以及一块基于Arm 的 NVIDIA Jetson TX1 上进行了概念验证。

所有芯片供应商的处理器都未能免疫。不过,Spectre-BTB的潜在攻击场景可能非常有限。目前,这些漏洞尚未被分配CVE编号。

不理不睬

在发给媒体的电子邮件声明中,英特尔发言人对研究人员的发现轻描淡写:

论文中的漏洞用针对幽灵和熔断漏洞的现有缓解技术就能完全解决,英特尔和其他芯片制造商之前发布过的缓解措施也可以。保护客户一直是我们的重中之重,感谢研究人员的贡献。

Arm发言人表示:学术界研究人员发现的最新幽灵和熔断漏洞应用之前发布的Arm白皮书中描述的现有缓解措施即可解决。

AMD对媒体的评论请求没有做出回应。

芯片供应商们坚称不受影响的声明与研究人员公布的论文相悖。研究人员在论文中写道:即便启用了所有缓解措施,我们依然能执行Meltdown-BR、Meltdown-PK 和 Meltdown-RW。有些瞬时执行攻击不能被现有补丁成功缓解,其他则是因为被忽视了而未能成功缓解。

令情况变得更为棘手的是,因为补丁对性能的影响太大,部分用户禁用了已经发布的缓解措施。研究人员表示,发布该论文的目的之一,是要敦促芯片制造商拿出更好的修复措施来解决瞬时执行攻击的根源问题。

幽灵和熔断披露之初就有媒体表示,更好的解决方案可能意味着硬件重构。HackerOne以为安全研究员在给媒体的邮件声明中说道:只要处理器还继续预测执行,此类漏洞就会不断冒出。硬件层面上操作始终无法避免副作用,假装此类操作没有副作用的无视态度只会引发安全问题。

截至目前,虽然其他研究人员还发布了一个名为NetSpectre的远程幽灵攻击,本文中涉及的最新技术似乎都属于本地威胁。

研究人员表示:远程攻击目前很难加载。

瞬时执行攻击的威胁没有因为这篇论文的发布而发生什么改变。我们发布论文的主要目的是向安全社区呈现分析和分类新变种的清晰途径,描绘验证和分析防御技术的明晰方法。真正改变了的是我们现在可以更好地评估具体的防御技术了。

新漏洞论文链接:

https://arxiv.org/pdf/1811.05441.pdf

Arm白皮书:

https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability

相关阅读

幽灵再现:谁也无法阻挡Spectre漏洞了

幽灵和熔断将会再现 设备永远不会真正安全

全球最大OpenStack云如何修复“熔断”及“幽灵”漏洞

 

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!


相关文章