Computability classes for enforcement mechanisms

A precise characterization of those security policies enforceable by program rewriting is given. This also exposes and rectifies problems in prior work, yielding a better characterization of those security policies enforceable by execution monitors as well as a taxonomy of enforceable security policies. Some but not all classes can be identified with known classes from computational complexity theory.

[1]  Robert Wahbe,et al.  Efficient software-based fault isolation , 1994, SOSP '93.

[2]  Leslie Lamport,et al.  Proving the Correctness of Multiprocess Programs , 1977, IEEE Transactions on Software Engineering.

[3]  Jeffrey D. Ullman,et al.  Protection in operating systems , 1976, CACM.

[4]  Philip W. L. Fong Access control by tracking shallow execution history , 2004, IEEE Symposium on Security and Privacy, 2004. Proceedings. 2004.

[5]  Mahesh Viswanathan,et al.  Java-MaC: a Run-time Assurance Tool for Java Programs , 2001, RV@CAV.

[6]  Wouter Joosen,et al.  Non-functional Policies , 1999, Reflection.

[7]  Willis H Ware,et al.  Security Controls for Computer Systems , 1970 .

[8]  Jarred Adam Ligatti,et al.  More Enforceable Security Policies , 2002 .

[9]  Jonathan Rees,et al.  Revised3 report on the algorithmic language scheme , 1986, SIGP.

[10]  K. Gödel Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I , 1931 .

[11]  Andrew C. Myers,et al.  JFlow: practical mostly-static information flow control , 1999, POPL '99.

[12]  Mahesh Viswanathan,et al.  Foundations for the run-time analysis of software systems , 2000 .

[13]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[14]  Christopher Small MiSFIT: A Tool for Constructing Safe Extensible C++ Systems , 1997, COOTS.

[15]  George C. Necula,et al.  Proof-carrying code , 1997, POPL '97.

[16]  Peter Deutsch,et al.  A Flexible Measurement Tool for Software Systems , 1971, IFIP Congress.

[17]  Lujo Bauer,et al.  Enforcing Non-safety Security Policies with Program Monitors , 2005, ESORICS.

[18]  David E. Evans,et al.  Flexible policy-directed code safety , 1999, Proceedings of the 1999 IEEE Symposium on Security and Privacy (Cat. No.99CB36344).

[19]  George C. Necula,et al.  Safe kernel extensions without run-time checking , 1996, OSDI '96.

[20]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[21]  Carey Nachenberg,et al.  Computer virus-antivirus coevolution , 1997, Commun. ACM.

[22]  George C. Necula,et al.  The design and implementation of a certifying compiler , 1998, PLDI.

[23]  Úlfar Erlingsson,et al.  IRM enforcement of Java stack inspection , 2000, Proceeding 2000 IEEE Symposium on Security and Privacy. S&P 2000.

[24]  K. Gödel Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I , 1931 .

[25]  Benedict G. E. Wiedemann Protection? , 1998, Science.

[26]  Úlfar Erlingsson,et al.  SASI enforcement of security policies: a retrospective , 1999, NSPW '99.

[27]  James P Anderson,et al.  Computer Security Technology Planning Study , 1972 .

[28]  Úlfar Erlingsson,et al.  SASI enforcement of security policies: a retrospective , 1999, Proceedings DARPA Information Survivability Conference and Exposition. DISCEX'00.

[29]  Fred B. Schneider,et al.  Enforceable security policies , 2000, TSEC.

[30]  Karl Crary,et al.  From system F to typed assembly language , 1999 .

[31]  A. Turing On Computable Numbers, with an Application to the Entscheidungsproblem. , 1937 .

[32]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[33]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[34]  Lujo Bauer,et al.  Edit automata: enforcement mechanisms for run-time security policies , 2005, International Journal of Information Security.

[35]  Frank Yellin,et al.  The Java Virtual Machine Specification , 1996 .