幽灵,一个看似永无止境的处理器的威胁,归功于普遍读的小工具再次回到敏捷者。首先在2018年初看到,幽灵与崩溃一起出现为对人民系统安全的主要潜在威胁。

危机和幽灵

ectdown定位的英特尔处理器,并要求在系统上运行的恶意流程来与之交互。幽灵可以通过脚本从浏览器启动。由于这些威胁在CPU中针对硬件缺陷,因此难以解决和所需的BIOS更新以及其他一些东西,以确保安全的在线体验。根据我们的原创博客

核心问题源于设计缺陷,允许攻击者从任何设备(桌面、智能手机或云服务器)访问内存内容,暴露密码和其他敏感数据。这个问题与所谓的缺陷有关投机执行,当处理器猜测基于先前缓存的迭代时执行下一个操作时会发生这种情况。

熔融变体仅影响英特尔CPU,而第二组幽灵变体会影响CPU的所有供应商,支持推测执行。这包括在英特尔,AMD,ARM和IBM的过去15年中产生的大多数CPU。

不是每个人都能突然发现自己身处这样的境地。制造商陷入了困境,消费者理所当然地要求一个解决方案。

如果这是你在想的那部分,“是什么又造成了这个?”然后你有幸。

投机修补困境

这些问题来自称为“投机执行”。正如我们所说的那样这跟进博客关于修补困难:

投机执行是大多数现代处理器使用的有效优化技术,以确定代码可能下一步的位置。因此,当它遇到条件分支指令时,处理器猜测可以基于先前的分支的处理历史来执行哪个分支。然后,它可以引用地执行指令,直到已知原始条件是真或假的。如果后者,待处理指令被放弃,并且处理器根据它确定为正确的执行路径重新加载其状态。

具有此行为的问题和它目前在众多芯片中实现的方式是,当处理器错误猜测时,它已经推测地执行了几个指令。即使它们来自无效分支,这些也保存在缓存中。幽灵和熔化通过比较两个变量的加载时间来利用这种情况,确定是否在推测执行期间已经加载了一个,并致电其值。

幽灵和崩溃存在四种变体,英特尔,IBM,ARM和AMD被幽灵抓住,“只是”英特尔被崩溃所吸引。

影响cpu(中央处理单元)的漏洞使其难以修复。软件更改可能会导致性能障碍,而硬件修复可能会更加复杂。成立了一个工作组,试图研究如何解决这个问题的极其复杂的细节。

2018年1月,研究人员强调了解决幽灵的真正方法是从头开始重新设计计算机硬件。这不是一件简单的任务。更换一切,或遭受任何软件修复可能造成的性能损失。相当复杂的补丁噩梦比比皆是,操作系统,前后Skylake.CPU,更需要调整或批发变更。

额外的并发症

没过多久,诈骗就开始利用抢修的热潮。现在,人们突然不得不在真正的Meltdown/Spectre威胁之上处理不相关的伪造、恶意软件和钓鱼。

除了前面提到的骗局外,假网站也开始出现。他们通常声称自己是官方的政府门户网站,或者是提供解决方案的普通下载网站。他们还可能使用SSL,因为显示挂锁现在是钓鱼者的常见伎俩。这是一种错误的安全感——仅仅因为有一个挂锁,并不意味着它是一个安全的地方。这意味着里面的数据是加密的。除此之外,你就靠自己了。

我们示例中的站点提供了一个zip文件。里面装着烟枪,以试图抓取而闻名额外的恶意下载

Smokeloader.

点击放大

最终,粪便死亡,人们慢慢忘记了幽灵。它会在偶尔的新闻文章中再次弹出,但对于大多数人来说,人们对此看起来像看不见了。

这将我们带到上周的新闻。

幽灵党:现在发生了什么?

现在发生了什么是重申“它不安全”的消息。威胁大多是一样的,很多人可能不需要担心这个。但是,如图所以登记册注意,问题尚未消失,一些开发人员需要牢记。

谷歌发布了一份题为,不出所料的纸张,“幽灵在这里留下来:分析侧通道和投机执行。”

谷歌论文

第一件事:它很复杂,你可以阅读全文[PDF]在这里

这里面有很多可移动的部分,坦率地说,没有人应该理解其中的所有内容,除非他们以某种能力在这方面工作。其中一些内容已经被提到过了,但这已经是700字左右的内容了,所以一个简短的概述可能会很方便:

  1. 侧频道很糟糕。您的计算机可能正在进行一堆安全的任务,保持数据安全。然而,所有这些都可以在做各种各样的事情来使这些安全进程发生。侧通道攻击来自其他角度的其他角度,在机械的领域中。声音,功耗,事件之间的时间,电磁泄漏,摄像机等。所有这些都提供了一个聪明的攻击者利用这种泄漏的侧信道并抓住数据,而恰如其攻击者。
  2. 他们通过利用投机执行来在幽灵的情况下这样做。现代化的处理器是投机执行的大粉丝,鉴于他们广泛利用它。它有助于提高性能,通过猜测接下来会做什么,然后如果毕竟不会发生这种情况。相反,部署了保留的路径,一切都得到了良好的速度提升。那些未来的潜在可能性是幽灵进来的地方。
  3. 正如论文所说,“永远不会发生的计算......通过幽灵泄漏”允许信息“。它允许攻击者将“危险投机行为”注入可信代码或通常经过安全检查的不受信任的代码。两者都是通过通过处理器共享微型建筑状态的特定操纵来触发“通常不可能计算”来完成的。

一切都是一个比特速度与安全性,安全丢失了。制造商实现了太晚,即速度/安全权衡带来了巨大的安全价,当时幽灵抵达现场。思维糟糕的演员不能篡改投机执行 - 或者更糟,而不是在第一个地方考虑​​这个 - 已经转过身来出现有点灾难。

本文继续列出Intel,ARM,AMD,MIPS,IBM和Oracle已受到影响。还有很清楚:

我们的论文显示这些泄漏不仅是设计缺陷,而且实际上是基础,在理论计算的基础上。

这并不伟大。事实上,他们估计它可能比历史中任何安全缺陷都有更广泛的分布,影响了“在所有设备类别中生产的数十亿CPU”。

幽灵:没有驱使到期

研究报告断言,幽灵党将存在很长一段时间。以软件为基础的技术来抵御这种威胁,永远无法完全解决这个问题。它们可能会抵挡住威胁,但增加了性能成本,因为更多的防御层可能会让事情变得过于拖沓,而不再认为它们有益。

修复工作结束了作为一个交易和性能命中的混合袋,幽灵是如此可变的,并超越它很快就无法抓住100%令人满意的解决方案。此时,谷歌的“通用阅读小工具”削弱,使一切糟糕的一切变得更糟。

什么是通用阅读小工具?

无需许可读取数据的方法,这对于所有意图和不可阻挡的目的而言。当当前语言的多种漏洞在CPU上运行时,它允许构建所述读取的小工具,这是谷歌研究的真正肉类。没有人会在很快那里随时挖掘投机执行,没有人致命地提出一种解决方向频道问题的方法,更少的东西就像一个通用的读取小工具。

正如论文所述,

我们现在认为,今天的硬件上的投机脆弱性违背了所有语言强制执行的机密性,没有已知的全面软件缓解......我们发现不受信任的代码可以构建通用读取小工具,以通过侧通道读取相同地址空间中的所有内存。

另一方面,很明显,我们不应该开始恐慌。听起来很糟糕,而且很糟糕,但是,任何人都不可能利用你使用这些技术。当然,不太可能并不意味着不可行,这就是为什么硬件和软件组织继续与这种特殊的精灵搏斗的原因。

研究论文强调,骨灰难以脱落。

通用读取小工具不一定是直接的结构。它需要详细了解CPU的μ架构特征和语言实现的知识,无论是静态编译器还是虚拟机。此外,小工具可能具有特别异常的性能和并发特性

许多场景将需要不同的方法,它列出了gadget可能会失败的多个实例。简而言之,没有人会在你的电脑上使用Universal Read Gadget。目前,这在很大程度上还处于理论阶段。然而,这并不意味着科技巨头变得自满,硬件和软件机构要最终消除这一幽灵还有很长的路要走。