TUM Logo

Dynamic Methods for Misuse Detection in Library Fuzzing

Dynamic Methods for Misuse Detection in Library Fuzzing

Supervisor(s): Vincent Ahlrichs, Florian Kasten
Status: finished
Topic: Others
Author: Arved Ossa
Submission: 2024-07-15
Type of Thesis: Bachelorthesis
Thesis topic in co-operation with the Fraunhofer Institute for Applied and Integrated Security AISEC, Garching

Description

With the increasing scale of the average software project come many challenges. To
ensure compliance with specifications, software has to be tested. Program input cannot
be adequately covered by unit tests, since unit tests, by design, are unable to cover
the whole input space of a parameter. This leads to an increased demand for fuzztesting.
However, fuzzing at scale is time-consuming and costly because in a traditional
library fuzzing environment the driver generation and most of the categorising and
deduplication of crashes has to be performed manually. Even with automatic driver
generation one problem persists: the problem of library misuses.
As demonstrated by Chen et al.(2023) [3], there are merits for consistent detection
of misuses in the fuzzing process. They demonstrated that misuse detection can
significantly improve fuzzing efficiency for interpreter-based fuzzing. In this paper,
the automatic detection of misuses for more general, coverage guided graybox fuzzers
is implemented for crashes in american fuzzy lop ++ (AFL++) and the advantages of
different dynamic detection methods are discussed.