Содержание
ИИ-агенты Claude, OpenAI Codex и Nous Hermes попали в неприятный кейс: исследователи показали, как такие инструменты могут устанавливать подозрительные пакеты внутри корпоративных сетей. Проблема выросла из документации для ИИ — файлов llms.txt и llms-full.txt, которые сайты всё чаще добавляют для машинного чтения.
Смысл этих файлов простой. Сайт заранее объясняет ИИ-агенту, где лежат инструкции, API, команды установки и примеры кода. Для разработчика это удобно: агент быстрее находит нужную команду и встраивает библиотеку в проект.
Но удобство ломается, если документация ведёт на несуществующий пакет или свободный домен. Тогда появляется старый знакомый риск в новой упаковке — сквоттинг имён, только теперь его могут запускать не люди, а автономные ИИ-инструменты.
llms.txt стал новой точкой атаки для пакетного сквоттинга
Исследователи проверили 6 214 живых доменов, среди них сайты оборонных подрядчиков, компаний из Fortune 500 и крупного технологического бизнеса. На этих доменах они нашли 8 265 файлов llms.txt и llms-full.txt, а внутри — 120 ссылок на незарегистрированные пакеты или доменные имена.
Все 120 проблемных ссылок лежали на разных сайтах. Это не один битый шаблон, который размножили по десяткам страниц. Мы видим более неприятную картину: ошибки разбросаны по крупным организациям и живут в документации, которую ИИ читает как рабочую инструкцию.
- Человеческая ошибка: разработчик ошибся в имени пакета или домена.
- Переименование: проект сменил название, а документацию не обновили.
- Заброшенный пакет: библиотеку удалили или перестали поддерживать.
- Copy/paste: кусок инструкции перенесли без проверки.
- Галлюцинация ИИ: агент придумал пакет, которого никогда не было.
Для обычного читателя документации это выглядит как битая ссылка. Для ИИ-агента с правом запускать команды — как приглашение выполнить установку. И если злоумышленник заранее займёт свободное имя, агент может скачать уже не пустышку, а вредоносный пакет.
Эксперимент быстро дошёл до Fortune 500
Для проверки гипотезы исследователи зарегистрировали часть свободных имён и разместили там тестовые пакеты. Эти пакеты не шифровали файлы и не крали данные, а только отправляли сигнал при установке. Такой «маячок» нужен, чтобы понять, кто действительно дошёл до пакета и запустил его.
Первый отклик от компании из Fortune 500 пришёл меньше чем за час. Затем исследователи увидели ещё несколько десятков срабатываний. Это важная деталь: речь не про чистую теорию и не про лабораторный стенд на одном ноутбуке.
Claude, OpenAI Codex и Nous Research Hermes оказались среди инструментов, которые в эксперименте устанавливали такие пакеты. Исследователи прямо назвали их «виновными» в этом поведении, потому что агенты доверяли документации и выполняли найденные команды.
Разбор эксперимента опубликовала Ars Technica. В описанном сценарии злоумышленнику не нужно взламывать сайт компании. Достаточно найти в публичной документации свободное имя, зарегистрировать его и дождаться агента с доступом к shell или package manager.
Это похоже на dependency confusion, который уже бил по npm, PyPI и другим экосистемам. Разница в том, что теперь цепочку может замыкать ИИ-помощник. Он не устал, не сомневается и не всегда понимает, что документация устарела.
Компании придётся чистить документацию быстрее, чем умнеют агенты
Со вторым сложнее. Многие компании как раз покупают ИИ-инструменты ради автоматизации рутины: поставить пакет, собрать проект, исправить зависимость, прогнать тесты. Если агенту запретить всё выполнять, часть пользы сразу исчезнет.
А вот аудит документации можно начать без перестройки всей разработки. Особенно если агентам уже выдали доступ к терминалу, package manager и внутренним репозиториям. Для корпоративной безопасности это теперь такой же технический долг, как старые токены в Git или забытые S3-бакеты.
В исследовательской выборке остались конкретные цифры: 6 214 доменов, 8 265 файлов для ИИ-агентов и 120 незанятых ссылок на пакеты или домены, каждая — на отдельном сайте.