Projects per year
Abstract
Reachable coverage is the number of code elements in the search space of a fuzzer (i.e., an automatic software testing tool). A fuzzer cannot find bugs in code that is unreachable. Hence, reachable coverage quantifies fuzzer effectiveness. Using static program analysis, we can compute an upper bound on the number of reachable coverage elements, e.g., by extracting the call graph. However, we cannot decide whether a coverage element is reachable in general. If we could precisely determine reachable coverage efficiently, we would have solved the software verification problem. Unfortunately, we cannot approach a given degree of accuracy for the static approximation, either. In this paper, we advocate a statistical perspective on the approximation of the number of elements in the fuzzer's search space, where accuracy does improve as a function of the analysis runtime. In applied statistics, corresponding estimators have been developed and well established for more than a quarter century. These estimators hold an exciting promise to finally tackle the long-standing challenge of counting reachability. In this paper, we explore the utility of these estimators in the context of fuzzing. Estimates of reachable coverage can be used to measure (a) the amount of untested code, (b) the effectiveness of the testing technique, and (c) the completeness of the ongoing fuzzing campaign (w.r.t. the asymptotic max. achievable coverage). We make all data and our analysis publicly available.
Original language | English |
---|---|
Title of host publication | Proceedings - 2023 IEEE/ACM 45th International Conference on Software Engineering, ICSE 2023 |
Editors | Lori Pollock, Massimiliano Di Penta |
Place of Publication | Piscataway NJ USA |
Publisher | IEEE, Institute of Electrical and Electronics Engineers |
Pages | 371-383 |
Number of pages | 13 |
ISBN (Electronic) | 9781665457019 |
ISBN (Print) | 9781665457026 |
DOIs | |
Publication status | Published - 2023 |
Event | International Conference on Software Engineering 2023 - Melbourne, Australia Duration: 15 May 2023 → 16 May 2023 Conference number: 45th https://ieeexplore.ieee.org/xpl/conhome/10172484/proceeding (Proceedings) https://conf.researchr.org/home/icse-2023 (Website) |
Conference
Conference | International Conference on Software Engineering 2023 |
---|---|
Abbreviated title | ICSE 2023 |
Country/Territory | Australia |
City | Melbourne |
Period | 15/05/23 → 16/05/23 |
Internet address |
Projects
- 2 Finished
-
Practical and Explainable Analytics to Prevent Future Software Defects
Australian Research Council (ARC)
2/03/20 → 2/03/23
Project: Research
-
Fortifying Our Digital Economy: Advanced Automated Vulnerability Discovery
Boehme, M.
Australian Research Council (ARC)
1/03/19 → 31/08/21
Project: Research