Skip to main content
QUICK REVIEW

[论文解读] Store-to-Leak Forwarding: Leaking Data on Meltdown-resistant CPUs

Michael Schwarz, Claudio Canella|arXiv (Cornell University)|May 14, 2019
Security and Verification in Computing参考文献 53被引用 23
一句话总结

本文表明,通过利用存储缓冲区和TLB进行侧信道数据泄露,Meltdown类攻击在现代、防Meltdown的CPU上依然可行。它展示了从用户空间和JavaScript环境中实际发起的攻击,可突破KASLR和ASLR保护,并在结合Spectre类漏洞利用代码后实现任意内存读取,证明即使在硬件层面已修复,软件防护措施对内核与用户空间隔离依然至关重要。

ABSTRACT

Meltdown and Spectre exploit microarchitectural changes the CPU makes during transient out-of-order execution. Using side-channel techniques, these attacks enable leaking arbitrary data from memory. As state-of-the-art software mitigations for Meltdown may incur significant performance overheads, they are only seen as a temporary solution. Thus, software mitigations are disabled on more recent processors, which are not susceptible to Meltdown anymore. In this paper, we show that Meltdown-like attacks are still possible on recent CPUs which are not vulnerable to the original Meltdown attack. We show that the store buffer---a microarchitectural optimization to reduce the latency for data stores---in combination with the TLB enables powerful attacks. We present several ASLR-related attacks, including a KASLR break from unprivileged applications, and breaking ASLR from JavaScript. We can also mount side-channel attacks, breaking the atomicity of TSX, and monitoring control flow of the kernel. Furthermore, when combined with a simple Spectre gadget, we can leak arbitrary data from memory. Our paper shows that Meltdown-like attacks are still possible, and software fixes are still necessary to ensure proper isolation between the kernel and user space.

研究动机与目标

  • 调查在不再易受原始Meltdown漏洞影响的现代CPU上,Meltdown类攻击是否仍然可行。
  • 探索微体系结构组件(如存储缓冲区和TLB)如何被滥用,以实现跨特权边界的数据泄露。
  • 展示利用微体系结构侧信道技术,从非特权用户应用程序中实际破坏内核地址空间布局随机化(KASLR)的攻击。
  • 评估结合存储转发(store-to-leak forwarding)与Spectre类漏洞利用代码,泄露任意内存内容的可行性。
  • 论证尽管硬件已修复,但由于微体系结构组件中仍存在持续的攻击向量,软件防护措施依然必要。

提出的方法

  • 利用在瞬态执行期间存储缓冲区的行为,将存储操作的数据转发至后续的加载操作,从而实现侧信道数据泄露。
  • 将存储缓冲区与转换旁路缓冲器(TLB)结合,观察内存访问模式并推断敏感数据。
  • 设计侧信道技术以监控内核控制流,并破坏Intel TSX(总存储执行)指令的原子性。
  • 构建一个恶意Spectre漏洞利用代码,当与存储转发技术结合时,可在内核内存中实现任意内存读取。
  • 在非特权用户空间应用程序和JavaScript执行环境中进行实验,以证明攻击在真实环境中的可利用性。
  • 使用计时侧信道测量技术提取内核基地址,从而破坏KASLR和ASLR保护。

实验结果

研究问题

  • RQ1在已针对原始Meltdown漏洞加固的CPU上,是否仍可发动Meltdown类攻击?
  • RQ2在现代处理器中,存储缓冲区和TLB在多大程度上可被用作侧信道数据泄露向量?
  • RQ3是否可能仅通过微体系结构侧信道,从非特权用户空间应用程序中破坏KASLR和ASLR?
  • RQ4是否可通过存储转发技术与计时分析,破坏TSX的原子性?
  • RQ5是否可通过结合存储转发技术与Spectre漏洞利用代码,从内核内存中泄露任意内存内容?

主要发现

  • 存储缓冲区与TLB可协同利用,对防Meltdown的CPU实施跨特权边界的侧信道攻击,实现数据泄露。
  • 仅通过计时侧信道测量,便成功从非特权用户空间应用程序中实际破坏了KASLR。
  • 在JavaScript执行环境中成功破坏了ASLR,证明了在基于Web的执行上下文中存在攻击面。
  • Intel的TSX原子性被破坏,可通过微体系结构侧信道观察到内核内部控制流。
  • 当与Spectre漏洞利用代码结合时,存储转发技术可实现从内核内存中任意读取内存内容,实质上使Meltdown类能力得以复活。
  • 研究结果表明,仅靠硬件缓解措施不足以保障安全,软件层面的防护仍对确保内核与用户空间隔离至关重要。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。