Foreshadow: Extracting the Keys to the Intel SGX Kingdom with Transient Out-of-Order Execution presented at 27thUsenixSecuritySymposium 2018

by Raoul Strackx, Frank Piessens, Baris Kasikci, Daniel Genkin, Yuval Yarom, Ofir Weisse, Mark Silberstein, Thomas F. Wenisch, Jo Van Bulck, Marina Minkin,

URL : https://www.usenix.org/conference/usenixsecurity18/presentation/bulck

Summary : Trusted execution environments, and particularly the Software Guard eXtensions (SGX) included in recent Intel x86 processors, gained significant traction in recent years. A long track of research papers, and increasingly also real-world industry applications, take advantage of the strong hardware-enforced confidentiality and integrity guarantees provided by Intel SGX. Ultimately, enclaved execution holds the compelling potential of securely offloading sensitive computations to untrusted remote platforms.We present Foreshadow, a practical software-only microarchitectural attack that decisively dismantles the security objectives of current SGX implementations. Crucially, unlike previous SGX attacks, we do not make any assumptions on the victim enclave’s code and do not necessarily require kernel-level access. At its core, Foreshadow abuses a speculative execution bug in modern Intel processors, on top of which we develop a novel exploitation methodology to reliably leak plaintext enclave secrets from the CPU cache. We demonstrate our attacks by extracting full cryptographic keys from Intel’s vetted architectural enclaves, and validate their correctness by launching rogue production enclaves and forging arbitrary local and remote attestation responses. The extracted remote attestation keys affect millions of devices.