fuzzing-dictionary — скилл для Claude Code: разбор и установка
Скилл помогает составлять словари токенов и байтов для фаззинга парсеров и протоколов. Пригодится, когда генератор слепых мутаций застревает на проверке заголовков или сигнатур.
npx skills add trailofbits/skills --skill fuzzing-dictionary -a claude-codeЧто делает fuzzing-dictionary
Скилл обучает агента формировать словари для фаззеров libFuzzer и AFL++. Вместо случайных байтов инструмент передаёт фаззеру сигнатуры файлов, имена параметров и методы протоколов. Это помогает пройти первичные фильтры и проверить глубокие ветки кода.
Файл словаря наполняется строками в кавычках и шестнадцатеричными байтами вроде \xF7\xF8. Токены можно вытягивать из заголовочных файлов через grep или собирать из бинарников утилитой strings. Для AFL++ доступен также сбор токенов на этапе сборки через afl-clang-lto с переменной AFL_LLVM_DICT2FILE.
Слишком большой словарь только вредит: оптимально ограничиться объёмом от 50 до 200 записей, чтобы фаззер не размывал внимание на пустые попытки. Если передать в libFuzzer токен длиннее лимита -max_len, фаззер просто отбросит такую запись.
Какие задачи решает
- Собрать ключевые слова и сигнатуры для фаззинга сетевого протокола
- Извлечь строковые токены из заголовочных файлов или бинарников
- Настроить передачу словаря в libFuzzer или AFL++
- Обойти застревание фаззера на проверке сигнатур файлов
Примеры запросов агенту
- Собери словарь токенов для тестирования парсера PNG с учётом сигнатур и заголовков чанков.
- Напиши команду для выгрузки строк из заголовка header.h в формат словаря для libFuzzer.
- Покажи, как передать готовый файл словаря в afl-fuzz при тестировании бинарника.
Как установить fuzzing-dictionary
1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill fuzzing-dictionary -a claude-code2Вручную: положить файлы
~/.claude/skills/fuzzing-dictionary/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/fuzzing-dictionary/
1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill fuzzing-dictionary -a codex2Вручную: положить файлы
.agents/skills/fuzzing-dictionary/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill fuzzing-dictionary -a cursor2Вручную: положить файлы
.cursor/skills/fuzzing-dictionary/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install trailofbits/skills fuzzing-dictionary2Вручную: положить файлы
.github/skills/fuzzing-dictionary/SKILL.md1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill fuzzing-dictionary -a gemini-cli2Командой платформы
gemini skills install https://github.com/trailofbits/skills --path plugins/testing-handbook-skills/skills/fuzzing-dictionaryВручную: положить файлы
.devin/skills/fuzzing-dictionary/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill fuzzing-dictionary -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
Из того же набора35
Весь набор →Похожие
Вопросы о fuzzing-dictionary
Как установить fuzzing-dictionary в Claude Code?
Выполните команду npx skills add trailofbits/skills --skill fuzzing-dictionary -a claude-code.
Для чего нужен скилл fuzzing-dictionary?
Он помогает создавать словари с ключевыми словами, байтовыми последовательностями и магическими числами, чтобы фаззер быстрее находил глубокие ошибки в парсерах и протоколах.
Как подключить созданный словарь к фаззеру?
Для libFuzzer укажите аргумент -dict=./dictionary.dict, для AFL++ используйте флаг -x ./dictionary.dict, а в cargo-fuzz передайте параметр -- -dict=./dictionary.dict.