Home

Awesome

afl-monitor

Extended monitoring and reporting tool for AFL

This program processes a findings directory generated by afl-fuzz and displays the findings in various formats.

Usage

./afl-monitor [-n | --nocolor] [-c | --commandLine] [-v | --verbose] [-h | --html output_directory] [-e | --execute command] [-r | --recursive second_count] findings_directory

The findings_directory parameter should point to an existing findings directory containing one or several state directories for any active or stopped instance of afl-fuzz.

Options

-n | --nocolor Suppresses color output.

-c | --commandLine Output to the command line (can be used with -h)

-v | --verbose Show per-fuzzer statistics in commandline mode and Per-Fuzzer graphing in HTML mode.

-h | --html Output in HTML format. output_directory must be an empty directory in which the output files will be saved. Will generate 1 index.html file and several plot images.

-e | --execute Executes the provided command (use quotes if using arguments) and passes the commandline output via stdin (pipe) if a new crash is detected.

-r | --recursive Re-runs this script with all provided arguments every 'second_count' seconds.

Usage Examples

./afl-monitor -c -v findings/ Display colored status information summaries and per-fuzzer stats on the command line.

./afl-monitor -g graphs/ -c -n findings/ Display summary information as HTML and uncolored console output.

./afl-monitor -c -e send_push_message -r 60 findings/ Generate summary stats once a minute and display them on the command line. If a new crash was detected since the last run, pipe the summary into send_push_message (placeholder example).

Installation

Place afl-monitor anywhere in your file system and execute it. Requires Python 2.7.

Screenshots

Console Summary

General Overview

Console Per-Fuzzer Output

Per Fuzzer

HTML Summary

HTML Summary

HTML Per-Fuzzer Output

HTML Per Fuzzer