BD skill-security-auditor
Аудит безопасности и сканер уязвимостей для навыков ИИ перед установкой. Используйте, когда: (1) оцениваете навык из ненадежного источника, (2) проверяете каталог навыков или URL git-репозитория на наличие вредоносного кода, (3) используете как шлюз безопасности перед установкой плагинов Claude Code, навыков OpenClaw или Codex, (4) сканируете Python-скрипты на наличие опасных паттернов, таких как os.system, eval, subprocess, утечка сетевых данных, (5) обнаруживаете инъекции подсказок в файлах SKILL.md, (6) проверяете риски цепочки поставок зависимостей, (7) проверяете, остается ли доступ к файловой системе в пределах границ навыка. Триггеры: "проверить этот навык", "безопасен ли этот навык", "сканировать навык на безопасность", "проверить навык перед установкой", "проверка безопасности навыка", "сканирование уязвимостей навыка".
машинный переводПоказать оригиналСкрыть оригинал«Security audit and vulnerability scanner for AI agent skills before in…»
Security audit and vulnerability scanner for AI agent skills before installation. Use when: (1) evaluating a skill from an untrusted source, (2) auditing a skill directory or git repo URL for malicious code, (3) pre-install security gate for Claude Code plugins, OpenClaw skills, or Codex skills, (4) scanning Python scripts for dangerous patterns like os.system, eval, subprocess, network exfiltration, (5) detecting prompt injection in SKILL.md files, (6) checking dependency supply chain risks, (7) verifying file system access stays within skill boundaries. Triggers: "audit this skill", "is this skill safe", "scan skill for security", "check skill before install", "skill security check", "skill vulnerability scan".
Аудит безопасности и сканер уязвимостей для навыков ИИ перед установкой.
Как процесс D 43/100 · Процесс не доведён — слабые места: результат и критерий готовности, когда включается, входы и предусловия
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
В тексте есть фразы вроде «игнорируй предыдущие инструкции» или «теперь ты…». Это попытка перехватить управление агентом: он может нарушить ваши правила, системные ограничения или политику компании.
Такие фразы не нужны честному скиллу: сформулируйте роль и правила прямо, без отмены чужих инструкций. Иначе сканеры каталогов и корпоративные фильтры заблокируют публикацию.
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 18
✓ Критических и высоких находок нет
Средние и низкие: 18
-
средняя Подмена инструкций
en-fake-system-promptSKILL.md:60Поддельный системный промпт внутри контента (документация security-скилла)| **System prompt override** | "Ignore previous instructions", "You are now..." | 🔴 CRITICAL | <!-- noqa: SEC-AUDITOR -->
security-скилл -
низкая Опасные команды
cmd-eval-dynamicreferences/threat-model.md:51Динамическое выполнение кода из декодированного/недоверенного ввода (строка таблицы в документации; документация security-скилла)| Direct exec | `eval()`, `exec()`, `os.system()` | `eval(base…ode("..."))` |таблицаsecurity-скилл -
низкая Опасные команды
cmd-pipe-to-shellreferences/threat-model.md:55Скачивание и запуск удалённого кода с неизвестного хоста (pipe в shell) (строка таблицы в документации; документация security-скилла)| Pipe-to-shell | `curl ... \| sh` | In setup scripts |
таблицаsecurity-скилл -
низкая Утечка данных
exfil-read-secret-filesreferences/threat-model.md:66Чтение файлов с учётными данными / секретами (строка таблицы в документации; документация security-скилла)| File read | Access credential files | `open(os.path.expanduser("~/.aws/credentials"))` | <!-- noqa: SEC-AUDITOR -->таблицаsecurity-скилл -
низкая Подмена инструкций
en-ignore-previousreferences/threat-model.md:75Фраза-перехват ("ignore previous instructions") (строка таблицы в документации; документация security-скилла)| Override | "Ignore previous instructions" | In SKILL.md body | <!-- noqa: SEC-AUDITOR -->
таблицаsecurity-скилл -
низкая Рискованное назначение
intent-offensive-securityreferences/threat-model.md:82Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)### T4: Persistence & Privilege Escalation
-
низкая Опасные команды
cmd-cron-mentionreferences/threat-model.md:89Упоминание редактирования crontab (строка таблицы в документации; документация security-скилла)| Cron jobs | Schedule recurring execution | `crontab -l; echo "* * * * * ..." \| crontab -` |
таблицаsecurity-скилл -
низкая Опасные команды
cmd-eval-dynamicreferences/threat-model.md:176Динамическое выполнение кода из декодированного/недоверенного ввода (документация security-скилла)exec(base…ode(_c))
security-скилл -
низкая Подмена инструкций
en-fake-system-promptscripts/skill_security_auditor.py:409Поддельный системный промпт внутри контента (комментарий в коде; документация security-скилла)# System prompt override — CRITICAL
комментарийsecurity-скилл -
низкая Рискованное назначение
intent-offensive-securitySKILL.md:48Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)| **Credential harvesting** | reads from `~/.ssh`, `~/.aws`, `~/.config`, env var extraction patterns | 🔴 CRITICAL |
-
низкая Опасные команды
cmd-privilegeSKILL.md:50Повышение привилегий / права на запись для всех (строка таблицы в документации; документация security-скилла)| **Privilege escalation** | `sudo`, `chmod 777`, `setuid`, cron manipulation | 🔴 CRITICAL |
таблицаsecurity-скилл -
низкая Рискованное назначение
intent-offensive-securitySKILL.md:50Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)| **Privilege escalation** | `sudo`, `chmod 777`, `setuid`, cron manipulation | 🔴 CRITICAL |
-
низкая Подмена инструкций
en-ignore-previousSKILL.md:60Фраза-перехват ("ignore previous instructions") (строка таблицы в документации; документация security-скилла)| **System prompt override** | "Ignore previous instructions", "You are now..." | 🔴 CRITICAL | <!-- noqa: SEC-AUDITOR -->
таблицаsecurity-скилл
Ещё 5 совпадений отнесены к цитатам в документации скилла по безопасности и не считаются находками.
Просканировано файлов: 3. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
✓ По спецификации Agent Skills замечаний нет
Процессный рейтинг: все десять параметров 43/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 30Повторный запуск. Изменяющих операций: 1, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (bash, python, node), но во frontmatter они не объявлены
- 100Шаги. Шагов: 12
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 1699 токенов
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -228 эмодзи в инструкциях: шум для модели
- +1Лицензия не указана
- +2Инструкции на одном языке
- +5В description 6 примера фраз-триггеров в кавычках
- +3Длина description 722 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 15 заголовков
- +3Пошаговые инструкции: 12 пунктов
- +4Есть примеры (5 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (1 из 1)
- +3Все 1 скриптов описаны в инструкциях
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 94.