Взлом через промпт: как AI-редактор Cursor превращали в оружие

В AI-редакторе кода Cursor была обнаружена и устранена критическая уязвимость, получившая кодовое название CurXecute. Идентифицированная как CVE-2025-54135 и получившая оценку 8.6 по шкале CVSS, она позволяла злоумышленникам добиваться удаленного выполнения кода на компьютере разработчика. Атака, основанная на инъекции промпта, открывала возможность для кражи конфиденциальных данных, включая API- и SSH-ключи, развертывания программ-вымогателей или манипулирования поведением искусственного интеллекта. Уязвимость была исправлена 29 июля 2025 года в версии Cursor 1.3.
Взлом через промпт: как AI-редактор Cursor превращали в оружие
Изображение носит иллюстративный характер

Основной механизм атаки CurXecute, выявленный исследователями Мустафой Наамне и Микой Голдом из компании Aim Labs, заключался в эксплуатации файла конфигурации mcp.json. Этот файл используется для настройки пользовательских серверов по протоколу Model Control Protocol (MCP) и содержал режим «auto-run». Злоумышленник мог обманом заставить пользователя подключиться к вредоносному MCP-серверу, после чего функция автозапуска без подтверждения со стороны пользователя обрабатывала новую конфигурацию. Это приводило к тихой перезаписи файла ~/.cursor/mcp.json и выполнению команд атакующего с привилегиями разработчика. Данный метод схож с ранее раскрытой уязвимостью EchoLeak.

Дополнительные слабые места в защите Cursor были обнаружены специалистами из компании HiddenLayer. Исследователи Казимир Шульц, Кеннет Юнг и Том Боннер продемонстрировали, как можно обойти встроенные списки запретов (denylist). Они встраивали вредоносные инструкции в файл README.md на GitHub. Когда пользователь просил AI-редактор клонировать проект и помочь с его настройкой, скрытый промпт активировался. ИИ принудительно использовал системные утилиты, такие как grep для поиска ключей и curl для их последующей отправки на сервер злоумышленника.

Команда HiddenLayer также описала метод, названный «атакой с комбинацией инструментов». Вредоносная команда, спрятанная в файле README.md, заставляла AI-редактор использовать два легитимных инструмента в паре для совершения атаки. Сначала инструмент read_file применялся для чтения закрытых SSH-ключей пользователя. Затем инструмент create_diagram неправомерно использовался для отправки украденных данных на подконтрольный злоумышленнику URL-адрес на webhook.site.

Еще одна уязвимость, найденная HiddenLayer, позволяла раскрыть системный промпт самого Cursor. Этого удавалось достичь путем переопределения базового URL-адреса для API-запросов OpenAI на прокси-модель, что приводило к утечке внутренней конфигурации AI-ассистента.

Проблема инъекции промптов в инструментах для разработчиков не является уникальной для Cursor. Исследовательская компания Tracebit, основателем и техническим директором которой является Сэм Кокс, детализировала схожую атаку на интерфейс командной строки Google Gemini CLI. Злоумышленник создавал репозиторий на GitHub с вредоносной инструкцией, спрятанной в контекстном файле GEMINI.md.

Механизм атаки на Gemini CLI требовал, чтобы жертва дала команду инструменту на взаимодействие с этим репозиторием, а также предварительно добавила в список разрешенных инструментов безобидную команду, например grep. После этого инъекция промпта активировалась и использовала разрешенные утилиты, такие как curl, для кражи конфиденциальных данных. Данная проблема в Gemini CLI была устранена 25 июля 2025 года в версии 0.1.14. Оба случая демонстрируют системный риск, при котором AI-инструменты, имеющие доступ к локальному окружению пользователя, могут быть обмануты с помощью внешних недоверенных данных.


Новое на сайте

20868Уязвимости Plex открыли путь майнерам и Linux-бэкдору 20867Взлом OpenCode Console: под угрозой могли оказаться ключи OpenAI, Anthropic и Google 20866Rank Math PRO: заражённое обновление оставило на сайтах самовосстанавливающийся бэкдор 20865Как исследовательские модели OpenAI обходили ограничения и присваивали чужие данные 20864Атака на BeyondTrust: шпионская группа получила доступ к серверам поддержки 20863Как пакет imgdecode превращает npm-зависимость в загрузчик вредоносного кода? 20862Как PEERSTITCH обходит проверки VPN-сессий FortiOS? 20861Что происходит, когда ИИ-агент выходит за пределы тестовой среды? 20860Как 37-летняя ошибка открыла путь к root в OpenBSD 7.9? 20859ИИ-модели для SOC: точный ответ зависит от улик 20858Как одна учётная запись ConnectWise открыла доступ к 173 арендаторам Microsoft 365? 20857Пять минут до заражения: как подменили обновления AOMEI Backupper 20856Ловушка под видом регистрации: как UAT-11985 крадёт аккаунты Google 20855Может ли виртуальная машина прочитать память хоста? 20854Как дешёвые Android-смартфоны превращаются в чужие прокси?
Ссылка