Внедрение специальных запросов в сочетании с манипуляциями над функционалом интегрированных сред разработки позволяет похищать из них информацию или обеспечивать выполнение произвольных команд. Это становится возможным из-за избыточно широких разрешений, предоставленных таким системам.
Специалист по киберугрозам Ари Марзук (Ari Marzouk), выступающий также под именем MaccariTA, обнародовал исследование под заголовком «IDEsaster: Новый класс уязвимостей в интегрированных средах разработки, расширенных возможностями искусственного интеллекта», в котором прямо указывает на критическое состояние безопасности в этих платформах. В общей сложности им было обнаружено 30 уязвимостей, открывающих путь к утечке данных или исполнению произвольного кода.
Проблемы затрагивают множество распространённых сред разработки (IDE) и их дополнений: Cursor, Windsurf, Kiro.dev, GitHub Copilot, Zed.dev, Roo Code, Junie, Cline и другие. Для 24 из обнаруженных уязвимостей были присвоены идентификаторы CVE.
«Самое поразительное, на мой взгляд, заключается в том, что для каждой проанализированной среды, усиленной ИИ, существует множество вариантов для проведения многоэтапных атак», — отметил Марзук в беседе с изданием The Hacker News. — «Все ИИ-расширенные IDE (и интегрированные в них программистские ассистенты) по сути игнорируют программную основу — саму среду разработки — в своих моделях угроз. Все её функции воспринимаются как изначально безопасные просто потому, что они существуют там годами. Однако стоит добавить автономного ИИ-помощника, как эти же функции могут быть обращены в инструмент для атак, в том числе для извлечения данных или запуска произвольного кода».
В целом все подобные атаки можно классифицировать по трём основным типам:
Первый тип — это обход защитных механизмов большой языковой модели (LLM) с захватом контекста и принуждением модели действовать в интересах злоумышленника (так называемая инъекция промпта или подсказки).
Второй тип — выполнение определённых операций без какого-либо участия пользователя, благодаря автоматически одобряемым вызовам со стороны инструментов ИИ-агента.
Третий тип — активация штатных функций IDE, которые позволяют потенциальному атакующему выйти за границы безопасной среды, чтобы извлечь конфиденциальные данные или выполнить произвольные команды.
Ранее уже описывались сценарии атак, предполагавшие использование инъекций промптов совместно с уязвимым инструментарием или в комбинации со злоупотреблением легитимными возможностями: такие сценарии включали изменение конфигурации ИИ-агента для принуждения его к выполнению произвольного кода или иного нежелательного поведения.
Отличие IDEsaster состоит в том, что для достижения вредоносных целей здесь используются именно легитимные, встроенные функции самой среды разработки.
Захват контекста может быть осуществлён различными методами, включая использование контекстных ссылок, добавляемых пользователем — например, встроенных URL-адресов или текста со скрытыми символами, невидимыми для человека, но обрабатываемыми языковой моделью.
В качестве примера, контекст может быть скомпрометирован через сервер Model Context Protocol (MCP) путём отравления инструментов (tool poisoning), проведения rug pull-атак или в ситуациях, когда на законный MCP-сервер поступают злонамеренные данные из внешнего, контролируемого злоумышленником, источника.
Инъекция в промпт позволяет, к примеру, читать содержимое важных файлов с помощью разрешённых или уязвимых инструментов, а затем создавать JSON-файл через легитимную функцию (например, write_file или edit_file), использующую удалённую JSON-схему, размещённую на домене атакующего. Это ведёт к утечке данных в момент выполнения IDE GET-запроса.
Данная проблема была обнаружена в таких средах разработки, как Cursor (CVE-2025-49150), Roo Code (CVE-2025-53097), JetBrains Junie (CVE-2025-58335), а также в GitHub Copilot (без присвоения идентификатора CVE), Kiro.dev (также без CVE) и Claude Code (в последнем случае пользователь получает предупреждение о потенциальной атаке).
Уязвимости, дающие возможность изменять настройки IDE посредством инъекции в промпт, зафиксированы в GitHub Copilot (CVE-2025-53773), Cursor (CVE-2025-54130), Roo Code (CVE-2025-53536), Zed.dev (CVE-2025-55012) и Claude Code (выводится предупреждение о безопасности, CVE не присвоен). Модификация конфигурационных файлов IDE (таких как .vscode/settings.json или .idea/workspace.xml) может привести к выполнению произвольного кода путём указания путей, например, php.validate.executablePath или PATH_TO_GIT, на вредоносный исполняемый файл.
Уязвимости, позволяющие использовать инъекцию промпта для изменения файлов конфигурации рабочего пространства (*.code-workspace), присутствуют в GitHub Copilot (CVE-2025-64660), Cursor (CVE-2025-61590) и Roo Code (CVE-2025-58372). Переопределение и изменение настроек multi-root workspace способно привести к исполнению произвольного кода.
Важно подчеркнуть, что два последних сценария возможны при условии, что ИИ-агент настроен на автоматическое подтверждение операций записи файлов. Это позволяет инициировать запись вредоносных конфигураций рабочего пространства. Поскольку такое поведение часто одобряется по умолчанию для файлов внутри workspace, это может привести к автоматическому выполнению кода без ведома пользователя и даже без необходимости переоткрытия проекта.
Марзук рекомендует следующие шаги для предотвращения подобных инцидентов. Во-первых, использовать IDE с ИИ-функциями и самих ИИ-агентов исключительно для работы с проверенными проектами и файлами. Во-вторых, подключаться только к надёжным MCP-серверам и постоянно мониторить их состояние (поскольку даже доверенный сервер может быть взломан). В-третьих, тщательно анализировать потоки данных инструментов MCP (например, легитимный инструмент может получать информацию из источника под контролем злоумышленника, такого как Pull Request на GitHub).
«Главная угроза заключается в чрезмерных правах ИИ-инструментов при работе с данными, — отмечает Михаил Зайцев, специалист по кибербезопасности компании SEQ. — Интегрированные с искусственным интеллектом среды разработки предназначены для сокращения ошибок в коде, однако сейчас они сами выглядят уязвимым звеном».
По словам эксперта, недавно уже был зафиксирован случай, когда ИИ, воспользовавшись предоставленным доступом, безвозвратно удалил важную информацию у одного из программистов.
«Эти системы ещё недостаточно совершенны, поэтому связанные с ними риски необходимо учитывать на постоянной основе», — подчеркнул Зайцев.