首页 > 电脑办公 > 正文

幽灵漏洞Spectre1.1变种 源于投机执行与缓冲区溢出

来自麻省理工的 Vladimir Kiriansky 和咨询公司 Carl Waldspurger 的两位安全研究人员,刚刚发布了一篇揭露臭名昭著的“幽灵”(Spectre)安全漏洞新变种的论文,因其会产生投机性的缓冲区溢出。 论文中,两人解释了他们新发现的这个变种(Spectre 1.1 / CVE-2018-3693)可以如何攻击和防御。

对于处理器厂商来说,年初被曝光的该漏洞、以及后续陆续出现的多个其它变种,着实令业界感到头疼。 而最新的 Spectre 1.1 漏洞,则利用了投机性的缓冲区溢出。

与经典的缓冲区溢出安全漏洞类似,Spectre 1.1 又被称作‘边界检查绕过存储’(简称 BCBS),将其与最原始的投机性执行攻击区分开来。

研究人员考虑将新变种归于 Spectre V1 家族的一个微小版本:

其在投机性执行窗口中使用了相同的开口(即有条件分支投机),但 Spectre 1.1 还是影响了数十亿的现代处理器(波及 Intel 和 AMD)。

研究人员称,预测缓冲区溢出使得 本地攻击者可以在脆弱的系统上执行任意不受信任的代码。

通过边际信道分析(side-channel analysis)和投机缓冲区溢出(speculative buffer overflow),它可利用微处理器的投机性执行和分支预测来暴露敏感信息。

通过直接或重定向控制流,数据值攻击可以绕过一些 Spectre-v1 的缓解补丁。

控制流攻击允许任意投机代码的执行,它可以绕过栅栏指令和此前所有针对预测执行攻击的软件补救措施。


更可怕的是,研究人员还指出了所谓的 Spectre 1.2 漏洞!

作为幽灵漏洞的另一个小变体,其影响那些不会强行读/写保护和依赖于懒惰的 PTE 强制执行的处理器。

在一场 Spectre 1.2 攻击中, 被允许的投机存储可覆写只读的数据、代码指针、以及代码元数据 :

其包括 vtables、GOT / IAT、以及控制流缓解元数据,结果就是依赖于只读存储器的硬件执行沙箱都被无效化了。

研究人员已经在英特尔 x86 和 ARM 处理器上验证了 Spectre 1.1 和 Spectre 1.2 攻击:

对于 Spectre 1.1,推荐采取 SLoth 家族微架构缓解方案。对于芯片制造商来说,可在未来的处理器上部署所谓的‘流氓数据缓存存储’保护特性。

尽管研究人员认为通过处理器微代码更新即可完全缓解 Spectre 1.1 漏洞,但英特尔还是建议用户和操作系统供应商部署安全补丁,以应对在可预见的将来会出现的一些新变种。

网友评论

三日内热门评论文章
热门IT产品
  1. ¥7599
    苹果iPhoneX 64GB
    ·
  2. ¥5799
    三星S9
    ·
  3. ¥4498
    vivo NEX旗舰版
    ·
  4. ¥4999
    OPPO Find X
    ·
  5. ¥1799
    努比亚Z18mini
    ·
  6. ¥1499
    OPPO A5
    ·
  7. ¥1999
    荣耀Play(4GB RAM)
    ·
  8. ¥1598
    vivo Y85
    ·
  9. ¥3499
    坚果R1(6GB RAM)
    ·
  10. ¥3599
    一加6(8GB RAM)
    ·
为您推荐
  • 相关阅读
  • 业界资讯
  • 手机通讯
  • 电脑办公
  • 新奇数码
  • 软件游戏
  • 科学探索