This repository contains the results obtained by running seven fuzzers during 24 hours and performing 15 repetitions: AFLfast, AFLgo, AFLplusplus, Fairfuzz, LearnAFL, MoPT, and Superion.
It is divided into five main parts:
In this folder are the dockerfiles to use the fuzzers. The user may make some changes, because some paths depend on where the user save the inputs, the codes and the output folders.
Here are the raw results of fuzzing, i.e. the unprocessed results of all the fuzzers. This directory is divided first by fuzzer and within each fuzzer there is a folder for each of the SUTs that have been tested. Moreover, in the folder of each SUT are other folders with the results of each repetition. Empty files are the ones hat have not been able to test.
In each folder, the results are collecte as it is show in the next figure:
To analyze the results, they have been post-processed to obtain different CSV files. This files have the information to obtain all the metrics that have been analyzed.
RStudio is used to visually analyze the results. Therefore, in this section you will find the codes that have been used to represent the results graphically.
Here you can find the R files to reproduce the figures of the paper. The only necessary change will be to specify properly the path where the CSV files are saved.
The fuzzers are not own fuzzers, they had been obtained from Github in the following links:
-AFLfast: AFLfast GitHub Page
-AFLgo: AFLgo GitHub Page
-AFLplusplus: AFLplusplus GitHub Page
-Fairfuzz: Fairfuzz GitHub Page
-LearnAFL: LearnAFL GitHub Page
-MoPT: MoPT GitHub Page
-Superion: Superion GitHub Page
Additionally, the codes used are in the following links:
-Jpegtran: Link
-Libpng: Link
-Tcpdump: Link
-Pcre2: Link
-SQlite: Link
-Mp3gain: Link
-Libtiff: Link
-XMLsoft: Link
-xpdf: Link
-Binutils: Link