Provably correct runtime enforcement of non-interference properties

  • Authors:
  • V. N. Venkatakrishnan;Wei Xu;Daniel C. DuVarney;R. Sekar

  • Affiliations:
  • Department of Computer Science, University of Illinois at Chicago, Chicago, IL;Department of Computer Science, Stony Brook University, Stony Brook, NY;Department of Computer Science, Stony Brook University, Stony Brook, NY;Department of Computer Science, Stony Brook University, Stony Brook, NY

  • Venue:
  • ICICS'06 Proceedings of the 8th international conference on Information and Communications Security
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Non-interference has become the standard criterion for ensuring confidentiality of sensitive data in the information flow literature. However, application of non-interference to practical software systems has been limited. This is partly due to the imprecision that is inherent in static analyses that have formed the basis of previous non-interference based techniques. Runtime approaches can be significantly more accurate than static analysis, and have often been more successful in practice. However, they can only reason about explicit information flows that take place via assignments in a program. Implicit flows that take place without involving assignments, and can be inferred from the structure and/or semantics of the program, are missed by runtime techniques. This paper seeks to bridge the gap between the accuracy provided by runtime techniques and the completeness provided by static analysis techniques. In particular, we develop a hybrid technique that relies primarily on runtime information-flow tracking, but augments it with static analysis to reason about implicit flows that arise due to unexecuted paths in a program. We prove that the resulting technique preserves non-interference, while providing some of the traditional benefits of dynamic analysis such as improved accuracy.