Bunny the Fuzzer

Closed loop general purpose protocol-blind fuzzer for your C programs
Download

Bunny the Fuzzer Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Price:
  • FREE
  • Publisher Name:
  • Michal Zalewski
  • Publisher web site:
  • http://code.google.com/p/tmin/
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 63 KB

Bunny the Fuzzer Tags


Bunny the Fuzzer Description

Closed loop general purpose protocol-blind fuzzer for your C programs Bunny is a feedback loop, high-performance, general purpose protocol-blind fuzzer for C programs (though in principle easily portable to any other imperative procedural language).The novelty of this tool arises from its use of compiler-level integration to seamlessly inject precise and reliable instrumentation hooks into the traced program. These hooks enable the fuzzer to receive real-time feedback on changes to the function call path, call parameters, and return values in response to variations in the input data.This architecture makes it possible (and quite simple!) to significantly improve the coverage of the testing process without a noticeable performance impact usually associated with other attempts to peek into run-time internals.Bunny is currently known to support Mac OS X, FreeBSD, Linux, OpenBSD, and Cygwin on IA32 and IA64 systems.Here are some key features of "Bunny the Fuzzer":· The approach does not feature a steep setup or learning curve. There is no training or protocol knowledge necessary; any project can be automatically instrumented with a drop-in replacement for GCC, and is immediately ready for testing.· There is no significant performance penalty involved. Core fuzzing components are designed for highest speed, and feature cyclic SHM output buffers with userland spinlocks, keep-alive architecture, and syscall overhead limited to bare minimum. The instrumentation is injected in key HLL control points, limiting the amount of data to be analyzed. On a typical dual-core P4 desktop, fuzzing of a small utility peaks at 3600 execs/second, compared to 4000 for a dummy loop. · Both small and large real-life components can be instrumented and tested alike. From zlib to libpng to OpenSSH, there is no need to alter the build and testing process. · Fine-grained configuration and easy automation. The fuzzer implements 9 neat fuzzing strategies and offers detailed controls over their behavior, fuzzing depth, and the like. It features automated crash case sorting and annotation and random-run scenarios for unattended, massively parallel setups.NOTE: Bunny the Fuzzer is licensed and distributed under the terms of the Apache License 2.0.


Bunny the Fuzzer Related Software