Search papers, labs, and topics across Lattice.
This paper introduces an information flow logic tailored for unstructured programming languages, specifically focusing on x86 assembly with gotos. By employing a concept called reordering interference freedom (rif), the authors analyze the potential out-of-order propagation of instructions to memory, establishing a framework for reasoning about information flow security in persistent memory contexts. The key finding demonstrates that the rif approach can effectively extend traditional information flow reasoning to the unique challenges posed by persistent memory architectures.
Reordering interference freedom reveals critical vulnerabilities in information flow security for persistent memory systems that traditional methods overlook.
Persistent memory is a recently proposed memory paradigm that delivers many system-wide benefits, including improved runtime efficiency and the ability of programs to recover from power outages and system crashes. While recent research has investigated techniques for proving functional correctness of programs running on related architectures, this is not the case for the orthogonal concept of information flow security. In this paper, we provide an information flow logic for an unstructured language (i.e., with gotos rather than loops) modelling a simple assembly language. We apply this logic to x86 assembly using a notion of reordering interference freedom (rif) to reason about potential out-of-order propagation of instructions to memory. We then show how this same notion of rif can be used to similarly reason about information flow on persistent memory.