Hypertesting of Programs: Theoretical Foundation and Automated Test Generation
Michele Pasqua, Mariano Ceccato, Paolo Tonella
Abstract
Hyperproperties are used to define correctness requirements that involve relations between multiple program executions. This allows, for instance, to model security and concurrency requirements, which cannot be expressed by means of trace properties. In this paper, we propose a novel systematic approach for automated testing of hyperproperties. Our contribution is both foundational and practical. On the foundational side, we define a hypertesting framework, which includes a novel hypercoverage adequacy criterion designed to guide the synthesis of test cases for hyperproperties. On the practical side, we instantiate such framework by implementing HyperFuzz and HyperEvo, two test generators targeting the Non-Interference security requirement, that rely respectively on fuzzing and search algorithms. Experimental results show that the proposed hypercoverage adequacy criterion correlates with the capability of a hypertest to expose hyperproperty violations and that both HyperFuzz and Hy-perEvo achieve high hypercoverage and high vulnerability exposure with no false alarms (by construction). While they both outperform the state-of-the-art dynamic taint analysis tool Phosphor, HyperEvo is more effective than HyperFuzz on some benchmark programs. CCS CONCEPTS • Software and its engineering → Software testing and debugging; • Security and privacy → Information flow control.
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 4cfd17c2-218c-4268-af13-1ccb3e68f5ceBuilds on4
- JVM fuzzing for JIT-induced side-channel detectionTegan Brennan, Seemanta Saha, Tevfik BultanICSE 2020 · 26 citations
- QFuzz: quantitative fuzzing for side channelsYannic Noller, Saeid Tizpaz-NiariISSTA 2021 · 15 citations
- Verification of Quantitative Hyperproperties Using Trace Enumeration RelationsShubham Sahai, Pramod Subramanyan, Rohit SinhaCAV 2020 · 7 citations
- Keeping Secrets: Multi-objective Genetic Improvement for Detecting and Reducing Information LeakageIbrahim Mesecan, Daniel Blackwell, David Clark, Myra B. Cohen et al.ASE 2022 · 5 citations
Related papers
- Finding ∀∃ Hyperbugs using Symbolic ExecutionArthur Correnson, Tobias Nießen, Bernd Finkbeiner, Georg WeissenbacherOOPSLA 2024 · 7 citations
- Hypra: A Deductive Program Verifier for Hyper Hoare LogicThibault Dardinier, Anqi Li, Peter MüllerOOPSLA 2024 · 6 citations
- Context-Sensitive and Directional Concurrency Fuzzing for Data-Race DetectionZu-Ming Jiang, Jia-Ju Bai, Kangjie Lu, Shi-Min HuNDSS 2022
- Non-interference Preserving Optimising CompilationJulian Rosemann, Sebastian Hack, Deepak GargOOPSLA 2025 · 1 citation
- HYPER-CUBE: High-Dimensional Hypervisor FuzzingSergej Schumilo, Cornelius Aschermann, Ali Abbasi, Simon Wörner et al.NDSS 2020
