Abstract | ||
---|---|---|
While information-flow security is a well-established area, there is an unsettling gap between heavyweight information-flow control, with formal guarantees yet limited practical impact, and lightweight tainting techniques, useful for bug finding yet lacking formal assurance. This paper proposes a framework for exploring the middle ground in the range of enforcement from tainting (tracking data flows only) to fully-fledged information-flow control (tracking both data and control flows). We formally illustrate the trade-offs between the soundness and permissiveness that the framework allows to achieve. The framework is deployed in a staged fashion, statically embedding a dynamic monitor, being parametric in security policies, as they do not need to be fixed until the final deployment. This flexibility facilitates a secure app store architecture, where the static stage of verification is performed by the app store and the dynamic stage is deployed on the client. To illustrate the practicality of the framework, we implement our approach for a core of Java and evaluate it on a use case with enforcing privacy policies in the Android setting. We also show how a state-of-the-art dynamic monitor for JavaScript can be easily adapted to implement our approach. |
Year | DOI | Venue |
---|---|---|
2017 | 10.1007/978-3-319-66402-6_9 | COMPUTER SECURITY - ESORICS 2017, PT I |
Keywords | Field | DocType |
Language-based security, Information-flow control, Taint tracking | Information flow (information theory),BitTorrent tracker,Language-based security,Android (operating system),Software engineering,App store,Computer security,Computer science,Security policy,Soundness,JavaScript | Conference |
Volume | ISSN | Citations |
10492 | 0302-9743 | 2 |
PageRank | References | Authors |
0.35 | 36 | 3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Musard Balliu | 1 | 61 | 4.39 |
Daniel Schoepe | 2 | 32 | 2.21 |
Andrei Sabelfeld | 3 | 2692 | 121.16 |