You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AFLplusplus/src/AFLplusplus-stable/custom_mutators/examples/README.md

1.5 KiB

Examples for the custom mutator

These are example and helper files for the custom mutator feature. See docs/custom_mutators.md for more information

Note that if you compile with python3.7 you must use python3 scripts, and if you use python2.7 to compile python2 scripts!

simple_example.c - most simplest example. generates a random sized buffer filled with 'A'

example.c - this is a simple example written in C and should be compiled to a shared library. Use make to compile it and produce libexamplemutator.so

example.py - this is the template you can use, the functions are there but they are empty

post_library_gif.so.c - fix a fuzz input to ensure it is valid for GIF

post_library_png.so.c - fix a fuzz input to ensure it is valid for PNG

simple-chunk-replace.py - this is a simple example where chunks are replaced

common.py - this can be used for common functions and helpers. the examples do not use this though. But you can :)

wrapper_afl_min.py - mutation of XML documents, loads XmlMutatorMin.py

XmlMutatorMin.py - module for XML mutation

custom_mutator_helpers.h is an header that defines some helper routines like surgical_havoc_mutate() that allow to perform a randomly chosen mutation from a subset of the havoc mutations. If you do so, you have to specify -I /path/to/AFLplusplus/include when compiling.

elf_header_mutator.c - example ELF header mutator based on LibGolf