Revizor: Testing Black-box CPUs against Speculation Contracts
Oleksii Oleksenko, Christof Fetzer, Boris K\"opf, Mark Silberstein

TL;DR
Revizor is a novel testing framework that automatically detects speculative execution vulnerabilities in black-box CPUs by verifying compliance with speculation contracts, revealing known and unknown security issues.
Contribution
It introduces a model-based relational testing approach and implements it in Revizor to systematically identify microarchitectural leaks in commercial CPUs.
Findings
Revizor successfully detected Spectre, MDS, and LVI vulnerabilities.
It uncovered several previously unknown speculative execution variants.
The framework demonstrated effectiveness on real Intel x86 CPUs.
Abstract
Speculative vulnerabilities such as Spectre and Meltdown expose speculative execution state that can be exploited to leak information across security domains via side-channels. Such vulnerabilities often stay undetected for a long time as we lack the tools for systematic testing of CPUs to find them. In this paper, we propose an approach to automatically detect microarchitectural information leakage in commercial black-box CPUs. We build on speculation contracts, which we employ to specify the permitted side effects of program execution on the CPU's microarchitectural state. We propose a Model-based Relational Testing (MRT) technique to empirically assess the CPU compliance with these specifications. We implement MRT in a testing framework called Revizor, and showcase its effectiveness on real Intel x86 CPUs. Revizor automatically detects violations of a rich set of contracts, or…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSecurity and Verification in Computing · Advanced Malware Detection Techniques · Adversarial Robustness in Machine Learning
