Skip to main content

Combining Different Proof Techniques for Verifying Information Flow Security

  • Conference paper
Logic-Based Program Synthesis and Transformation (LOPSTR 2006)

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

Abstract

When giving a program access to secret information, one must ensure that the program does not leak the secrets to untrusted sinks. For reducing the complexity of such an information flow analysis, one can employ compositional proof techniques. In this article, we present a new approach to analyzing information flow security in a compositional manner. Instead of committing to a proof technique at the beginning of a verification, this choice is made during verification with the option of flexibly migrating to another proof technique. Our approach also increases the precision of compositional reasoning in comparison to the traditional approach. We illustrate the advantages in two exemplary security analyses, on the semantic level and on the syntactic level.

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. Banerjee, A., Naumann, D.A.: Using Access Control for Secure Information Flow in a Java-like Language. In: IEEE Computer Security Foundations Workshop, pp. 155–169. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  2. Barthe, G., D’Argenio, P.R., Rezk, T.: Secure Information Flow by Self-Composition. In: IEEE Computer Security Foundations Workshop, pp. 100–114. IEEE Computer Society Press, Los Alamitos (2004)

    Chapter  Google Scholar 

  3. Barthe, G., Rezk, T.: Non-Interference for a JVM-like Language. In: ACM SIGPLAN International Workshop on Types in Languages Design and Implementation, pp. 103–112. ACM Press, New York (2005)

    Chapter  Google Scholar 

  4. Bossi, A., Focardi, R., Piazza, C., Rossi, S.: Unwinding in Information Flow Security. In: ENTCS 99, pp. 127–154 (2004)

    Google Scholar 

  5. Bossi, A., Macedonio, D., Piazza, C., Rossi, S.: Secure Contexts for Confidential Data. In: IEEE Computer Security Foundations Workshop, pp. 14–25. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  6. Boudol, G., Castellani, I.: Noninterference for Concurrent Programs and Thread Systems. Theoretical Computer Science 281(1-2), 109–130 (2002)

    Article  MATH  MathSciNet  Google Scholar 

  7. Darvas, Á., Hähnle, R., Sands, D.: A Theorem Proving Approach to Analysis of Secure Information Flow. In: Hutter, D., Ullmann, M. (eds.) SPC 2005. LNCS, vol. 3450, pp. 193–209. Springer, Heidelberg (2005)

    Google Scholar 

  8. Deng, Z., Smith, G.: Lenient Array Operations for Practical Secure Information Flow. In: IEEE Computer Security Foundations Workshop, pp. 115–124. IEEE Computer Society Press, Los Alamitos (2004)

    Chapter  Google Scholar 

  9. Denning, D.E.: Cryptography and Data Security. Addison-Wesley, Reading (1982)

    MATH  Google Scholar 

  10. Denning, D.E., Denning, P.J.: Certification of Programs for Secure Information Flow. Communications of the ACM 20(7), 504–513 (1977)

    Article  MATH  Google Scholar 

  11. Focardi, R., Gorrieri, R.: A Classification of Security Properties for Process Algebras. Journal of Computer Security 3(1), 5–33 (1995)

    Google Scholar 

  12. Goguen, J.A., Meseguer, J.: Security Policies and Security Models. In: IEEE Symposium on Security and Privacy, pp. 11–20. IEEE Computer Society Press, Los Alamitos (1982)

    Google Scholar 

  13. Goguen, J.A., Meseguer, J.: Inference Control and Unwinding. In: IEEE Symposium on Security and Privacy, pp. 75–86. IEEE Computer Society Press, Los Alamitos (1984)

    Google Scholar 

  14. Knudsen, J.: Networking, User Experience, and Threads (2002), http://developers.sun.com/techtopics/mobility/midp/articles/threading/

  15. Köpf, B., Mantel, H.: Eliminating Implicit Information Leaks by Transformational Typing and Unification. In: Dimitrakos, T., Martinelli, F., Ryan, P.Y.A., Schneider, S. (eds.) FAST 2005. LNCS, vol. 3866, pp. 47–62. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  16. Mahmoud, Q.H.: Preventing Screen Lockups of Blocking Operations (2004), http://developers.sun.com/techtopics/mobility/midp/ttips/screenlock/

  17. Mantel, H.: Possibilistic Definitions of Security – An Assembly Kit. In: IEEE Computer Security Foundations Workshop, pp. 185–199. IEEE Computer Society Press, Los Alamitos (2000)

    Google Scholar 

  18. Mantel, H.: Unwinding Possibilistic Security Properties. In: Cuppens, F., Deswarte, Y., Gollmann, D., Waidner, M. (eds.) ESORICS 2000. LNCS, vol. 1895, pp. 238–254. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  19. McCullough, D.: Specifications for Multi-Level Security and a Hook-Up Property. In: IEEE Symposium on Security and Privacy, pp. 161–166. IEEE Computer Society Press, Los Alamitos (1987)

    Google Scholar 

  20. McLean, J.D.: A General Theory of Composition for Trace Sets Closed under Selective Interleaving Functions. In: IEEE Symposium on Research in Security and Privacy, pp. 79–93. IEEE Computer Society Press, Los Alamitos (1994)

    Google Scholar 

  21. Millen, J.K.: Hookup Security for Synchronous Machines. In: IEEE Symposium on Research in Security and Privacy, pp. 84–90. IEEE Computer Society Press, Los Alamitos (1990)

    Google Scholar 

  22. C. Pöpper. A Security Analyzer for Multi-Threaded Programs. Diploma thesis, ETH Zurich, March (2005)

    Google Scholar 

  23. Roscoe, A.W.: CSP and Determinism in Security Modelling. In: IEEE Symposium on Security and Privacy, pp. 114–127. IEEE Computer Society Press, Los Alamitos (1995)

    Google Scholar 

  24. Rushby, J.M.: Noninterference, Transitivity, and Channel-Control Security Policies. Technical Report CSL-92-02, SRI International (1992)

    Google Scholar 

  25. Russo, A., Sabelfeld, A.: Securing Interaction between Threads and the Scheduler. In: IEEE Computer Security Foundations Workshop, IEEE Computer Society Press, Los Alamitos (2006)

    Google Scholar 

  26. Ryan, P.Y.A., Schneider, S.A.: Process Algebra and Non-interference. In: IEEE Computer Security Foundations Workshop, pp. 214–227. IEEE Computer Society Press, Los Alamitos (1999)

    Google Scholar 

  27. Sabelfeld, A.: Confidentiality for Multithreaded Programs via Bisimulation. In: Broy, M., Zamulin, A.V. (eds.) PSI 2003. LNCS, vol. 2890, pp. 260–274. Springer, Heidelberg (2004)

    Google Scholar 

  28. Sabelfeld, A., Myers, A.C.: Language-based Information-Flow Security. IEEE Journal on Selected Areas in Communication 21(1), 5–19 (2003)

    Article  Google Scholar 

  29. Sabelfeld, A., Sands, D.: Probabilistic Noninterference for Multi-threaded Programs. In: IEEE Computer Security Foundations Workshop, pp. 200–215. IEEE Computer Society Press, Los Alamitos (2000)

    Google Scholar 

  30. Smith, G.: Probabilistic Noninterference through Weak Probabilistic Bisimulation. In: IEEE Computer Security Foundations Workshop, pp. 3–13. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  31. Smith, G., Volpano, D.: Secure Information Flow in a Multi-threaded Imperative Language. In: ACM Symposium on Principles of Programming Languages, pp. 355–364. ACM Press, New York (1998)

    Chapter  Google Scholar 

  32. Volpano, D., Smith, G.: Probabilistic Noninterference in a Concurrent Language. In: IEEE Computer Security Foundations Workshop, pp. 34–43. IEEE Computer Society Press, Los Alamitos (1998)

    Google Scholar 

  33. Zdancewic, S., Myers, A.C.: Observational Determinism for Concurrent Program Security. In: IEEE Computer Security Foundations Workshop, pp. 29–43. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Germán Puebla

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Mantel, H., Sudbrock, H., Kraußer, T. (2007). Combining Different Proof Techniques for Verifying Information Flow Security. In: Puebla, G. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2006. Lecture Notes in Computer Science, vol 4407. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-71410-1_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-71410-1_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-71409-5

  • Online ISBN: 978-3-540-71410-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics