Assume but Verify: Deductive Verification of Leaked Information in Concurrent Applications
Toby Murray, Mukesh Tiwari, Gidon Ernst, David A. Naumann
Abstract
We consider the problem of specifying and proving the security of non-trivial, concurrent programs that intentionally leak information. We present a method that decomposes the problem into (a) proving that the program only leaks information it has declassified via assume annotations already widely used in deductive program verification; and (b) auditing the declassifications against a declarative security policy. We show how condition (a) can be enforced by an extension of the existing program logic SecCSL, and how (b) can be checked by proving a set of simple entailments. Part of the challenge is to define respective semantic soundness criteria and to formally connect these to the logic rules and policy audit. We support our methodology in an auto-active program verifier, which we apply to verify the implementations of various case study programs against a range of declassification policies.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 3c3bdc07-8d72-4695-a358-1983609ec306Cited by top-tier papers1
Ask how each one uses itBuilds on13
- Deep Learning with Differential PrivacyMartín Abadi, Andy Chu, Ian J. Goodfellow, H. Brendan McMahan et al.CCS 2016 · 7,620 citations
- Inferring Fine-grained Control Flow Inside SGX Enclaves with Branch ShadowingSangho Lee, Ming-Wei Shih, Prasun Gera, Taesoo Kim et al.USENIX Security 2017 · 536 citations
- A Systematic Evaluation of Transient Execution Attacks and DefensesClaudio Canella, Jo Van Bulck, Michael Schwarz, Moritz Lipp et al.USENIX Security 2019 · 442 citations
- Verifying Constant-Time ImplementationsJosé Bacelar Almeida, Manuel Barbosa, Gilles Barthe, François Dupressoir et al.USENIX Security 2016 · 274 citations
- A Secure and Formally Verified Linux KVM HypervisorShih-Wei Li, Xupeng Li, Ronghui Gu, Jason Nieh et al.S&P 2021 · 72 citations
Related papers
- Verifiable Security Policies for Distributed SystemsFelix A. Wolf, Peter MüllerCCS 2024 · 1 citation
- Compositional Security Definitions for Higher-Order Where DeclassificationJan Menz, Andrew K. Hirsch, Peixuan Li, Deepak GargOOPSLA 2023 · 3 citations
- SecRSL: security separation logic for C11 release-acquire concurrencyPengbo Yan, Toby MurrayOOPSLA 2021 · 2 citations
- Specification and Verification of Side-channel Security for Open-source Processors via Leakage ContractsZilong Wang, Gideon Mohr, Klaus von Gleissenthall, Jan Reineke et al.CCS 2023 · 20 citations
- Declassification Policy for Program Complexity AnalysisEmmanuel Hainry, Bruce M. Kapron, Jean-Yves Marion, Romain PéchouxLICS 2024
