[论文解读] Store-to-Leak Forwarding: Leaking Data on Meltdown-resistant CPUs (Updated and Extended Version)
本文展示了即使在经过熔毁(Meltdown)防护的现代CPU上,通过一种名为Store-to-Leak Forwarding的新技术,熔毁类侧通道攻击依然可行。该技术利用存储缓冲区和TLB泄露内核与用户空间内存。攻击在42微秒内破坏KASLR,并可从JavaScript和Intel SGX飞地泄露任意数据,证明即便硬件修复后,软件缓解措施依然至关重要。
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 ASLRrelated 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. This updated extended version of the original paper includes new results and explanations on the root cause of the vulnerability and shows how it is different to MDS attacks like Fallout.
研究动机与目标
- 调查经过修补以抵御原始熔毁漏洞的CPU上,熔毁类攻击是否仍具可行性。
- 分析存储缓冲区的微架构副作用及其与TLB的交互作用,以实现数据泄露。
- 展示如何实际利用这些侧通道破坏内核ASLR并绕过隔离机制。
- 评估现有软件缓解措施(如KAISER)在面对此新攻击向量时的有效性。
- 证明即使硬件修复已到位,用户空间与内核空间之间的软件隔离依然必要。
提出的方法
- 利用存储缓冲区中的存储到加载转发机制,创建隐蔽通道以实现数据外泄。
- 结合存储缓冲区行为与TLB状态变化,泄露元数据并破坏TSX的原子性。
- 利用推测执行和现有的Spectre v1利用代码,触发并放大数据泄露。
- 设计侧通道计时攻击,测量微架构状态变化并推断秘密值。
- 从非特权用户应用程序和JavaScript中实现攻击,证明其在现实环境中的可行性。
- 在现代Intel CPU(如Whiskey Lake、Coffee Lake)上验证该攻击,这些CPU被认为具备熔毁防护能力。
实验结果
研究问题
- RQ1在被认为对原始熔毁漏洞具备防护能力的CPU上,是否仍可发动熔毁类攻击?
- RQ2除推测执行外,哪些微架构组件可启用新的侧通道?
- RQ3存储缓冲区与TLB在多大程度上可被利用以泄露内核和用户空间内存?
- RQ4能否使用该技术在实际时间范围内破坏KASLR和ASLR?
- RQ5现有的软件缓解措施(如KAISER)是否足以防止此类攻击?
主要发现
- 该攻击在完全修补的Intel CPU上仅用42微秒即破坏KASLR,证明其为一种高效侧通道。
- 研究人员成功通过非特权用户应用程序利用Store-to-Leak Forwarding机制泄露内核内存。
- 该攻击可从JavaScript中破坏ASLR,对基于Web的隔离构成严重威胁。
- 该技术还可用于监控内核控制流,并破坏Intel TSX(总存储缓冲区)事务的原子性。
- 当与Spectre v1利用代码结合时,该攻击可在现实且实用的场景中泄露任意内核内存。
- 本研究证明,熔毁的硬件修复措施不足,软件隔离在安全方面依然必不可少。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。