-
Richard van der Hoff authored
fuzz_group_decrypt.cpp got broken by 653790ea; fix it up
Richard van der Hoff authoredfuzz_group_decrypt.cpp got broken by 653790ea; fix it up
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
README.rst 995 B
Fuzzers
This directory contains a collection of fuzzing tools. Each tests a different entry point to the code.
Usage notes:
-
Install AFL:
apt-get install afl
-
Build the fuzzers:
make fuzzers
-
Some of the tests (eg
fuzz_decrypt
andfuzz_group_decrypt
) require a session file. You can use the ones generated by the python test script (python/test.sh
). -
Make some work directories:
mkdir -p fuzzing/in fuzzing/out
-
Generate starting input:
echo "Test" > fuzzing/in/test
-
Run the test under
afl-fuzz
:afl-fuzz -i fuzzing/in -o fuzzing/out -- \ ./build/fuzzers/fuzz_<fuzzing_tool> [<test args>]
-
To resume with the data produced by an earlier run:
afl-fuzz -i- -o existing_output_dir [...etc...]
-
If it shows failures, pipe the failure case into
./build/fuzzers/debug_<fuzzing_tool>
, fix, and repeat.