yara-rule-authoring — скилл для Claude Code: правила YARA-X
Пишет и разбирает правила YARA-X для поиска малвари: подсказывает, какие строки дают годные атомы, а какие ведут к ложным срабатываниям.
npx skills add trailofbits/skills --skill yara-rule-authoring -a claude-codeЧто делает yara-rule-authoring
Скилл ведёт написание правил YARA-X, наследника классической YARA на Rust. Внутри набор принципов: строка должна давать годные атомы (движок ищет четырёхбайтовые подпоследовательности), правило целится в конкретное семейство, а не в категорию вроде «шифровальщики», проверки в условии идут от дешёвых к дорогим — сначала filesize, потом магические байты, строки и модули.
К тексту приложены скрипты: линтер yara_lint.py, анализатор атомов atom_analyzer.py и помощник для ревью review.sh. Пути к ним берут от каталога установленного SKILL.md, а в командах подставляют абсолютными и в кавычках. Сам YARA-X ставится отдельно — brew install yara-x или cargo install yara-x, работа идёт через CLI yr.
Есть на чём ошибиться. uintNN() читает little-endian: архив ZIP начинается с байтов 50 4B 03 04, поэтому в условии пишут uint32(0) == 0x04034B50. Вариант 0x504B0304 компилируется и не совпадает ни с чем. Та же ловушка ждёт с universal-бинарниками Mach-O, так что готовое правило стоит прогнать через yr scan на одном заведомо чистом файле.
Какие задачи решает
- написать правило YARA-X под конкретное семейство, а не под категорию
- проверить готовое правило на слабые атомы до выката
- перевести старые правила YARA на YARA-X
- разобрать Chrome-расширение или Android-приложение через модули crx и dex
- срезать поток ложных срабатываний на системных файлах Windows
Примеры запросов агенту
- Правило YARA-X для конфигурационного блока LockBit 3.0 — напиши и прогони анализатор атомов по строкам.
- Проверь мой файл правил линтером `yara_lint.py` и скажи, какие строки будут совпадать слишком часто.
- Перепиши это старое правило под YARA-X и проверь магические байты Mach-O.
Как установить yara-rule-authoring
1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill yara-rule-authoring -a claude-code2Вручную: положить файлы
~/.claude/skills/yara-rule-authoring/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/yara-rule-authoring/
1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill yara-rule-authoring -a codex2Вручную: положить файлы
.agents/skills/yara-rule-authoring/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill yara-rule-authoring -a cursor2Вручную: положить файлы
.cursor/skills/yara-rule-authoring/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install trailofbits/skills yara-rule-authoring2Вручную: положить файлы
.github/skills/yara-rule-authoring/SKILL.md1Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill yara-rule-authoring -a gemini-cli2Командой платформы
gemini skills install https://github.com/trailofbits/skills --path plugins/yara-authoring/skills/yara-rule-authoringВручную: положить файлы
.devin/skills/yara-rule-authoring/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add trailofbits/skills --skill yara-rule-authoring -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
Из того же набора35
Весь набор →Похожие
Вопросы о yara-rule-authoring
Как установить yara-rule-authoring в Claude Code?
Выполните npx skills add trailofbits/skills --skill yara-rule-authoring -a claude-code. Скилл окажется по пути ~/.claude/skills/yara-rule-authoring/SKILL.md.
Что делает yara-rule-authoring?
Ведёт написание и разбор правил YARA-X: выбор строк, атомы, порядок проверок в условии, метаданные, перенос со старой YARA. Отдельно разбирает модули crx и dex для Chrome-расширений и Android-приложений.
Чем YARA-X отличается от старой YARA?
Это версия на Rust с более строгой валидацией, встроенным форматтером и совместимостью с 99% существующих правил, регулярки в ней работают в 5-10 раз быстрее. Появились модули crx и dex, а старые правила переносят по отдельному разделу скилла.