SecurePtrs: Proving Secure Compilation with Data-Flow Back-Translation and Turn-Taking Simulation
Akram El-Korashy, Roberto Blanco, J\'er\'emy Thibault, Adrien Durier,, Deepak Garg, and Catalin Hritcu

TL;DR
This paper introduces data-flow traces and turn-taking simulation techniques to simplify and strengthen proofs of secure compilation, especially in scenarios involving unstructured control flow and shared memory, with formal verification in Coq.
Contribution
It presents a novel data-flow trace method combining syntax- and trace-directed back-translation, and a new turn-taking simulation relation with a recomposition lemma, both mechanized in Coq.
Findings
Data-flow traces effectively handle syntactic dissimilarity and memory sharing.
The turn-taking simulation enables proof reuse in secure compilation.
Mechanized proofs demonstrate correctness for complex control flow and memory sharing.
Abstract
Proving secure compilation of partial programs typically requires back-translating an attack against the compiled program to an attack against the source program. To prove back-translation, one can syntactically translate the target attacker to a source one -- i.e., syntax-directed back-translation -- or show that the interaction traces of the target attacker can also be emitted by source attackers -- i.e., trace-directed back-translation. Syntax-directed back-translation is not suitable when the target attacker may use unstructured control flow that the source language cannot directly represent. Trace-directed back-translation works with such syntactic dissimilarity because only the external interactions of the target attacker have to be mimicked in the source, not its internal control flow. Revealing only external interactions is, however, inconvenient when sharing memory via…
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 · Cloud Data Security Solutions
