README.md
Rendering markdown...
#!/bin/bash
#install gcc and clang compailers
sudo apt install gcc
sudo apt install clang
#install AFL
wget http://lcamtuf.coredump.cx/afl/releases/afl-2.52b.tgz
tar -xzvf afl-2.52b.tgz; rm afl-2.52b.tgz
#build the afl-fuzzer
cd afl-2.52b
make; sudo make install
#enable llvm_mode for fast fuzzing
cd llvm_mode
sudo apt-get install llvm-dev llvm
make
cd ..
make; sudo make install
#cd to project root folder
cd ..
#create compile cover.c to binary file with afl-clang-fast instrumentation for fuzzing
cd curl_path_san_cover
afl-clang-fast -g -fsanitize=address cover.c -o cover
cd ..
#create the test corpus for fuzzer
mkdir inputs
touch inputs/test_url.txt
echo "\"/xxx/\"" > inputs/test_url.txt
mkdir out
echo core >/proc/sys/kernel/core_pattern
#start fuzzer
AFL_USE_ASAN=1 afl-2.52b/afl-fuzz -m none -i inputs -o out ./curl_path_san_cover/cover @@
exit 0