Automating Isolation and Least Privilege in Web Services

IEEE Symposium on Security and Privacy(2014)

引用 43|浏览57
暂无评分
摘要
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.
更多
查看译文
关键词
Web services,security of data,Django web framework,HTML5 sandboxing techniques,Passe system,Web services,XSS attack,client-facing applications,control-flow relationship,cross-site scripting attack,data-flow relationship,database queries,query results,sandboxed process,security guarantee,shared-memory-space application,capabilities,isolation,principle of least privilege,security policy inference,web security
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要