当前位置: 首页 > SEO学院SEO知识

Meltdown & Spectre 攻击及缓解措施(一)

来源:未知 浏览量:263次

  今天小凯seo博客转载一篇来自百度安全指数在2018年1月9日发布的内容标题为《Meltdown & Spectre 攻击及缓解措施(一)》正文部分如下:

  1. 引言

  最近Google Project Zero和一些独立安全研究人员发现了CPU芯片硬件层面执行加速机制尼勒克县网站优化正文部分如下:

  1. 引言

  最近Google Project Zero和一些独立安全研究人员发现了CPU芯片硬件层面执行加速机制也就是乱序执行(out-of-orderexecution)和推测执行(speculative execution)会引起CPU缓存的污染从而攻击者可以发起基于cache的侧信道攻击偷取数据。目前主要涉及到两种攻击方法分别为Meltdown [4] 和Spectre [5]。Spectre涉及CVE编号CVE-2017-5753和CVE-2017-5715而Meltdown涉及CVE编号CVE-2017-5754。

  由于Meltdown和Spectre的攻击是针对CPU硬件的缺陷进行的攻击因此它们的攻击范围特别广存在于各种操作系统和云平台上。近20年的CPU/OS/VMM基本都受影响包括从云端到桌面到移动对业界产生巨大冲击。这一漏洞主要用于偷取隐私数据包括口令、证书和其他保密数据甚至完整的内存镜像。值得庆幸的是这些攻击不能修改数据。影响范围包括:

  a、CPU 处理器: 近二十年的 Intel、AMD、ARM 等处理器都有影响其中对 Intel 的处理器的影响尤为严重;

  b、操作系统: Windows、Linux、 Android、iOS和macOS等;

  c、虚拟机管理器:KVM, Xen等。

  本文主要关注Intel CPU Meltdown和Spectre在不同场景下的攻击以及缓解措施包括VMM和浏览器等场景。这些内容对AMD/ARM的攻防也有重要的借鉴价值。这些漏洞虽然影响广泛但利用复杂限制也很大。一方面由于防护措施都是有成本的本文给防护方提供一个指南可以根据自己的场景来选择必要的防护措施;另一方面我们希望通过本文缓解目前被夸大的恐慌情绪但本文也同时将指出一些没有被讨论过的组合攻击方式这些攻击将有比标准攻击更加强大的威力。因此防护方不能掉以轻心需要尽快部署相关防护措施。

  2. 攻击的场景

  Meltdown [4] 和Spectre [5]具体有三个变种:

  a、变种1 (V1) Spectre: 绕过边界检查 (CVE-2017-5753)

  b、变种2 (V2) Spectre: 分支预测注入 (CVE-2017-5715)

  c、变种3 (V3) Meltdown: 乱序执行的CPU缓存污染 (CVE-2017-5754)

  由于攻击的影响涉及了大量的云平台和操作系统我们就不单独罗列具体版本而是针对最典型的场景来描述如何防御这些攻击。

  典型的攻击场景

  a、对虚拟机管理器 VMM 的攻击(A1):攻击者在 VMM 管理的一个 VM 里 面该攻击者完全的控制这个 VM比如拥有这个VM kernel级别的权限可以直接与VMM进行交互。攻击者通过利用这些漏洞可以获取VMM的敏感数据或者获取同一物理主机下的其他VM内的数据;

  b、对操作系统内核的攻击(A2):攻击者是用户空间的一个应用程序拥有任意的代码执行能力。攻击者通过利用这些漏洞可以获取内核内的敏感数据甚至包括内核缓冲区的文件或者网络数据;

  浏览器对操作系统内核的攻击(A2w):攻击者只能通过网站页面影响浏览器发起攻击可以通过javascript或者web assembly等机制;

  c、对用户空间其他用户数据的攻击(A3):攻击者是用户空间的一个应用程序拥有任意的代码执行能力。攻击者通过利用这些漏洞获取同一操作系统下的其他进程的数据包括跨docker的攻击;

  浏览器对用户空间其他用户数据的攻击(A3w):攻击者只能通过网站页面影响浏览器发起攻击可以通过javascript或者web assembly等机制。

  V3c组合攻击

  原始的V3攻击将会产生page fault可以被kernel感知到从而可以通过host intrusion detectionsystem (HIDS)进行探测。传统上可以通过Intel TransactionalSynchronization Extensions (TSX)来截获异常避免产生kernel异常。然而由于TSX历史上的bug很多云端服务器并不开启TSX导致该方法并不普适。

  我们经过实验后发现可以将V3攻击置于V1/V2的预测执行路径上由于这是预测执行所以不会触发内核异常但该预测执行依然会触发cache加载操作。即V1/V2->V3的这种攻击方式可以完成V3攻击但不会触发kernel能感知的页面异常我们称之为V3c组合攻击。V3c组合攻击的发现意味着A2攻击场景下要抵抗V3攻击必须要打内核补丁。

  3. 攻击的防御与缓解

  针对上面的攻击场景我们把所有可行的解决方案归纳总结到表1里面。其中在云平台上面升级CPU微码需要VMM的协助用户在自己的VM里面无法完成除非VMM特别开放了这个功能。

  表1:对虚拟机监控器和操作系统内核的攻击评估和防御方法。“不能*”指的是攻击者无法直接攻击其他进程但是攻击者可以攻击内核获取数据来间接攻击(这个是A2)。

  防护措施都是有成本的防护方可以根据自己的场景来选择必要的防护措施。

  公有云VMM的运营者应该保障VMM不受恶意攻击即A1层面的防护是必须要做到的特别是V2攻击。使用Xen的厂商也要关注V3攻击的防御。

  云上租户可以根据自己的需求进行防护。由于A2.V3防护的KPTI补丁有较为明显的性能损耗所以如果云上租户在同一个VM内部没有数据敏感级别区隔百度快速排名超联SEO所以如果云上租户在同一个VM内部没有数据敏感级别区隔而且对性能要求较高那么可以继续使用原始内核。如果云上租户在同一个VM内部有多级数据敏感区隔而且可执行代码不固定并能接受额外的性能损耗那么推荐使用打了安全补丁的内核。

  对于普通PC用户最大的威胁来自于浏览器访问恶意网址以及感染上恶意代码。这些防护与传统PC安全没有太大的区别及时升级即可。

  了解跟多:

展开全部内容