skip to main content
10.1145/1772690.1772747acmotherconferencesArticle/Chapter ViewAbstractPublication PageswwwConference Proceedingsconference-collections
research-article

Fine-grained privilege separation for web applications

Published:26 April 2010Publication History

ABSTRACT

We present a programming model for building web applications with security properties that can be confidently verified during a security review. In our model, applications are divided into isolated, privilege-separated components, enabling rich security policies to be enforced in a way that can be checked by reviewers. In our model, the web framework enforces privilege separation and isolation of web applications by requiring the use of an object-capability language and providing interfaces that expose limited, explicitly-specified privileges to application components. This approach restricts what each component of the application can do and quarantines buggy or compromised code. It also provides a way to more safely integrate third-party, less-trusted code into a web application. We have implemented a prototype of this model based upon the Java Servlet framework and used it to build a webmail application. Our experience with this example suggests that the approach is viable and helpful at establishing reviewable application-specific security properties.

References

  1. S. Chong, K. Vikram, and A. C. Myers. SIF: Enforcing confidentiality and integrity in web applications. In USENIX Security Symposium, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. D. Crockford. ADsafe. http://www.adsafe.org.Google ScholarGoogle Scholar
  3. Edgewall Software. Genshi. http://genshi.edgewall.org.Google ScholarGoogle Scholar
  4. N. Hardy. KeyKOS architecture. SIGOPS Oper. Syst. Rev., 19(4):8--25, 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. C. Hawblitzel, C.-c. Chang, G. Czajkowski, D. Hu, and T. Von Eicken. Implementing multiple protection domains in Java. In USENIX Annual Technical Conference, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Y. W. Huang, F. Yu, C. Hang, C. H. Tsai, D. T. Lee, and S. Y. Kuo. Securing web application code by static analysis and runtime protection. In 13th International World Wide Web Conference, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. N. Jovanovic, C. Kruegel, and E. Kirda. Pixy: A static analysis tool for detecting web application vulnerabilities (short paper). In IEEE Symposium on Security & Privacy, pages 258--263, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. Krohn. Building secure high-performance web services with OKWS. In Proceedings of the USENIX Annual Technical Conference, pages 15--28, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. H. M. Levy. Capability-based computer systems. Digital Press, Maynard, MA, USA, 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. V. B. Livshits and M. S. Lam. Finding security vulnerabilities in Java applications with static analysis. In 14th USENIX Security Symposium, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. A. Mettler, D. Wagner, and T. Close. Joe-E: A security-oriented subset of Java. In 17th Network & Distributed System Security Symposium, 2010.Google ScholarGoogle Scholar
  12. M. S. Miller. Robust Composition: Towards a Unified Approach to Access Control and Concurrency Control. PhD thesis, Johns Hopkins University, Baltimore, Maryland, USA, May 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. M. S. Miller, M. Samuel, B. Laurie, I. Awad, and M. Stay. Caja: Safe active content in sanitized JavaScript (draft), 2008. http://google-caja.googlecode.com/files/caja-spec-2008-06-07.pdf.Google ScholarGoogle Scholar
  14. J. H. Morris, Jr. Protection in programming languages. Commun. ACM, 16(1):15--21, 1973. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. C. Myers and B. Liskov. A decentralized model for information flow control. In Symposium on Operating Systems Principles, pages 129--142, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. N. Provos. Preventing privilege escalation. In 12th USENIX Security Symposium, pages 231--242, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. J. A. Rees. A security kernel based on the lambda-calculus. A. I. Memo 1564, MIT, 1564, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. H. Saltzer and M. D. Schroeder. The protection of information in computer systems. In Communications of the ACM, 1974.Google ScholarGoogle Scholar
  19. J. S. Shapiro, J. M. Smith, and D. J. Farber. EROS: a fast capability system. In 17th ACM symposium on Operating Systems Principles (SOSP'99), pages 170--185, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Symantec Corporation. Symantec Global Internet Security Threat Report: Trends for 2008, April 2009.Google ScholarGoogle Scholar
  21. A. Wiesmann, A. van der Stock, M. Curphey, and R. Stirbei, editors. A Guide to Building Secure Web Applications. The Open Web Application Security Project, September 2005.Google ScholarGoogle Scholar

Index Terms

  1. Fine-grained privilege separation for web applications

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Other conferences
                WWW '10: Proceedings of the 19th international conference on World wide web
                April 2010
                1407 pages
                ISBN:9781605587998
                DOI:10.1145/1772690

                Copyright © 2010 International World Wide Web Conference Committee (IW3C2)

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 26 April 2010

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article

                Acceptance Rates

                Overall Acceptance Rate1,899of8,196submissions,23%

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader

              ePub

              View this article in ePub.

              View ePub