InvisiSpec: Making Speculative Execution Invisible in the Cache Hierarchy
By Mengjia Yan, Jiho Choi, Dimitrios Skarlatos, Adam Morrison, Christopher W. Fletcher, Josep Torrellas. Micro, 2018
295 citations recorded by the source corpus.
Hardware speculation offers a major surface for micro-architectural covert and side channel attacks. Unfortunately, defending against speculative execution attacks is challenging. The reason is that speculations destined to be squashed execute incorrect instructions, outside the scope of what programmers and compilers reason about. Further, any change to micro-architectural state made by speculative execution can leak information. In this paper, we propose InvisiSpec, a novel strategy to defend against hardware speculation attacks in multiprocessors by making speculation invisible in the data cache hierarchy. InvisiSpec blocks micro-architectural covert and side channels through the multiprocessor data cache hierarchy due to speculative loads. In InvisiSpec, unsafe speculative loads read data into a speculative buffer, without modifying the cache hierarchy. When the loads become safe, InvisiSpec makes them visible to the rest of the system. InvisiSpec identifies loads that might have violated memory consistency and, at this time, forces them to perform a validation step. We propose two InvisiSpec designs: one to defend against Spectre-like attacks and another to defend against futuristic attacks, where any speculative load may pose a threat. Our simulations with 23 SPEC and 10 PARSEC workloads show that InvisiSpec is effective. Under TSO, using fences to defend against Spectre attacks slows down execution by 74% relative to a conventional, insecure processor; InvisiSpec reduces the execution slowdown to only 21%. Using fences to defend against futuristic attacks slows down execution by 208%; InvisiSpec reduces the slowdown to 72%.
Subfields: Artificial Intelligence, Electrical and Electronic Engineering, Materials Chemistry
View Paper: https://www.semanticscholar.org/paper/a684826100d94544157b94105059b0ab3d8837ad
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Mohammadkazem Taram
- Dean M. Tullsen
- Murali Annavaram
- Yongqin Wang
- Dawn Song
- Ashish Venkat
- Krste Asanovic
- David Kohlbrenner
In Electrical and Electronic Engineering
In Materials Chemistry
Citations in the corpus
- Keystone: an open framework for architecting trusted execution environments (2020, background): “Keystone allows the OS to DoS enclaves as the OS can refuse services to user applications at any time. retrofitted into Keystone [24, 91].”
- Privacy-Preserving Inference in Machine Learning Services Using Trusted Execution Environments (2019, methodology): “Techniques proposed in [35], [36] can be used to defend against bugs in speculative”
- Context-Sensitive Fencing: Securing Speculative Execution via Microcode Customization (2019, background): “On the hardware front, SafeSpec [53] and InvisiSpec [99] propose mitigating side effects of speculative execution by adding new shadow user-invisible structures for caches and TLBs that store transient results from speculative instructions, and committing them to main cache/TLB only if the speculati”