YARA Rule Skill
Скилл для агента: пишет, проверяет и ускоряет правила YARA по стилю YARA-Forge и yaraQA, компилируя каждое правило перед выдачей.
- 60 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Скилл запускает скрипты проверки и требует установки пакетов Python.
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/yara-rule-skillОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Скилл запускает скрипты проверки и требует установки пакетов Python.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
YARA Rule Skill кладет в контекст агента практики YARA-Forge и yaraQA. Скилл пишет правила по образцам или строкам, которые вы дали, проверяет готовые правила и выдает таблицу замечаний с идентификаторами, серьезностью и исправлением, а также диагностирует медленные правила и ошибки «слишком много совпадений». Каждое выданное правило он компилирует в YARA-X и YARA 4.x, поэтому результат всегда собирается. Строки группируются по назначению: `$x*` для точных признаков, `$s*` для слабых по отдельности, `$a*` для выбора типа файла и `$fp*` для фильтров ложных срабатываний. Для выпуска в YARA-Forge он готовит правило без предупреждений компиляции, с явным score и чистыми метаданными.
Для кого. Аналитикам вредоносного ПО и охотникам за угрозами, которые пишут детектирующие правила YARA и хотят единого стиля и быстрых правил.
Подходит, если
- Из образца и набора строк нужно собрать правило с понятным именем и метаданными.
- Найденное в сети правило надо оценить: логика, скорость, вероятность ложных срабатываний.
- Правило тормозит из-за коротких атомов или неопорного регулярного выражения.
- Перед отправкой в YARA-Forge нужно убрать предупреждения компиляции и задать score.
Не подходит, если
- Нужен готовый набор сигнатур: скилл учит писать правила, а базы он не содержит.
- Не установлены зависимости валидатора: без них проверка компиляцией не пройдет.
- Требуются Sigma или другие форматы детектирования: скилл работает только с YARA.
Пример запроса к агенту
Проверь это правило YARA, покажи замечания по yaraQA и верни исправленный вариант, который компилируется.Ограничения
Скилл только помогает писать и проверять правила, поэтому качество детекта зависит от ваших образцов и знания предмета. Для проверки компиляцией нужны пакеты из `scripts/requirements.txt`, их ставят командой `pip install -r`. Это Community Edition: проверки опираются на материалы YARA Style Guide, Performance Guidelines, yaraQA и YARA-Forge, на их версии на момент выпуска скилла. Скилл срабатывает при разговоре о правилах YARA, а для других агентов нужна поддержка формата `SKILL.md`.
Как отключить. Удалите папку `yara-rule-skill` из `~/.claude/skills/` или `.claude/skills/`. Склонированный репозиторий и пакеты, поставленные для валидатора, можно убрать отдельно.
Частые вопросы
Как установить скилл в Claude Code?
Клонируйте репозиторий и скопируйте папку `yara-rule-skill` в `~/.claude/skills/` для личного использования или в `.claude/skills/` для проекта. Затем поставьте зависимости валидатора.
Что значат префиксы строк `$x*`, `$s*`, `$a*`, `$fp*`?
`$x*` задают точные признаки, одного совпадения хватает. `$s*` слабы поодиночке, `$a*` отбирают тип файла, `$fp*` отсекают ложные срабатывания.
Чем проверяются правила?
Каждое выданное правило компилируется в YARA-X и YARA 4.x. Замечания приходят с идентификаторами из yaraQA и руководств по стилю и скорости.
Можно ли использовать скилл вне Claude Code?
Да, в любом агенте с поддержкой `SKILL.md`. README называет OpenClaw и папку `~/.openclaw/skills/`, а упаковка в файл `.skill` делается скриптом `installer/package_skill.py`.
Что делать с правилом, которое дает слишком много совпадений?
Попросите проверить его на производительность. Скилл пройдет по чек-листу: квантификаторы regex, короткие или однородные атомы, альтернации, циклы и модули.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСканер безопасности для скиллов агентов: ищет промпт-инъекции, утечку данных и вредоносный код перед установкой
Сканер безопасности скиллов ИИ-агентов: статический анализ, оценка моделью и запуск подозрительных скиллов в Docker-песочнице.
Три скилла Semgrep: безопасный код по OWASP, защита LLM-приложений и запуск Semgrep со своими правилами в Claude Code и Cursor
Статический сканер SkillHawk ищет опасные инструкции в SKILL.md, конфигах MCP и AGENTS.md и работает как GitHub Action
Cybersecurity Skills
Cybersecurity Skills for AI Agents
42 скилла по безопасности для Claude Code, Cursor и Codex: аудит кода и облака, пентест с проверкой разрешения, реагирование на инциденты
Открытая библиотека из 65 скиллов по GRC: агент собирает данные и пишет черновики, а решения остаются за человеком.
Коротко о README
Скилл собран из четырех источников: руководства по стилю YARA, руководства по производительности, yaraQA с 25 автоматическими проверками и условий публикации YARA-Forge. Пишет, оценивает и оптимизирует правила.
Бейдж для README
Исходный SKILL.md
--- name: yara-rule-skill description: Writes, reviews, and optimizes YARA rules using the YARA Style Guide, the YARA Performance Guidelines, yaraQA checks, and YARA-Forge quality criteria. Use when the user wants a new YARA rule, a review or quality assessment of an existing rule or rule set, help with a slow, noisy, or non-compiling rule, an explanation of a yaraQA issue ID, or rules that should pass YARA-Forge QA. --- # YARA Rule Authoring and Review Version 2.0. This skill turns four sources into working practice: | Source | Governs | Details | |--------|---------|---------| | [YARA Style Guide](https://github.com/Neo23x0/YARA-Style-Guide) | Rule names, metadata, string groups, condition layout | [references/style.md](references/style.md) | | [YARA Performance Guidelines](https://github.com/Neo23x0/YARA-Performance-Guidelines) (rev. 1.6) | Atoms, regex, condition order, modules | [references/performance.md](references/performance.md) | | [yaraQA](https://github.com/Neo23x0/yaraQA) | Automated checks with IDs (`PA2`, `SM4`, `CE1`, ...) | [references/yaraqa-checks.md](references/yaraqa-checks.md) | | [YARA-Forge](https://github.com/YARAHQ/yara-forge) | Compile gates, quality score, package tiers | [references/yara-forge.md](references/yara-forge.md) | Guideline items that no tool checks have their own IDs in [references/issue-identifiers.md](references/issue-identifiers.md). ## How YARA spends its time Most guidance below follows from the scan model: 1. **Compile:** YARA extracts **atoms** (substrings of up to 4 bytes) from every string. 2. **Search:** one Aho-Corasick pass looks for all atoms of all rules. 3. **Verify:** each atom hit is expanded to a full string match. Regex runs only here. 4. **Condition:** evaluated left to right, stopping at the first decisive result. What follows from it: - String choice is the main cost. A condition cannot stop a string from being searched: `filesize < 200 and $slow_regex` is still slow on every file. - A string without a good atom (shorter than 4 bytes, uniform like `00 00 00 00`, or a regex with no fixed 4-byte run) slows the **whole rule set**, not just its own rule. - Short-circuit evaluation helps only with condition work. Put cheap checks (`uint16(0)`, `filesize`) before expensive ones (`math.*`, hashes, loops, module fields). ## Workflow: write a new rule Copy this checklist into your working notes and complete it in order: ``` - [ ] 1. Scope: target samples, file type, disk or memory, specific family or generic trait - [ ] 2. Category and rule name - [ ] 3. Strings: 3-7 diverse strings grouped as $x / $s / $a / $fp - [ ] 4. Condition: header -> filesize -> other limits -> strings -> FP filters -> expensive checks - [ ] 5. Metadata: description, author, reference, date, hash, score - [ ] 6. Validate with scripts/validate_rule.py; fix and repeat until clean - [ ] 7. Self-review against "Quick checks" below