fuzzuf-cc is a tool designed to instrument C and C++ programs for seamless integration with fuzzuf. Using features, you can easily customize program instrumentation to your exact needs.
For build instructions, please follow building.md.
fuzzuf-cc has two main executable files:
fuzzuf-cc
for compiling C programfuzzuf-c++
for compiling C++ program
These executables can be used as drop-in replacements for clang and clang++. You can compile C program as follows:
fuzzuf-cc -o program program.c
Also, you can use the --features
option to enable features. To compile with bb-id-assigner
and bitmap-feedback
features:
fuzzuf-cc --features bb-id-assigner,bitmap-feedback -o program program.c
List of features and their descriptions can be found below. And consult the tutorial.md to learn about use with fuzzuf.
Feature | Description | CLI Usage |
---|---|---|
bb-id-assigner |
Assign IDs to the basic blocks of the program | CLI Usage |
bitmap-feedback |
Instrument the program for bitmap feedback | CLI Usage |
cfg-exporter |
Construct a Control Flow Graph of the program | CLI Usage |
forkserver |
Build the program as a forkserver | CLI Usage |
ijon-feedback |
Build the annotated program with IJON | CLI Usage |
fuzzuf-cc is licensed under the GNU Affero General Public License v3.0. Some codes originate from external projects are licensed under their own licenses. Please refer to LICENSE for details.
This project has received funding from the Acquisition, Technology & Logistics Agency (ATLA) under the Innovative Science and Technology Initiative for Security (JPJ004596).