Secure Programming as a Parity Game

dc.contributor.authorHarris, William R.en_US
dc.contributor.authorFarley, Benjaminen_US
dc.contributor.authorJha, Someshen_US
dc.contributor.authorReps, Thomasen_US
dc.date.accessioned2012-03-15T17:25:43Z
dc.date.available2012-03-15T17:25:43Z
dc.date.created2011en_US
dc.date.issued2011en_US
dc.description.abstractTraditionally, reference monitors have been used both to specify a policy of secure behaviors of an application, and to ensure that an application satisfies its specification. However, for recently proposed privilege-aware systems, applications satisfy a policy defined over a set of security-sensitive events by invoking explicitly a separate set of primitive operations provided by the system. To date, a programmer who writes an application for such a system both defines and implements a policy using the low-level primitives. While the programmer may have a high-level policy in mind, it is difficult for him to ensure that the application calls the primitives in such a way that it satisfies the policy. It is also difficult for him to ensure that he does not call the primitives in such a way that it cripples the program's original functionality. In this paper, we formalize the problem of writing programs for privilege-aware systems, and make significant steps toward solving the problem, using an automata-theoretic approach. First, we distinguish between the high-level policies supported by a privilege-aware system and the low-level primitives provided to enforce policies. Second, we define the policy-weaving problem, which is to take as input (1) a declarative description of a privilege-aware system, (2) a program that makes no use of the primitives provided by the system, and (3) a high-level policy that describes the program's security and functionality requirements, and produce as output a program that uses the primitives of the privilege-aware system to satisfy the high-level policy. We reduce important subclasses of the weaving problem to finding strategies to parity games. Finally, we formalize the Capsicum capability system, demonstrating that the problem of writing secure programs for a practical privilege-aware system can be described as a policy-weaving problem.en_US
dc.format.mimetypeapplication/pdfen_US
dc.identifier.citationTR1694en_US
dc.identifier.urihttp://digital.library.wisc.edu/1793/60744
dc.publisherUniversity of Wisconsin-Madison Department of Computer Sciencesen_US
dc.titleSecure Programming as a Parity Gameen_US
dc.typeTechnical Reporten_US

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
TR1694.pdf
Size:
603.87 KB
Format:
Adobe Portable Document Format