Affiliation:
1. National University of Singapore and Monash University, Australia
Abstract
A fundamental challenge of software testing is the statistically well-grounded
extrapolation
from program behaviors observed during testing. For instance, a security researcher who has run the fuzzer for a week has currently
no
means (1) to estimate the total number of
feasible
program branches, given that only a fraction has been covered so far; (2) to estimate the additional time required to cover 10% more branches (or to estimate the coverage achieved in one more day, respectively); or (3) to assess the residual risk that a vulnerability exists when no vulnerability has been discovered. Failing to discover a vulnerability does not mean that none exists—even if the fuzzer was run for a week (or a year). Hence, testing provides
no formal correctness guarantees
.
In this article, I establish an unexpected connection with the otherwise unrelated scientific field of
ecology
and introduce a statistical framework that models Software Testing and Analysis as Discovery of Species (STADS). For instance, in order to study the species diversity of arthropods in a tropical rain forest, ecologists would first sample a large number of individuals from that forest, determine their species, and extrapolate from the properties observed in the sample to properties of the whole forest. The estimations (1) of the total number of species, (2) of the additional sampling effort required to discover 10% more species, or (3) of the probability to discover a new species are classical problems in ecology. The STADS framework draws from over three decades of research in ecological biostatistics to address the fundamental extrapolation challenge for automated test generation. Our preliminary empirical study demonstrates a good estimator performance even for a fuzzer with adaptive sampling bias—AFL, a state-of-the-art vulnerability detection tool. The STADS framework provides
statistical correctness guarantees
with quantifiable accuracy.
Funder
National Cybersecurity R8D Program TSUNAMi
National Research Foundation, Prime Minister's Office, Singapore
National Cybersecurity R8D Directorate
Publisher
Association for Computing Machinery (ACM)
Cited by
34 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. MicroFuzz: An Efficient Fuzzing Framework for Microservices;Proceedings of the 46th International Conference on Software Engineering: Software Engineering in Practice;2024-04-14
2. Extrapolating Coverage Rate in Greybox Fuzzing;Proceedings of the IEEE/ACM 46th International Conference on Software Engineering;2024-04-12
3. Curiosity-Driven Testing for Sequential Decision-Making Process;Proceedings of the IEEE/ACM 46th International Conference on Software Engineering;2024-04-12
4. DiPri
: Distance-based Seed Prioritization for Greybox Fuzzing;ACM Transactions on Software Engineering and Methodology;2024-03-26
5. Statistical Reachability Analysis;Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering;2023-11-30