vegard / prog-fuzz

Compiler/source code fuzzing tool using AFL instrumentation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Program fuzzer

Introduction

Very WIP/PoC code. Proceed with caution.

Many thanks to lcamtuf, the AFL people, John Regehr and the C-Reduce people, and the GCC people.

Usage

  1. Download AFL to the current directory.
  2. Build it.
  3. Build your compiler using afl-gcc.
  4. Change $AFL_PATH in make.sh if necessary.
  5. Look for execlp in main.cc and point it to your instrumented compiler.
  6. Run make.sh.
  7. Run ./main.

License

The project includes snippets from AFL (Apache 2.0) and gcc (GPL 3), therefore this project is naturally GPL 3 as well.

Reported bugs

GCC:

Clang:

About

Compiler/source code fuzzing tool using AFL instrumentation

License:GNU General Public License v3.0


Languages

Language:C++ 98.0%Language:Python 1.5%Language:Shell 0.6%