Fuzzing ISC BIND 9.11.1
Requirements
- honggfuzz (1.1 or from the master branch)
- clang-4.0, or newer (5.0 works as well)
- ISC BIND (e.g.: 9.11.1 or newer)
Preparation
Note: The examples provided below use hardcoded paths (here to: /home/jagger/). These will have to be modified, so they reflect your actual build environment.
- Compile honggfuzz
- Download and unpack bind-9.11.*.tgz
- Patch ISC BIND
$ cd bind-9.11.1-P3
$ patch -p1 < honggfuzz/examples/bind/patch-bind-9.11.1-P3
- Configure, compile and install ISC BIND
- edit compile.sh, so it contains correct dist path
$ ./compile.sh
$ make install
- Copy the custom configuration files to
/home/jagger/fuzz/bind/dist/etc/named.conf(i.e. to your bind/named dist directory)
$ cp honggfuzz/examples/bind/named.conf /home/jagger/fuzz/bind/dist/etc/
$ cp honggfuzz/examples/bind/test.zone /home/jagger/fuzz/bind/dist/etc/
- Go
$ honggfuzz/honggfuzz -f IN.req-response/ -z -P -- ./dist/sbin/named -c /home/jagger/fuzz/bind/dist/etc/named.conf -g