Skip to main content

Noninterference with Dynamic Security Domains and Policies

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5913))

Abstract

Language-based information flow analysis is used to statically examine a program for information flows between objects of different security domains, and to verify these flows follow a given policy.

When the program is distributed as mobile code, it may access resources whose domains depend on the client environment, or may face different security policies. In proof-carrying code scenarios, it is desirable to give a single proof that the program executes securely in any of these situations.

This paper presents an object-oriented, Java-like language with runtime security types that can be inspected to ensure that flows between accessed objects are actually allowed before operations inducing these flows are performed. A type system is used to statically prove that the flow tests included in the program are sufficient, such that a noninterference property for the program is ensured regardless of the domains of objects and the effective security policy. Also, the paper outlines how the concepts of the type system are transferred to a bytecode language.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Goguen, J.A., Meseguer, J.: Security policies and security models. In: Proceedings of the 1982 Symposium on Security and Privacy, pp. 11–20. IEEE Computer Society Press, Los Alamitos (1982)

    Google Scholar 

  2. Denning, D.E., Denning, P.J.: Certification of programs for secure information flow. Commun. ACM 20(7), 504–513 (1977)

    Article  MATH  Google Scholar 

  3. Sabelfeld, A., Myers, A.C.: Language-based information-flow security. IEEE Journal on Selected Areas in Communications – special issue on Formal Methods for Security 21(1), 5–19 (2003)

    Google Scholar 

  4. Necula, G.C.: Proof-carrying code. In: Proceedings of the 24th ACM Symposium on Principles of Programming Languages, pp. 106–119. ACM Press, New York (1997)

    Google Scholar 

  5. Myers, A.C.: JFlow: Practical Mostly-Static Information Flow Control. In: Proceedings of the 26th ACM Symposium on Principles of Programming Languages (POPL), pp. 228–241. ACM Press, New York (1999)

    Chapter  Google Scholar 

  6. Zheng, L., Myers, A.C.: Dynamic security labels and static information flow control. Int. J. Inf. Secur. 6(2), 67–84 (2007)

    Article  Google Scholar 

  7. Bandhakavi, S., Winsborough, W., Winslett, M.: A trust management approach for flexible policy management in security-typed languages. In: Proceedings of 21st IEEE Computer Security Foundations Symposium, pp. 33–47. IEEE Computer Society, Los Alamitos (2008)

    Google Scholar 

  8. Shroff, P., Smith, S., Thober, M.: Dynamic dependency monitoring to secure information flow. In: Proceedings of the 20th IEEE Computer Security Foundations Symposium, Washington, DC, USA, pp. 203–217. IEEE Computer Society, Los Alamitos (2007)

    Chapter  Google Scholar 

  9. Barthe, G., Pichardie, D., Rezk, T.: A certified lightweight non-interference java bytecode verifier. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 125–140. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  10. Barthe, G., Rezk, T.: Non-interference for a JVM-like language. In: TLDI 2005: Proceedings of the 2005 ACM SIGPLAN international workshop on Types in languages design and implementation, pp. 103–112 (2005)

    Google Scholar 

  11. Barthe, G., Rezk, T., Naumann, D.A.: Deriving an Information Flow Checker and Certifying Compiler for Java. In: S&P, pp. 230–242. IEEE Computer Society, Los Alamitos (2006)

    Google Scholar 

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

    Google Scholar 

  13. Banerjee, A., Naumann, D.A.: Stack-based access control and secure information flow. J. Funct. Program. 15(2), 131–177 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  14. Grabowski, R.: Noninterference for Mobile Code with Dynamic Security Domains. In: International Workshop on Proof-Carrying Code, Pittsburgh, USA (Post-proceedings to appear, 2008)

    Google Scholar 

  15. Lasinger, F., Grabowski, R.: DSecCheck: Implementation of the DSD type system as an Eclipse plug-in (2009), http://www.tcs.ifi.lmu.de/~grabow/dsd

  16. Grabowski, R.: Proofs for the soundness of the DSD type system (2009), http://www.tcs.ifi.lmu.de/~grabow/dsd

  17. Ball, T.: What’s in a region? or computing control dependence regions in near-linear time for reducible control flow. LOPLAS 2(1-4), 1–16 (1993)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Grabowski, R., Beringer, L. (2009). Noninterference with Dynamic Security Domains and Policies. In: Datta, A. (eds) Advances in Computer Science - ASIAN 2009. Information Security and Privacy. ASIAN 2009. Lecture Notes in Computer Science, vol 5913. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10622-4_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-10622-4_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-10621-7

  • Online ISBN: 978-3-642-10622-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics