Skip to main content

Abstract

This paper addresses the problem of static checking of programs to ensure that they satisfy confidentiality policies in the presence of dynamic access control in the form of Abadi and Fournet’s history-based access control mechanism. The Java virtual machine’s permission-based stack inspection mechanism provides dynamic access control and is useful in protecting trusted callees from untrusted callers. In contrast, history-based access control provides a stateful view of permissions: permissions after execution are at most the permissions before execution. This allows protection of both callers and callees.

The main contributions of this paper are to provide a semantics for history-based access control and a static analysis for confidentiality that takes history-based access control into account. The static analysis is a type and effects analysis where the chief novelty is the use of security types dependent on permission state. We also show that in contrast to stack inspection, confidential information can be leaked by the history-based access control mechanism itself. The analysis ensures a noninterference property formalizing confidentiality.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, M., Fournet, C.: Access control based on execution history. In: Proceedings of the 10th Annual Network and Distributed System Security Symposium, pp. 107–121 (February 2003)

    Google Scholar 

  2. Banerjee, A., Naumann, D.A.: Stack-based access control and secure information flow. Journal of Functional Programming, Special Issue on Language-based Security (to appear)

    Google Scholar 

  3. Banerjee, A., Naumann, D.A.: Secure information flow and pointer confinement in a Java-like language. In: IEEE Computer Security Foundations Workshop (CSFW), pp. 253–270. IEEE Computer Society Press, Los Alamitos (2002)

    Google Scholar 

  4. Banerjee, A., Naumann, D.A.: Using access control for secure information flow in a Java-like language. In: IEEE Computer Security Foundations Workshop (CSFW), pp. 155–169. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  5. Bell, D., LaPadula, L.: Secure computer systems: Mathematical foundations. Technical Report MTR-2547, MITRE Corp. (1973)

    Google Scholar 

  6. Denning, D., Denning, P.: Certification of programs for secure information flow. Communications of the ACM 20(7), 504–513 (1977)

    Article  MATH  Google Scholar 

  7. Fournet, C., Gordon, A.D.: Stack inspection: Theory and variants. ACM Trans. Prog. Lang. Syst. 25(3), 360–399 (2003)

    Article  Google Scholar 

  8. Goguen, J., Meseguer, J.: Security policies and security models. In: Proceedings of the 1982 IEEE Symposium on Security and Privacy, pp. 11–20 (1982)

    Google Scholar 

  9. Gong, L.: Inside Java 2 Platform Security. Addison-Wesley, Reading (1999)

    Google Scholar 

  10. Gough, J.: Compiling for the .NET Common Language Runtime. Prentice Hall, Englewood Cliffs (2001)

    Google Scholar 

  11. Heintze, N., Riecke, J.G.: The SLam calculus: programming with secrecy and integrity. In: ACM Symposium on Principles of Programming Languages (POPL), pp. 365–377 (1998)

    Google Scholar 

  12. Igarashi, A., Kobayashi, N.: Resource Usage Analysis. ACM Trans. Prog. Lang. Syst. (2004) (to appear)

    Google Scholar 

  13. Mandelbaum, Y., Walker, D., Harper, R.: An effective theory of type refinements. In: Proceedings of the the Eighth ACM SIGPLAN International Conference on Functional Programming, ICFP 2003 (August 2003)

    Google Scholar 

  14. Marriott, K., Stuckey, P.J., Sulzmann, M.: Resource usage verification. In: Proceedings of the First Asian Programming Languages Symposium, APLAS (2003)

    Google Scholar 

  15. Myers, A.C.: JFlow: Practical mostly-static information flow control. In: ACM Symposium on Principles of Programming Languages (POPL), pp. 228–241 (1999)

    Google Scholar 

  16. Sabelfeld, A., Myers, A.C.: Language-based information-flow security. IEEE J. Selected Areas in Communications 21(1), 5–19 (2003)

    Article  Google Scholar 

  17. Sun, Q., Banerjee, A., Naumann, D.A.: Modular and constraint-based information flow inference for an object-oriented language. In: Giacobazzi, R. (ed.) SAS 2004. LNCS, vol. 3148, pp. 84–99. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  18. Volpano, D., Smith, G., Irvine, C.: A sound type system for secure flow analysis. Journal of Computer Security 4(3), 167–187 (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Banerjee, A., Naumann, D.A. (2005). History-Based Access Control and Secure Information Flow. In: Barthe, G., Burdy, L., Huisman, M., Lanet, JL., Muntean, T. (eds) Construction and Analysis of Safe, Secure, and Interoperable Smart Devices. CASSIS 2004. Lecture Notes in Computer Science, vol 3362. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30569-9_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-30569-9_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-24287-1

  • Online ISBN: 978-3-540-30569-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics