Известные решения (Crusher)

Рекомендуется использовать актуальную версию — в новых релизах исправляются ошибки.


1. Лицензирование

Проблема

Решение

Crusher не находит лицензию

В файле hasplm.ini указать адрес сервера лицензий (serveraddr = <hostname или ip>).

2. Запуск фаззинга

Проблема

Решение

'--' (target options) is not found after options

Между опциями фаззера и командой запуска приложения должна стоять --. Шаблон: fuzz_manager --start <num> -i <inputs dir> -o <results dir> {other options} -- [target program options].

Не завершились предыдущие процессы фаззинга — новый запуск не стартует или идёт очень медленно

Завершить процессы fuzz.exe, fuzz_manager.exe, eat.exe, ftk.exe, sydr.exe, symex.exe, а также процессы тестируемого ПО.

Нужно изолировать исследуемое приложение — запускать только один его процесс на хосте/в виртуалке/в Docker

Запускать fuzz_manager с опцией --start 1.

Нужно продолжить фаззинг после прерывания

fuzz_manager.exe --resume -o <results dir>. Опции -i, --dse-cores, --dse-threads, --eat-cores при --resume не указываются.

Нужно ограничить время фаззинга

--execs-turn-off <num> — число запусков на экземпляр, --total-exces-turn-off <num> — общее число запусков.

3. Docker-режим

Проблема

Решение

Контейнеры в Docker-режиме падают и перезапускаются

Указывать полный путь до config.json вместо относительного. В новых версиях исправлено.

Многопоточный фаззинг сетевого приложения не работает из-за конфликтов за порты

Использовать Docker-режим — он изолирует сеть и файловую систему между экземплярами фаззера. Альтернатива — вручную задавать уникальный порт и конфиг каждому процессу.

4. UI

Проблема

Решение

В UI отображается некорректная информация

Выключить UI (клавиша q), запустить заново.

Автоматизация действий UI

Передавать команды менеджеру фаззеров как JSON-запросы в файл <out>\FUZZ-data\requests\<ID>.json. Команды: add_instance, restart_instance, remove_instance, terminate.