Исследователи проверили 6 309 agent skills: у половины есть доступ к shell
Авторы статьи на Hugging Face Daily Papers профилировали 6 309 agent skills из двух маркетплейсов, ClawHub и skillsmp. Skill — это Markdown-инструкция, которую агент исполняет с правами своей сессии. У половины листингов есть признаки shell-исполнения, у 35% чтение файлов, у 31% запись и сетевой выход, у 13% доступ к credentials. Хотя бы одну повышенную возможность имеют 7 из 10. Модель разрешений почти не работает: из 6 061 листинга с читаемым frontmatter хоть что-то декларируют 770, и 59% из них занижают реальные возможности. — Установка skill даёт ему право управлять агентом. — Заявленным разрешениям верить нельзя. — Проверять нужно содержимое бандла, а не описание.
AI-обработка оригинала Hugging Face Daily Papers; редакция Hamidun News
Skill для агента выглядит как безобидный Markdown-файл, но агент читает его как инструкцию и выполняет с правами сессии, которая его загрузила. Авторы новой работы с Hugging Face Daily Papers измерили, сколько власти пользователь передаёт при установке. Они проанализировали 6 309 листингов из двух маркетплейсов, ClawHub и skillsmp. У половины есть признаки способности исполнять команды в shell, а семь из десяти несут хотя бы одну повышенную возможность. При установке почти ничего из этого не видно.
Методика двухфазная. Сначала идёт статический анализ всего бандла, а не одного SKILL.md, плюс проверка происхождения зависимостей. Затем skill запускают в инструментированной песочнице, а полученные трассы отдельно оценивает модель. Важная деталь выборки: листинги для исполнения отбирали, не опираясь на предварительный сигнал угрозы или риска. Поэтому картина описывает рынок в целом, а не только подозрительные позиции, которые обычно и попадают в отчёты.
Что показал замер
Авторы подчёркивают: установка skill даёт не новые привилегии, а право направлять агента. Размер этого права они и считают. Доли возможностей по всему корпусу такие:
- shell-исполнение: 50% листингов;
- чтение файловой системы: 35%;
- запись в файловую систему: 31%;
- сетевой выход (network egress): 31%;
- доступ к учётным данным: 13%;
- хотя бы одна повышенная возможность: около 70%.
Важно, что работа не сводится к поиску вредоносных skills. Большинство этих возможностей может быть вполне законным: skill для деплоя без shell не обойдётся. Но пользователь принимает всю эту поверхность атаки одним кликом, не зная её границ.
Декларации против реальности
Формально механизм разрешений существует. Автор skill может перечислить в собственном frontmatter инструменты, которые заранее одобрены. Однако эта опция снимает запросы на подтверждение и ничего не ограничивает. Skill сохраняет доступ ко всему, до чего дотянется.
По цифрам механизм почти не используется. Frontmatter удалось разобрать у 6 061 листинга, и лишь 770 из них что-либо декларируют. Словарь не умеет выражать доступ к учётным данным и переменным окружения. Совпадение заявленного с содержимым бандла не проверяет никто.
Даже когда автор декларирует, он часто ошибается или умалчивает: 59% декларирующих листингов занижают реальные возможности. Площадки заметно различаются. ClawHub декларирует примерно вдвое чаще skillsmp, но занижает в 88% своих деклараций против 31% у конкурента. Выходит, что более охотное заполнение полей не говорит о большей честности.
Как строить проверку на практике
Главный вывод авторов для маркетплейсов: триаж нельзя основывать на заявленном, только на том, что бандл способен сделать. Детектор вредоносности отвечает на вопрос «злонамерен ли автор». Профиль возможностей отвечает на другой: «что случится, если skill окажется скомпрометирован, ошибётся или будет обманут prompt injection». Эти проверки дополняют друг друга.
Командам, которые подключают сторонние skills к агентам, полезно сделать несколько вещей уже сейчас:
- сканировать весь бандл, включая скрипты и зависимости, а не читать только описание;
- выносить в отдельный список skills с shell, записью в ФС, сетевым выходом и доступом к credentials и согласовывать их вручную;
- не считать pre-approved tools в frontmatter мерой безопасности: это способ убрать подтверждения;
- запускать незнакомые skills в песочнице без секретов и с ограниченным исходящим трафиком;
- не давать агентской сессии больше прав, чем нужно самому чувствительному из загруженных skills.
Для площадок вывод ещё прямее: нужен автоматически вычисляемый профиль возможностей, показанный пользователю до установки, и проверка деклараций на соответствие бандлу. Пока этого нет, 70% повышенных возможностей остаются невидимым условием сделки.
Делегируйте ресёрч, код и рутину автономному AI-агенту
Интеллектуальная агентная среда NomadNet Agent (agent.nomadnet.ai) выполняет многошаговые задачи: глубокий веб-ресёрч, анализ данных, написание кода и автоматизацию браузера.
Главное из мира ИИ — раз в неделю
7 ключевых событий недели, отобранных вручную. Без шума, репостов и пресс-релизов.
Готово! Проверьте почту — мы отправили подтверждение.