Improving Multitasking DBMS Fuzzing With More Accurate Coverage and Testcase Trimming
Coverage-guided fuzzing is prevalent in detecting DBMS (Database Management System) bugs. However, current coverage-guided DBMS fuzzers suffer from two limitations that prevent fuzzers from discovering bugs efficiently. First, the coverage feedback is imprecise which prevents fuzzers from making optimal decisions on fuzzing strategies. Second, DBMS fuzzers lack testcase trimming to control the increasing input sizes. The large input size makes DBMS execution slower and reduces the likelihood that a mutation would touch important structures. In this paper, we proposed corresponding methods to overcome these limitations. Specifically, the work-task coverage tracking and unstable edge filtering improve the coverage accuracy with low instrumentation overhead. Based on more accurate coverage, we further propose testcase trimming to improve the speed of bug detection. We implemented a prototype named Tuzz and evaluated it on three popular DBMSs. The evaluation result shows that Tuzz explores 16.3%, 26.1%, and 26.6% more edges than the state-of-the-art fuzzer in PostgreSQL, MySQL, and MariaDB, respectively. More importantly, Tuzz has discovered 10 and 4 previously unknown bugs in MySQL and MariaDB.
Authors
- Lei Wu (ORCID: https://orcid.org/0000-0003-1675-5283)
- Jiaqi Li (ORCID: https://orcid.org/0009-0000-1852-9138)
- Yajin Zhou (ORCID: https://orcid.org/0000-0001-7610-4736)
Institutions
- Zhejiang University of Science and Technology (CN)
Publication Details
- Journal
- IEEE Transactions on Dependable and Secure Computing
- Published
- 2024-12-23
- DOI
- https://doi.org/10.1109/tdsc.2024.3521591
- Primary Topic
- Software Testing and Debugging Techniques
- Type
- article
- Field-Weighted Citation Impact
- 0.00