Open AccessPosted Content
Spectre Attacks: Exploiting Speculative Execution
Paul C. Kocher,Daniel Genkin,Daniel Gruss,Werner Haas,Mike Hamburg,Moritz Lipp,Stefan Mangard,Thomas Prescher,Michael Schwarz,Yuval Yarom +9 more
Reads0
Chats0
TLDR
This paper describes practical attacks that combine methodology from side channel attacks, fault attacks, and return-oriented programming that can read arbitrary memory from the victim's process that violate the security assumptions underpinning numerous software security mechanisms.Abstract:Â
Modern processors use branch prediction and speculative execution to maximize performance. For example, if the destination of a branch depends on a memory value that is in the process of being read, CPUs will try guess the destination and attempt to execute ahead. When the memory value finally arrives, the CPU either discards or commits the speculative computation. Speculative logic is unfaithful in how it executes, can access to the victim's memory and registers, and can perform operations with measurable side effects.
Spectre attacks involve inducing a victim to speculatively perform operations that would not occur during correct program execution and which leak the victim's confidential information via a side channel to the adversary. This paper describes practical attacks that combine methodology from side channel attacks, fault attacks, and return-oriented programming that can read arbitrary memory from the victim's process. More broadly, the paper shows that speculative execution implementations violate the security assumptions underpinning numerous software security mechanisms, including operating system process separation, static analysis, containerization, just-in-time (JIT) compilation, and countermeasures to cache timing/side-channel attacks. These attacks represent a serious threat to actual systems, since vulnerable speculative execution capabilities are found in microprocessors from Intel, AMD, and ARM that are used in billions of devices.
While makeshift processor-specific countermeasures are possible in some cases, sound solutions will require fixes to processor designs as well as updates to instruction set architectures (ISAs) to give hardware architects and software developers a common understanding as to what computation state CPU implementations are (and are not) permitted to leak.read more
Citations
More filters
Posted Content
Slalom: Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware
Florian Tramèr,Dan Boneh +1 more
TL;DR: Slalom as mentioned in this paper is a framework that securely delegates execution of all linear layers in a DNN from a TEE to a faster, yet untrusted, co-located processor.
Proceedings ArticleDOI
SgxPectre Attacks: Stealing Intel Secrets from SGX Enclaves via Speculative Execution
TL;DR: SgxPectre attacks as mentioned in this paper exploit the recently disclosed CPU bugs to subvert the confidentiality and integrity of SGX enclaves by modifying the control flow of enclave programs to execute instructions that lead to observable cache-state changes.
Proceedings ArticleDOI
Grand Pwning Unit: Accelerating Microarchitectural Attacks with the GPU
TL;DR: It is shown that an attacker can build all the necessary primitives for performing effective GPU-based microarchitectural attacks and that these primitives are all exposed to the web through standardized browser extensions, allowing side-channel and Rowhammer attacks from JavaScript.
Posted Content
Spectre Returns! Speculation Attacks using the Return Stack Buffer
TL;DR: SpectreRSB as discussed by the authors exploits the return stack buffer (RSB), a common predictor structure in modern CPUs used to predict return addresses, and attacks on SGX are possible by constructing proof-of-concept attacks.
Posted Content
ECDSA Key Extraction from Mobile Devices via Nonintrusive Physical Side Channels.
TL;DR: In this paper, the authors show that elliptic-curve cryptography implementations on mobile devices are vulnerable to electromagnetic and power side-channel attacks using a simple magnetic probe placed in proximity to the device, or a power probe on the phone's USB cable.
References
More filters
Book ChapterDOI
Predicting secret keys via branch prediction
TL;DR: A new software side-channel attack enabled by the branch prediction capability common to all modern high-performance CPUs, which allows an unprivileged process to attack other processes running in parallel on the same processor, despite sophisticated partitioning methods such as memory protection, sandboxing or even virtualization.
Book ChapterDOI
New branch prediction vulnerabilities in openSSL and necessary software countermeasures
TL;DR: In this article, Simple Branch Prediction Analysis (SBPA) is used to extract secret parameters during the execution of the Binary Extended Euclidean (BEE) algorithm, which is another type of micro-architectural analysis.
Related Papers (5)
FLUSH+RELOAD: a high resolution, low noise, L3 cache side-channel attack
Yuval Yarom,Katrina Falkner +1 more