Вот интересная демонстрация возможностей [afl][1]; меня реально удивило, что она работает!
`$ mkdir in_dir
$ echo 'hello' >in_dir/hello
$ ./afl-fuzz -i in_dir -o out_dir ./jpeg-9a/djpeg`
В сущности, я создал текстовый файл только со словом "hello" и попросил фаззер выдавать поток в программу, которая ожидает на входе изображение JPEG (_djpeg_ это простая утилита, которая идёт вместе с распространённой графической библиотекой _[IJG jpeg][2]_; _[libjpeg-turbo][3]_ тоже должна подойти). Конечно, мои входные данные не похожи на валидное изображение, так что утилита быстро отвергает их:
`$ ./djpeg '../out_dir/queue/id:000000,orig:hello'
Not a JPEG file: starts with 0x68 0x65`
[Читать дальше →][4]
[1]:
http://code.google.com/p/american-fuzzy-lop
[2]:
http://www.ijg.org/
[3]:
http://libjpeg-turbo.virtualgl.org/
[4]:
https://habrahabr.ru/post/328652/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut