ReViCe: Reusing Victim Cache to Prevent Speculative Cache Leakage

ReViCe: Reusing Victim Cache to Prevent Speculative Cache Leakage
复制标题

DOI:
10.1109/secdev45635.2020.00029
复制
发表时间:
2020-09
期刊:
2020 IEEE Secure Development (SecDev)
影响因子:
--
通讯作者:
Sungkeun Kim;Farabi Mahmud;Jiayi Huang-;Pritam Majumder;Neophytos Christou;A. Muzahid;Chia-che Tsai;Eun Jung Kim
Sungkeun Kim;Farabi Mahmud;Jiayi Huang-;Pritam Majumder;Neophytos Christou;A. Muzahid;Chia-che Tsai;Eun Jung Kim
中科院分区:
其他
文献类型:
--
作者:
Sungkeun Kim;Farabi Mahmud;Jiayi Huang-;Pritam Majumder;Neophytos Christou;A. Muzahid;Chia-che Tsai;Eun Jung Kim

文献摘要

被引文献

相似文献

Spectre 和 Meltdown 攻击揭示了推测执行的危险,这是现代处理器中使用的一种普遍技术。本文提出了 ReViCe,一种减轻基于推测的攻击的硬件技术。 ReViCe 允许推测性加载提前更新缓存,但将任何替换的行保留在受害者缓存中。如果发生错误推测,受害者缓存中的替换行将用于恢复缓存,从而防止任何基于缓存的 Spectre 和 Meltdown 攻击。此外,ReViCe 注入抖动来隐藏由于推测线路而导致的任何时序差异。推测恢复和抖动注入一起使 ReViCe 能够确保推测执行的安全。我们遵循一组安全原则提出 ReViCe 的设计,并基于利用各种 Spectre 变体和缓存侧通道的共享核心和跨核心攻击来评估其安全性。我们的方案会产生 2-6% 的性能开销。这低于最先进的硬件方法。此外,ReViCe 以最小的面积和能源开销(分别为 0.06% 和 0.02%)实现了这些结果。
Spectre and Meltdown attacks reveal the perils of speculative execution, a prevalent technique used in modern processors. This paper proposes ReViCe, a hardware technique to mitigate speculation based attacks. ReViCe allows speculative loads to update caches early but keeps any replaced line in the victim cache. In case of misspeculation, replaced lines from the victim cache are used to restore the caches, thereby preventing any cache-based Spectre and Meltdown attacks. Moreover, ReViCe injects jitter to conceal any timing difference due to speculative lines. Together speculation restoration and jitter injection allow ReViCe to make speculative execution secure. We present the design of ReViCe following a set of security principles and evaluate its security based on shared-core and cross-core attacks exploiting various Spectre variants and cache side channels. Our scheme incurs 2-6% performance overhead. This is less than the state-of-the-art hardware approaches. Moreover, ReViCe achieves these results with minimal area and energy overhead (0.06% and 0.02% respectively).