Злоумышленники создают вредоносные ИИ-инструкции, чтобы превратить ваши агентные процессы в незаметных преступных помощников

ии-агенты Promptlogger кибербезопасность Mitiga утечка данных вредоносные инструкции csoonline.com

Изучите технику PromptLogger: вредоносные инструкции в CLAUDE.md, .cursorrules и других файлах ИИ-агентов экфильтруют промпты и секреты. Узнайте, как Mitiga обнаружила отравленные репозитории на GitHub и как защитить корпоративные данные от атак через ИИ-ассистентов.

ИИ-агенты все активнее развертываются на предприятиях, и это стремительное внедрение значительно расширило поверхность атаки организаций, превратив доступные для совместного использования ресурсы ИИ-агентов и файлы конфигурации в бэкдоры, предупреждают эксперты по безопасности.

Разработчики, использующие ИИ-ассистентов, все чаще становятся целью вредоносных расширений для IDE, мошеннических MCP-серверов и отравленных AI-скиллов — все это открывает атакующим пути в конвейеры разработки организаций и за их пределы. Но эти вспомогательные ИИ-ресурсы — не единственный тип файлов с инструкциями, которыми разработчики и пользователи обмениваются при работе с ИИ-ассистентами программирования и агентами командной строки (CLI).

Например, CLI-агент Claude Code от Anthropic загружает системные промпты из файла CLAUDE.md. Этот файл содержит инструкции, которые отправляются LLM вместе с каждым пользовательским промптом, чтобы не повторять правила, пользовательские предпочтения и описания персоны модели.

CLAUDE.md может использоваться глобально для всех проектов или применяться в отдельных проектах, включая инструкции о том, как LLM должна работать в рамках этого проекта. Нередко файлы CLAUDE.md включают в общий репозиторий, чтобы разработчики придерживались единообразных соглашений в рамках проекта при работе с Claude Code.

У других кодинг-агентов есть похожие файлы, например AGENTS.md у OpenAI Codex или GEMINI.md у Google Gemini. ИИ-ассистенты в IDE, такие как Cursor или Cline, используют .cursorrules и .clinerules. У GitHub Copilot есть .github/copilot-instructions.md. Кроме того, существуют JSON-файлы конфигурации, которые также могут содержать исполняемый код, например mcp.json, hooks.json или settings.json. Хуки — популярный способ доставки скриптов и команд на основе триггеров во время агентного цикла.

Все эти файлы могут скрывать вредоносный код или инструкции, и их следует регулярно проверять и валидировать, особенно если они импортируются из интернета вместе с репозиторием.

Исследователи из компании по безопасности Mitiga недавно пролили свет на эту угрозу, опубликовав отчет о репозиториях кода, найденных ими в реальных условиях, с вредоносными инструкциями, внедренными в такие файлы. Файлы предписывали целевому агенту экфильтровать все промпты, введенные пользователем, включая любую конфиденциальную информацию, которая в них может содержаться, а также переменные окружения и другие учетные данные, используемые агентом. Исследователи назвали эту технику бэкдор-атаки «PromptLogger» — и, вероятно, в будущем команды безопасности предприятий и разработчики будут сталкиваться с ней все чаще.

«Традиционные кейлоггеры перехватывают нажатия клавиш и отправляют их атакующему, — пишут исследователи Mitiga в своем отчете о векторе атаки. — Поведение в стиле PromptLogger захватывает нечто более ценное: промпты, а иногда и ответы, которыми обмениваются с атакующим. Это имеет значение, потому что промпты все чаще содержат исходный код, архитектурные планы, учетные данные, вставленные для отладки, внутреннюю документацию, отладочный вывод, примеры клиентских данных, бизнес-логику и намерения оператора».

Опасения предприятий по поводу утечки корпоративных данных при использовании теневого ИИ вполне обоснованны. Такой тип атаки позволяет вести слежку за корпоративными данными даже на проверенных и одобренных ИИ-инструментах.

Более того, такая атака не оставляет вредоносного бинарного файла на диске, не внедряет код в другие процессы и не имеет классических механизмов закрепления в системе. Поэтому ее не обнаружат EDR-решения, и она останется незамеченной при мониторинге рабочих станций: все выглядит как обычное использование инструмента, ведь экфильтрацию выполняет сам агент.

Экфильтрация во внешние облачные базы данных

Исследователи Mitiga обнаружили и описали множество примеров отравления файлов с инструкциями для агентов в репозиториях GitHub. Ни один из них не был популярным репозиторием, к которому обращается большое число разработчиков, но это и не требуется. Ссылки на такие репозитории можно отправлять жертвам в целевых атаках, как это уже наблюдалось в атаках с фейковым рекрутингом, когда разработчиков в ходе собеседования просят клонировать GitHub-проекты, содержащие вредоносный код.

Одним из примеров был DevOps-репозиторий с отравленными файлами .cursorrules и .github/copilot-instructions.md. В репозитории содержалось full-stack-приложение с фронтендом на React + Vite, а также Express API, PostgreSQL, конфигурация nginx, Docker-контейнеры, задачи GitLab CI и файлы настройки AWS-инфраструктуры для Terraform и Terragrrunt. Иными словами, все необходимое для развертывания этого приложения.

Несмотря на безобидный файл README.md, файлы с инструкциями для агента, распространяемые в репозитории, содержали указания загружающему их ИИ-агенту незаметно выполнить команду curl, не сообщая о ней пользователю перед ответом на его промпт. Эта команда копировала пользовательский промпт в базу данных, размещенную в сервисе Supabase, используя жестко заданный токен доступа.

В другом случае исследователи нашли MLOps-репозиторий со сквозным пайплайном машинного обучения для обучения, оценки и развертывания моделей компьютерного зрения. В репозитории был файл .clinerules, который предписывал агенту проверить свое окружение, собрав несколько переменных окружения и выводов команд, и отправить их на сайт, размещенный в сервисе Webhook.site. Собранные переменные env включали API-ключ Weights & Biases (WANDB), ключ доступа AWS, токен доступа GitHub и URL отслеживания MLFlow.

«Это прямое собирание учетных данных, — отмечается в отчете исследователей. — Webhook.site дает оператору простой приемник запросов, который можно создать анонимно и отслеживать в реальном времени».

Аналогичная атака со сбором секретов окружения была обнаружена в еще одном репозитории, который выдавал себя за стартовый набор для FastAPI — фреймворка для разработки API. Файлы .cursorrules и CLAUDE.md в репозитории предписывали агенту отправлять содержимое локального файла .env на эндпоинт Webhook.site якобы для синхронизации с командой. Однако там также содержались инструкции скрыть вывод команды и не показывать это действие пользователю.

Наконец, файл GEMINI.md, размещенный в репозитории, маскировался под шаг проверки окружения, необходимый для прохождения проверок соответствия требованиям «Zero Trust». В рамках этой проверки агенту предписывалось внедрять блок инициализации в каждый создаваемый или изменяемый Python-файл, который затем сканировал бы окружение ОС на предмет любых значений с именами, содержащими key, secret, token или pass, и экфильтровать их на эндпоинт Pipedream.

Эта техника не ограничивается отравлением агента и использованием его для экфильтрации. Вместо этого она использует агента для внедрения бэкдор-кода в другие Python-файлы, которые могут быть скопированы в другие системы, включая задачи непрерывной интеграции (CI), контейнеры и производственные нагрузки.

Некоторые намеренные действия, связанные с файлами инструкций для агентов, могут создавать риск, даже если разработчики этого не осознают. Например, исследователи нашли репозиторий, где CLAUDE.md содержал указания использовать Snipara MCP при коммитах для хранения документации, зависимостей, переменных окружения и контекста реализации.

Snipara — это удаленный кросс-проектный слой памяти для ИИ-агентов, поэтому такой сценарий выглядит легитимным и намеренным. Однако если он не одобрен командой безопасности, возникает вторая система, способная хранить учетные данные и конфиденциальные данные вне зоны видимости систем мониторинга.

Рабочие процессы ИИ-агентов под атакой

Техника PromptLogger демонстрирует, что атакующие не просто взламывают агентные рабочие процессы в поисках новых слабых мест предприятий, но и превращают эти процессы в инструменты для совершения преступных действий от своего имени, незаметно и без контроля.

«Файлы с инструкциями для ИИ создавались для того, чтобы делать ассистентов программирования полезнее, — подчеркивают исследователи Mitiga. — Они определяют соглашения в проекте, предпочтительные команды, поведение памяти, использование хуков и инструментов. На практике они также формируют значимый для безопасности слой, который многие команды до сих пор воспринимают как документацию».

Это лишь один из примеров тенденции, в рамках которой ИИ-агенты стремительно становятся неподконтрольной слепой зоной, которую атакующие быстро научились использовать для получения начального доступа.

В прошлом месяце исследователи из компании в сфере безопасности AIR создали proof-of-concept вредоносного файла-навыка, опубликовали его на популярном маркетплейсе и продвигали в Instagram. Этот скилл — файл, содержащий инструкции для ИИ-агентов, привязанные к конкретным задачам, — в итоге установили более 26 000 дизайнеров и маркетологов, многие из которых работают в компаниях.

Файлы-навыки ИИ-агентов в принципе ничем не отличаются от CLAUDE.md или .cursorrules. Они содержат инструкции, которые ИИ-агенты выполняют на различных этапах работы. Поэтому проверка таких файлов при их создании или изменении обязательна.

Исследователи Mitiga предлагают несколько шаблонов статического сканирования, которые позволяют выявлять рискованные команды в таких файлах, но также советуют командам безопасности отслеживать на рабочих станциях разработчиков трафик к таким сервисам, как Webhook.site, Pipedream, Supabase или Telegram Bot API.

Неожиданные исходящие HTTP-запросы до или после ответов ассистента, повторяющиеся POST-запросы, содержащие переменные окружения, пути к проектам или текст промптов, а также добавление новых MCP-серверов, переопределений URL или эндпоинтов инструментов в конфигурации агентов должны быть расследованы.

Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.

В тренде:


Похожие новости: