dfuzz является автоматическая конфигурация fuzzer демон & NBSP;. Вместо того, сам fuzzer, dfuzz является оболочкой для других простых фузерами решения несколько общих недостатков, которые делает автоматизированное тестирование немного сложнее.
Хотя его основные цели являются конфигурационные файлы, можно использовать для dfuzz размывают любые входные файлы.
Основные проблемы dfuzz решает, являются:
- Альфа-версии фузерами - большинство фузерами просто альфа версии, которые больше не поддерживаются развитые или
- Общий формат - не нужно понимать, как использовать каждый основной fuzzer
- Настраиваемый контроль и автоматический анализ ошибок
- Просто спецификация, что для тестирования и какой файл поставить к цели
- Сочетание мутации и генерации файлов fuzzed
Поддерживаемые фузерами
- Zzuf (мутация)
- Аутодафе (генерация)
- Равнины (отладки ПО)
Использование:
- Установить требования
- Установить dfuzz (например easy_install dfuzz)
- Создать рабочий каталог
- Поставка fuzz.conf файл (образец следует)
- В соответствии с модулей, которые вы хотите использовать, создавать MUT или каталог поколения в рабочем каталоге и поставить файл в размывают или шаблона, чтобы использовать
- Пробег dfuzz -d -o name_of_the_working_directory
- Соблюдать выход
- Если все в порядке удаления -d и -o и снова выполните команду
- Проверить каталог образцов, созданный в вашей рабочей директории
- Использование включены incident_viewer на инциденты браузера, если таковые имеются
Полная документация в каталоге Docs.
Пример файла fuzz.conf
[Глобальный]
двоичный = libvirtd
аргументы = -f FUZZED_FILE --verbose
темы = 1
Тайм-аут = 2
поколение = 0
Мутация = 1
Сочетание = 0
[поколение]
Модули = dfuzz.gen.autodafe
Приоритет = высокий
[мутация]
Модули = dfuzz.mut.zzuf; dfuzz.mut.plain
Приоритет = высокий
[сочетание]
Модули = dfuzz.comb.simple
Приоритет = низкий
В это простейшая форма, dfuzz может быть использован в качестве zzuf обертки с повышенной обнаружения и создания отчетов
Особенности :.
- не зависит базового fuzzer
- настраиваемый
- построен, чтобы быть раздвижной
- Автоматизация дружественных
Требования
- Python
- fuzzer (zzuf, Аутодафе, ...)
- GDB, Valgrind (оба являются обязательными)
Комментарии не найдены