duytai / sNeu

6 stars 0 forks source link

sNeu

This is a neural network assited fuzzer to efficiently generate testcases for AFL

1. Requirements

2. Usage

# build sNeu project
cd sNeu/
mkdir build/ && cd build/
CC=clang CXX=clang++ cmake -DCMAKE_PREFIX_PATH=<path/to/libtorch> ..

3. Code instrument for c/c++ projects

# projects containing CMakeLists
mkdir build && cd build/
CC=<path/to/sNeu>/clang.py CXX=<path/to/sNeu>/clang++.py cmake ..
make

# projects containing ./configurate
CC=<path/to/sNeu>/clang.py CXX=<path/to/sNeu>/clang++.py ./configure

4. Fuzz your programs with sNeu

Fuzz your binary with AFL for 1 hour and continue with sneu

sneu -i in -o out <path/to/binary/file>
# in/ contains testcases under the folder queue of AFL
# out/ is an empty folder to store test cases
# <path/to/binary/file> syntax is similar to AFL (@@ to read from file and empty to read from stdin)