A semantic approach to secure information flow

Citation
R. Joshi et Krm. Leino, A semantic approach to secure information flow, SCI COMP PR, 37(1-3), 2000, pp. 113-138
Citations number
20
Categorie Soggetti
Computer Science & Engineering
Journal title
SCIENCE OF COMPUTER PROGRAMMING
ISSN journal
01676423 → ACNP
Volume
37
Issue
1-3
Year of publication
2000
Pages
113 - 138
Database
ISI
SICI code
0167-6423(200005)37:1-3<113:ASATSI>2.0.ZU;2-N
Abstract
A classic problem in security is that of checking that a program has secure information flow. informally, this problem is described as follows: Given a program with variables partitioned into mio disjoint sets of "high-securi ty" and "low-security" variables, check whether observations of the low-sec urity variables reveal any information about the initial values of the high -security variables. Although the problem has been studied for serveral dec ades, most previous approaches have been syntactic in nature, often using t ype systems and compiler data flow analysis techniques to analyze program t exts. This paper presents a considerably different approach to check secure information flow, based on a semantic characterization. A semantic approac h has several desirable features. Firstly, it gives a more precise characte rization of security than that provided by most previous approaches. Second ly, it applies to any programming constructs whose semantics are definable; for instance, the introduction of nondeterminism and exceptions poses no a dditional problems. Thirdly, it can be used for reasoning about indirect le aking of information through variations in program behavior (e.g., whether or not the program terminates). Finally, it can be extended to the case whe re the high- and low-security variables are defined abstractly, as function s of actual program variables. The paper illustrates the use of the charact erization with several examples and discusses how it can be applied in prac tice. (C) 2000 Elsevier Science B.V. All rights reserved.