oo7: Low-overhead Defense against Spectre Attacks via Program Analysis
Guanhua Wang, Sudipta Chattopadhyay, Ivan Gotovchits, Tulika Mitra,, Abhik Roychoudhury

TL;DR
oo7 is a static analysis tool that detects and patches Spectre-vulnerable code snippets in binaries, effectively reducing side-channel risks with minimal performance overheads.
Contribution
The paper introduces oo7, a static analysis approach that accurately detects all known Spectre-vulnerable patterns and patches them efficiently in real-world binaries.
Findings
Detects all 15 Spectre-vulnerable code patterns
Achieves around 5.9% performance overhead on benchmarks
Successfully applied to over 500 real-world binaries
Abstract
The Spectre vulnerability in modern processors has been widely reported. The key insight in this vulnerability is that speculative execution in processors can be misused to access the secrets. Subsequently, even though the speculatively executed instructions are squashed, the secret may linger in micro-architectural states such as cache, and can potentially be accessed by an attacker via side channels. In this paper, we propose oo7, a static analysis approach that can mitigate Spectre attacks by detecting potentially vulnerable code snippets in program binaries and protecting them against the attack by patching them. Our key contribution is to balance the concerns of effectiveness, analysis time and run-time overheads. We employ control flow extraction, taint analysis, and address analysis to detect tainted conditional branches and speculative memory accesses. oo7 can detect all fifteen…
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 · Parallel Computing and Optimization Techniques · Radiation Effects in Electronics
