Formally Secure Compilation of Unsafe Low-Level Components (Extended Abstract)

10/19/2017
by   Guglielmo Fachini, et al.
0

We propose a new formal criterion for secure compilation, providing strong security guarantees for components written in unsafe, low-level languages with C-style undefined behavior. Our criterion goes beyond recent proposals, which protect the trace properties of a single component against an adversarial context, to model dynamic compromise in a system of mutually distrustful components. Each component is protected from all the others until it receives an input that triggers an undefined behavior, causing it to become compromised and attack the remaining uncompromised components. To illustrate this model, we demonstrate a secure compilation chain for an unsafe language with buffers, procedures, and components, compiled to a simple RISC abstract machine with built-in compartmentalization. The protection guarantees offered by this abstract machine can be achieved at the machine-code level using either software fault isolation or tag-based reference monitoring. We are working on machine-checked proofs showing that this compiler satisfies our secure compilation criterion.

READ FULL TEXT

page 1

page 2

research
02/02/2018

When Good Components Go Bad: Formally Secure Compilation Despite Dynamic Compromise

We propose a new formal criterion for secure compilation, giving strong ...
research
04/02/2018

Robustly Safe Compilation or, Efficient, Provably Secure Compilation

Secure compilers generate compiled code that withstands many target- lev...
research
07/12/2018

Exploring Robust Property Preservation for Secure Compilation

Good programming languages provide helpful abstractions for writing more...
research
02/03/2018

Software Fault Isolation for Robust Compilation

Memory corruption vulnerabilities are endemic to unsafe languages, such ...
research
12/18/2020

Towards Formally Verified Compilation of Tag-Based Policy Enforcement

Hardware-assisted reference monitoring is receiving increasing attention...
research
06/26/2020

The Fox and the Hound: Comparing Fully Abstract and Robust Compilation

We prove a theorem relating fully abstract compilation (FAC) to robust c...
research
10/19/2017

Robust Hyperproperty Preservation for Secure Compilation (Extended Abstract)

We map the space of soundness criteria for secure compilation based on t...

Please sign up or login with your details

Forgot password? Click here to reset