Automating Isolation and Least Privilege in Web Services
Title | Automating Isolation and Least Privilege in Web Services |
Publication Type | Conference Paper |
Year of Publication | 2014 |
Authors | Blankstein, A., Freedman, M.J. |
Conference Name | Security and Privacy (SP), 2014 IEEE Symposium on |
Date Published | May |
Keywords | Browsers, capabilities, client-facing applications, control-flow relationship, cross-site scripting attack, data-flow relationship, database queries, Databases, Django web framework, HTML5 sandboxing techniques, isolation, Libraries, Passe system, principle of least privilege, Prototypes, query results, Runtime, sandboxed process, security, security guarantee, security of data, security policy inference, Servers, shared-memory-space application, web security, web services, XSS attack |
Abstract | In many client-facing applications, a vulnerability in any part can compromise the entire application. This paper describes the design and implementation of Passe, a system that protects a data store from unintended data leaks and unauthorized writes even in the face of application compromise. Passe automatically splits (previously shared-memory-space) applications into sandboxed processes. Passe limits communication between those components and the types of accesses each component can make to shared storage, such as a backend database. In order to limit components to their least privilege, Passe uses dynamic analysis on developer-supplied end-to-end test cases to learn data and control-flow relationships between database queries and previous query results, and it then strongly enforces those relationships. Our prototype of Passe acts as a drop-in replacement for the Django web framework. By running eleven unmodified, off-the-shelf applications in Passe, we demonstrate its ability to provide strong security guarantees-Passe correctly enforced 96% of the applications' policies-with little additional overhead. Additionally, in the web-specific setting of the prototype, we also mitigate the cross-component effects of cross-site scripting (XSS) attacks by combining browser HTML5 sandboxing techniques with our automatic component separation. |
URL | https://ieeexplore.ieee.org/document/6956561/ |
DOI | 10.1109/SP.2014.16 |
Citation Key | 6956561 |
- principle of least privilege
- XSS attack
- web services
- web security
- shared-memory-space application
- Servers
- security policy inference
- security of data
- security guarantee
- security
- sandboxed process
- Runtime
- query results
- Prototypes
- Browsers
- Passe system
- Libraries
- isolation
- HTML5 sandboxing techniques
- Django web framework
- Databases
- database queries
- data-flow relationship
- cross-site scripting attack
- control-flow relationship
- client-facing applications
- capabilities