Skip to content

xct/simple_fuzzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Fuzzer

Basic educational coverage driven fuzzer. Accompanying blog post: Building a simple coverage based fuzzer for binary code.

Installation

  • build dynamorio somewhere
  • adjust dynamorioHOME in fuzz.py

Usage

  • Make sure you disable ASLR (echo 0 | sudo tee /proc/sys/kernel/randomize_va_space)
  • Create a directory with seed files (can be just one file containing arbitrary content)
  • Run python3 fuzz.py working_directory seed_directory 'target_binary arguments'
  • Filename arguments can be given by replacing their filename with '@@'

Troubleshooting

Building Dynamorio:

I noticed that on kali linux the dynamorio build process is failing due to warning treatment in newer gcc versions. Running the following command on the source directory will let it build:

find . -type f -exec sed -i 's/-Wall/-Wno-attribute-alias -Wno-stringop-overflow/g' {} +

About

Basic educational coverage driven fuzzer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages