Ignore:
Timestamp:
Dec 15, 2006, 6:48:17 PM (14 years ago)
Author:
Sam Hocevar
Message:
  • Added a few examples to README.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • zzuf/trunk/README

    r1470 r1489  
    1 About Zzuf
    2 ==========
     1
     21. About Zzuf
     3
    34Zzuf is a transparent application input fuzzer. It works by intercepting
    4 file operations and changing random bits in the program's input.
     5file operations and changing random bits in the program's input. Zzuf's
     6behaviour is deterministic, making it easy to reproduce bugs.
    57
     8
     92. Example
     10
     11Fuzz the input of the "cat" program using default settings:
     12
     13  # zzuf cat /etc/motd
     14
     15Fuzz 1% of the input bits of the "cat" program using seed 94324:
     16
     17  # zzuf -s 94324 -r 0.01 cat /etc/motd
     18
     19Fuzz the input of the "convert" program, using file foo.jpeg as the
     20original input and restricting fuzzing to filenames matching the regular
     21expression "foo" (because convert will also open its own configuration
     22files and we do not want zzuf to fuzz them):
     23
     24  # zzuf -i 'foo' convert -- foo.jpeg -format tga /dev/null
     25
     26Fuzz the input of VLC, using file movie.avi as the original input, and
     27generate fuzzy-movie.avi which is the file that can be fed to VLC to
     28reproduce the behaviour without using zzuf:
     29
     30  # zzuf -s 87423 -r 0.01 vlc -- movie.avi
     31  # zzuf -s 87423 -r 0.01 cp movie.avi fuzzy-movie.avi
     32  # vlc fuzzy-movie.avi
     33
     34Fuzz the input of MPlayer and backup movies that caused it to crash:
     35
     36  # for seed in $(seq -w 0 9999); do
     37        zzuf -s ${seed} -r 0.01 -i 'movie[.]avi' \
     38                  mplayer -- -benchmark -vo null movie.avi >/dev/null 2>&1
     39        RET=$?
     40        if [ $RET != 0 ]; then
     41            echo "seed ${seed}: exit $RET"
     42            zzuf -s ${seed} -r 0.05 cp movie.avi movie-${seed}.avi
     43        fi
     44    done
     45
Note: See TracChangeset for help on using the changeset viewer.