UCL Discovery
UCL home » Library Services » Electronic resources » UCL Discovery

Hashing Fuzzing: Introducing Input Diversity to Improve Crash Detection

Menendez, HD; Clark, D; (2021) Hashing Fuzzing: Introducing Input Diversity to Improve Crash Detection. IEEE Transactions on Software Engineering 10.1109/TSE.2021.3100858. (In press). Green open access

[thumbnail of Clark_main_TSE.pdf]
Preview
Text
Clark_main_TSE.pdf - Accepted Version

Download (437kB) | Preview

Abstract

The utility of a test set of program inputs is strongly influenced by its diversity and its size. Syntax coverage has become a standard proxy for diversity. Although more sophisticated measures exist, such as proximity of a sample to a uniform distribution, methods to use them tend to be type dependent. We use r-wise hash functions to create a novel, semantics preserving, testability transformation for C programs that we call HashFuzz. Use of HashFuzz improves the diversity of test sets produced by instrumentation-based fuzzers. We evaluate the effect of the HashFuzz transformation on eight programs from the Google Fuzzer Test Suite using four state-of-the-art fuzzers that have been widely used in previous research. We demonstrate pronounced improvements in the performance of the test sets for the transformed programs across all the fuzzers that we used. These include strong improvements in diversity in every case, maintenance or small improvement in branch coverage -- up to 4.8% improvement in the best case, and significant improvement in unique crash detection numbers -- between 28% to 97% increases compared to test sets for untransformed programs.

Type: Article
Title: Hashing Fuzzing: Introducing Input Diversity to Improve Crash Detection
Open access status: An open access version is available from UCL Discovery
DOI: 10.1109/TSE.2021.3100858
Publisher version: http://dx.doi.org/10.1109/TSE.2021.3100858
Language: English
Additional information: This version is the author accepted manuscript. For information on re-use, please refer to the publisher’s terms and conditions.
UCL classification: UCL
UCL > Provost and Vice Provost Offices > UCL BEAMS
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science
URI: https://discovery.ucl.ac.uk/id/eprint/10133915
Downloads since deposit
210Downloads
Download activity - last month
Download activity - last 12 months
Downloads by country - last 12 months

Archive Staff Only

View Item View Item