DAFuzz: data-aware fuzzing of in-memory data stores.

PeerJ Comput Sci

Hangzhou Innovation Institute, Beihang University, Hangzhou, China.

Published: September 2023

Fuzzing has become an important method for finding vulnerabilities in software. For fuzzing programs expecting structural inputs, syntactic- and semantic-aware fuzzing approaches have been particularly proposed. However, they still cannot fuzz in-memory data stores sufficiently, since some code paths are only executed when the required data are available. In this article, we propose a data-aware fuzzing method, DAFuzz, which is designed by considering the data used during fuzzing. Specifically, to ensure different data-sensitive code paths are exercised, DAFuzz first loads different kinds of data into the stores before feeding fuzzing inputs. Then, when generating inputs, DAFuzz ensures the generated inputs are not only syntactically and semantically valid but also use the data correctly. We implement a prototype of DAFuzz based on Superion and use it to fuzz Redis and Memcached. Experiments show that DAFuzz covers 13~95% more edges than AFL, Superion, AFL++, and AFLNet, and discovers vulnerabilities over 2.7× faster. In total, we discovered four new vulnerabilities in Redis and Memcached. All the vulnerabilities were reported to developers and have been acknowledged and fixed.

Download full-text PDF

Source
http://www.ncbi.nlm.nih.gov/pmc/articles/PMC10557509PMC
http://dx.doi.org/10.7717/peerj-cs.1592DOI Listing

Publication Analysis

Top Keywords

data stores
12
data-aware fuzzing
8
in-memory data
8
fuzzing method
8
code paths
8
redis memcached
8
fuzzing
7
dafuzz
6
data
6
dafuzz data-aware
4

Similar Publications

Want AI Summaries of new PubMed Abstracts delivered to your In-box?

Enter search terms and have AI summaries delivered each week - change queries or unsubscribe any time!