Layout Randomization and Nondeterminism

In security, layout randomization is a popular, effective attack mitigation technique. Recent work has aimed to explain it rigorously, focusing on deterministic systems. In this paper, we study layout randomization in the presence of nondeterministic choice. We develop a semantic approach based on denotational models and the induced notions of contextual public observation, characterized by simulation relations. This approach abstracts from language details, and helps manage the delicate interaction between nondeterminism and probability. In particular, memory access probabilities are not independent, but rather depend on a fixed probability distribution over memory layouts; we therefore model probability using random variables rather than any notion of probabilistic powerdomain.

[1]  K. Hofmann,et al.  Continuous Lattices and Domains , 2003 .

[2]  Silvio Micali,et al.  Probabilistic Encryption , 1984, J. Comput. Syst. Sci..

[3]  Matthew Tobias Jackson,et al.  A SHEAF THEORETIC APPROACH TO MEASURE THEORY , 2006 .

[4]  Willem P. de Roever,et al.  Data Refinement: Model-oriented Proof Theories and their Comparison , 1998, Cambridge Tracts in Theoretical Computer Science.

[5]  Klaus Keimel,et al.  Semantic Domains for Combining Probability and Non-Determinism , 2005, Electronic Notes in Theoretical Computer Science.

[6]  Martín Abadi,et al.  On Protection by Layout Randomization , 2010, 2010 23rd IEEE Computer Security Foundations Symposium.

[7]  Fred B. Schneider,et al.  Independence from obfuscation: a semantic framework for diversity , 2006, 19th IEEE Computer Security Foundations Workshop (CSFW'06).

[8]  Martín Abadi,et al.  On Layout Randomization for Arrays and Functions , 2013, POST.

[9]  Fred B. Schneider,et al.  Proving Nondeterministically Specified Safety Properties Using Progress Measures , 1993, Inf. Comput..

[10]  Martín Abadi,et al.  The existence of refinement mappings , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[11]  Julian Rathke,et al.  Local Memory via Layout Randomization , 2011, 2011 IEEE 24th Computer Security Foundations Symposium.

[12]  Nancy A. Lynch,et al.  Analyzing Security Protocols Using Time-Bounded Task-PIOAs , 2008, Discret. Event Dyn. Syst..

[13]  Jean Goubault-Larrecq Prevision Domains and Convex Powercones , 2008, FoSSaCS.

[14]  David Sands,et al.  Probabilistic noninterference for multi-threaded programs , 2000, Proceedings 13th IEEE Computer Security Foundations Workshop. CSFW-13.

[15]  John C. Mitchell,et al.  A probabilistic poly-time framework for protocol analysis , 1998, CCS '98.

[16]  John C. Mitchell,et al.  A probabilistic polynomial-time process calculus for the analysis of cryptographic protocols , 2005, Theor. Comput. Sci..

[17]  Tsutomu Hoshino,et al.  The PAX project , 1992 .

[18]  Michael W. Mislove On Combining Probability and Nondeterminism , 2006, Electron. Notes Theor. Comput. Sci..

[19]  David H. Ackley,et al.  Building diverse computer systems , 1997, Proceedings. The Sixth Workshop on Hot Topics in Operating Systems (Cat. No.97TB100133).

[20]  Úlfar Erlingsson,et al.  Low-Level Software Security: Attacks and Defenses , 2007, FOSAD.

[21]  Martín Abadi,et al.  Layout Randomization and Nondeterminism , 2013, MFPS.