Spectre Attacks: Exploiting Speculative Execution
Open accessAbstract
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.
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
Monocultures often yield poor societal resilience and are susceptible to widespread systemic risk, as illustrated by Meltdown and Spectre attacks due to widespread dependence on Intel and ARM-based microprocessors.
“Monocultures often yield poor societal resilience and are susceptible to widespread systemic risk: consider the Meltdown and Spectre attacks, which led to massive security risks because of the widespread dependence on Intel and ARM-based microprocessors (Kocher et al., 2018;Lipp et al., 2018;Staff, 2018).”
From On the Societal Impact of Open Foundation Models (2024) · cites this paper as Kocher et al., 2018
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Cites
No references could be resolved yet.
Research works printed but not linked: 19
- O. Acıic ¸mez, S. Gueron, and J.-P. Seifert, "New Branch Prediction Vulnerabilities in OpenSSL and Necessary Software Countermeasures," in International Conference on Cryptography and Coding (IMA), 2007.
- Aleph One, "Smashing the stack for fun and profit," Phrack, vol. 49, 1996.
- C. Disselkoen, D. Kohlbrenner, L. Porter, and D. M. Tullsen, "Prime+Abort: A Timer-Free High-Precision L3 Cache Attack using Intel TSX," in USENIX Security Symposium, 2017.
- Q. Ge, Y. Yarom, and G. Heiser, "Your Processor Leaks Information -and There's Nothing You Can Do About It," arXiv:1612.04474, 2017. · arXiv
- Q. Ge, Y. Yarom, D. Cock, and G. Heiser, "A survey of microarchitectural timing attacks and countermeasures on contemporary hardware," J. Cryptographic Engineering, vol. 8, no. 1, pp. 1-27, 2018.
- D. Genkin, L. Pachmanov, I. Pipman, A. Shamir, and E. Tromer, "Physical key extraction attacks on PCs," Commun. ACM, vol. 59, no. 6, pp. 70-79, 2016.
- B. Gras, K. Razavi, E. Bosman, H. Bos, and C. Giuffrida, "ASLR on the Line: Practical Cache Attacks on the MMU," in NDSS, 2017.
- D. Gruss, R. Spreitzer, and S. Mangard, "Cache Template Attacks: Automating Attacks on Inclusive Last-Level Caches," in USENIX Security Symposium, 2015.
- Y. Kim, R. Daly, J. Kim, C. Fallin, J. H. Lee, D. Lee, C. Wilkerson, K. Lai, and O. Mutlu, "Flipping bits in memory without accessing them: An experimental study of DRAM disturbance errors," in ISCA, 2014.
- P. Kocher, J. Jaffe, B. Jun, and P. Rohatgi, "Introduction to differential power analysis," J. Cryptographic Engi- neering, vol. 1, no. 1, pp. 5-27, 2011.
- S. Lee, M. Shih, P. Gera, T. Kim, H. Kim, and M. Peinado, "Inferring Fine-grained Control Flow Inside SGX Enclaves with Branch Shadowing," in USENIX Security Symposium, 2017.
- M. Lipp, D. Gruss, R. Spreitzer, C. Maurice, and S. Man- gard, "ARMageddon: Cache Attacks on Mobile Devices," in USENIX Security Symposium, 2016.
- M. Lipp, M. Schwarz, D. Gruss, T. Prescher, W. Haas, A. Fogh, J. Horn, S. Mangard, P. Kocher, D. Genkin, Y. Yarom, and M. Hamburg, "Meltdown: Reading Kernel Memory from User Space," in USENIX Security Sympo- sium (to appear), 2018.
- S. McCanne and V. Jacobson, "The BSD Packet Filter: A New Architecture for User-level Packet Capture," in USENIX Winter, 1993.
- M. S. Papamarcos and J. H. Patel, "A Low-overhead Co- herence Solution for Multiprocessors with Private Cache Memories," in ISCA, 1984.
- C. Percival, "Cache missing for fun and profit," in Proceedings of BSDCan, 2005. [Online]. Available: https://www.daemonology.net/papers/htt.pdf
- P. Pessl, D. Gruss, C. Maurice, M. Schwarz, and S. Mangard, "DRAMA: Exploiting DRAM Addressing for Cross-CPU Attacks," in USENIX Security Sympo- sium, 2016.
- A. Tang, S. Sethumadhavan, and S. Stolfo, "CLKSCREW: Exposing the Perils of Security- Oblivious Energy Management," in USENIX Security Symposium, 2017.
- Y. Yarom and K. Falkner, "Flush+Reload: A High Res- olution, Low Noise, L3 Cache Side-Channel Attack," in USENIX Security Symposium, 2014.
Cited by
Sorted by citations
On the Societal Impact of Open Foundation Models
Kapoor, S., Bommasani, R., Klyman, K., Longpre, S., Ramaswami, A., Cihon, P., Hopkins, A., Bankston, K., Biderman, S., Bogen, M., et al. (2024) · arXiv · doi:10.48550/arxiv.2403.07918 · Cited by 11 · see citing works
- Authors
- Kocher, P., Genkin, D., Gruss, D., Haas, W., Hamburg, M., Lipp, M., Mangard, S., Prescher, T., Schwarz, M., & Yarom, Y.
- Affiliations
- University of Pennsylvania (US)
- Graz University of Technology (AT)
- Rambus (United Kingdom) (GB)
- Data61 (AU)
- Venue
- arXiv
- Publisher
- arXiv
- Published
- 2018
- Pages
- 1-19
- ISSN
- 1081-6011 (ISSN-L)
- arXiv
- 1801.01203
- OpenAlex
- W2781723315
- Cited by
- 1,850
- References
- 0
- Citations by year
- 2026: 89 · 2025: 147 · 2024: 173 · 2023: 175 · 2022: 232 · 2021: 320 · 2020: 290 · 2019: 279 · 2018: 141 · 2017: 1 · 2012: 3
- FWCI
- 107.22
- Type
- conference paper
- Language
- en
- Open access
- bronze
- doi.org
- Locations
- IEEE Symposium on Security and Privacy (S&P) (publishedVersion)
- arXiv (Cornell University) (submittedVersion)
- arXiv (Cornell University)
- Funders
- National Science Foundation (2017-2018, 1652259, 1514261)
- U.S. Department of Commerce
- European Commission (HORIZON2020)
- National Institute of Standards and Technology (70NANB15H328)
- Defense Advanced Research Projects Agency (FA8650-16-C-7622)
- H2020 European Research Council (681402)
- Topics
- Physical Sciences › Computer Science › Artificial Intelligence › Security and Verification in Computing
- Physical Sciences › Computer Science › Artificial Intelligence › Cryptographic Implementations and Security
- Physical Sciences › Computer Science › Hardware and Architecture › Parallel Computing and Optimization Techniques
- Keywords
- Spectre attacks, speculative execution, branch prediction, side-channel attacks, return-oriented programming, fault injection attacks, memory leakage, process isolation, containerization, just-in-time compilation, cache timing attacks, processor security, instruction set architecture, hardware countermeasures
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review