SPECTECTOR: Principled Detection of Speculative Information Flows

12/20/2018
by   Marco Guarnieri, et al.
0

Since the advent of SPECTRE, a number of countermeasures have been proposed and deployed. Rigorously reasoning about their effectiveness, however, requires a well-defined notion of security against speculative execution attacks, which has been missing until now. We present a novel, principled approach for reasoning about software defenses against SPECTRE-style attacks. Our approach builds on speculative non-interference, the first semantic notion of security against speculative execution attacks. We develop SPECTECTOR, an algorithm based on symbolic execution for automatically proving speculative non-interference, or detecting violations. We implement SPECTECTOR in a tool, and we use it to detect subtle leaks -- and optimizations opportunities -- in the way major compilers place SPECTRE countermeasures.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/17/2020

New Models for Understanding and Reasoning about Speculative Execution Attacks

Spectre and Meltdown attacks and their variants exploit hardware perform...
research
08/05/2019

How to Kill Symbolic Deobfuscation for Free; or Unleashing the Potential of Path-Oriented Protections

Code obfuscation is a major tool for protecting software intellectual pr...
research
11/24/2022

Specognitor: Identifying Spectre Vulnerabilities via Prediction-Aware Symbolic Execution

Spectre attacks exploit speculative execution to leak sensitive informat...
research
08/31/2021

Cats vs. Spectre: An Axiomatic Approach to Modeling Speculative Execution Attacks

The Spectre family of speculative execution attacks have required a reth...
research
07/21/2023

Augmented Symbolic Execution for Information Flow in Hardware Designs

We present SEIF, a methodology that combines static analysis with symbol...
research
06/07/2021

QFuzz: Quantitative Fuzzing for Side Channels

Side channels pose a significant threat to the confidentiality of softwa...
research
10/05/2020

Automated Reasoning and Detection of Specious Configuration in Large Systems with Symbolic Execution

Misconfiguration is a major cause of system failures. Prior solutions fo...

Please sign up or login with your details

Forgot password? Click here to reset