Detecting speculative leaks with compositional semantics
Xaver Fabian, Marco Guarnieri, Boris K\"opf, Jose F. Morales, Marco Patrignani, Jan Reineke, Andres Sanchez

TL;DR
This paper introduces a formal framework based on speculative non-interference to detect and analyze security leaks caused by speculative execution, and presents a tool called Spectector for practical vulnerability detection.
Contribution
It proposes a novel semantic security notion for speculative execution and develops a compositional analysis framework and tool for verifying program security against such leaks.
Findings
Spectector effectively detects speculative execution vulnerabilities.
The framework models complex interactions of multiple speculation mechanisms.
Evaluations show the approach's effectiveness on benchmarks and new vulnerabilities.
Abstract
Speculative execution enhances processor performance by predicting intermediate results and executing instructions based on these predictions. However, incorrect predictions can lead to security vulnerabilities, as speculative instructions leave traces in microarchitectural components that attackers can exploit. This is demonstrated by the family of Spectre attacks. Unfortunately, existing countermeasures to these attacks lack a formal security characterization, making it difficult to verify their effectiveness. In this paper, we propose a novel framework for detecting information flows introduced by speculative execution and reasoning about software defenses. The theoretical foundation of our approach is speculative non-interference (SNI), a novel semantic notion of security against speculative execution attacks. SNI relates information leakage observed under a standard non-speculative…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
