Уязвимости DuneSlide в Cursor IDE: когда prompt injection превращается в RCE

Коротко
1 июля 2026 года Cato AI Labs раскрыла две критические уязвимости удалённого выполнения кода в редакторе кода Cursor — CVE-2026-50548 и CVE-2026-50549, обе с оценкой 9.8 по CVSS 3.1. В них zero-click prompt injection выходит из командной песочницы редактора и выполняет код на машине разработчика. Обе закрыты в Cursor 3.0, выпущенном 2 апреля 2026 года; все более ранние версии затронуты. Признаков эксплуатации в реальных атаках нет. Вывод для инженерных руководителей шире одного редактора: ИИ-агент, который автономно читает веб-страницы, файлы репозитория и подключённые инструменты, превратил недоверенный контент в канал выполнения кода.
По данным Cursor, редактор используется более чем в половине компаний Fortune 500 — значит, число уязвимых конечных точек разработчиков велико везде, где команды ещё не перешли на 3.0. Сначала обновитесь; затем решите, как ИИ-агенты для кода вписываются в вашу модель угроз, потому что Cato отмечает, что находит проблемы того же класса и в других популярных агентах.
Это уже закрытая уязвимость с понятным исправлением и без известных случаев эксплуатации — поэтому срочная задача не паника, а гигиена версий. Убедитесь, что каждый разработчик работает на Cursor 3.0 или новее, а затем относитесь к ИИ-агенту как к ПО, обрабатывающему недоверенный ввод.
Что раскрыла Cato
Исследователи Cato AI Labs, научного подразделения Cato Networks, опубликовали разбор под названием DuneSlide: пару уязвимостей, которые превращают ИИ-агента Cursor в средство доставки для удалённого выполнения кода. Ключевая идея в том, что prompt injection не обязан останавливаться на уровне языковой модели. Получив нужные скрытые инструкции, агент может быть направлен на классические операции с файловой системой, которые никогда не считались частью поверхности атаки редактора — и этих операций достаточно, чтобы нейтрализовать песочницу, призванную сдерживать команды, запускаемые агентом.
Серьёзность отражает этот охват. Обе проблемы оценены в 9.8 по CVSS 3.1 (9.3 по более новой шкале CVSS 4.0), а итог — полный контроль над окружением разработчика. Поскольку современный редактор обычно авторизован в облачных консолях, реестрах пакетов и SaaS-инструментах, скомпрометированная конечная точка редко ограничивается одной машиной. Хронология важна для приоритизации: Cato сообщила об уязвимостях приватно 19 февраля 2026 года; Cursor сначала отклонила отчёт, затем вновь его открыла и исправила обе ошибки в релизе Cursor 3.0 от 2 апреля; идентификаторы CVE были присвоены 5 июня, а публичное раскрытие состоялось 1 июля. Важно, что Cato подаёт это как исследование, и эксплуатации в реальных атаках не наблюдалось.
Как работает выход из песочницы
Cursor запускает команды shell, инициированные агентом, внутри песочницы, и безопасность этой песочницы держится на небольшом числе допущений о доверии. DuneSlide ломает два из них. В CVE-2026-50548 песочница доверяет рабочей директории, которую агент выбирает для команды. Если внедрённые инструкции указывают эту директорию на системный путь вместо проекта, агент может писать туда, куда не должен — в том числе поверх бинарника cursorsandbox, который обеспечивает изоляцию. Перезапишите этот механизм — и следующая команда выполнится вообще без песочницы, с правами самого разработчика.
CVE-2026-50549 злоупотребляет проверкой безопасности символических ссылок. Перед записью Cursor пытается разрешить символьную ссылку, чтобы убедиться, что реальное назначение находится внутри проекта. Ошибка — в запасном сценарии: когда разрешение не удаётся (потому что цель не существует или атакующий убрал доступ на чтение к папке в пути), редактор не отказывает в записи. Вместо этого он доверяет видимому внутрипроектному пути и продолжает, позволяя специально созданной ссылке перенаправить запись за пределы рабочего пространства. Любой из этих изъянов сам по себе достаточен для выхода.
Механизм доставки — вот что делает это современной проблемой, а не рутинным path traversal. Атакующий никогда не касается вашей клавиатуры. Он размещает инструкции в чём-то, что ваш агент читает от вашего имени — странице из веб-поиска, файле в зависимости или репозитории, ответе подключённого сервера Model Context Protocol (MCP). Агент, выполняя ровно то, о чём вы попросили в безобидном запросе, следует скрытым инструкциям и совершает выход. Именно поэтому это называют zero-click: после первого обычного запроса никакого дальнейшего участия человека не требуется.
Две уязвимости вкратце
Обе критические, обе закрыты в одном релизе, и у обеих одна общая первопричина — песочница доверяет пути, который агента можно обманом заставить выбрать.
Что это значит для команд разработки в США и ЕС
Если убрать конкретику, DuneSlide — это предвестник целой категории, а не единичный случай. Индустрия два года встраивала автономных агентов в рабочий процесс разработчика, и эти агенты читают недоверенный контент — результаты поиска, сторонние репозитории, метаданные пакетов, вывод инструментов — как рутинную часть своей работы. Каждый из этих входов теперь потенциальный канал для инструкций. Песочница задумывалась как последний рубеж; DuneSlide показывает, что этот рубеж может быть разобран тем же агентом, которого он должен был сдерживать. Выживает именно эшелонированная защита, а не одна песочница.
Для регулируемых продуктов радиус поражения — самая неприятная часть. Конечная точка разработчика обычно хранит исходный код, облачные учётные данные и токены к продакшн-SaaS. В финтехе и хелстехе один скомпрометированный ноутбук может открыть доступ к путям к данным клиентов и ключам развёртывания, что превращает CVE в редакторе в вопрос реагирования на инциденты и раскрытия. Поэтому риск ИИ-агентов стоит фиксировать в том же реестре, что и остальные меры контроля цепочки поставок и безопасного SDLC, и поэтому программы готовности к SOC 2 теперь должны конкретно описывать, как агенты изолируются, обновляются и мониторятся.
Хорошая новость в том, что немедленное исправление здесь скучное и эффективное: обновиться. Cursor 3.0 закрывает обе дыры, и группа наибольшего риска — просто команды, которые ещё не выкатили обновление. Более сложная и долгосрочная работа — это управление: решить, к каким MCP-серверам агенту разрешено подключаться, применить принцип наименьших привилегий, чтобы редактор не был авторизован в продакшене, ограничить область и ротировать токены, до которых агент дотягивается, и поставить конечную точку разработчика под тот же мониторинг, что и любой другой чувствительный хост.
Что сделать на этой неделе
Короткая практическая последовательность, которая превращает раскрытие в действие, а не в тревогу:
Типичная ошибка — относиться к ИИ-редактору как к ещё одному приложению и не моделировать угрозы с учётом того, что он действует на недоверенном вводе с вашими правами. Обновление Cursor закрывает сегодняшние дыры; оно не отвечает на вопрос, что произойдёт, когда следующий агент прочитает отравленный репозиторий. Постройте управление один раз — списки разрешённых подключений, идентичности с наименьшими привилегиями, мониторинг конечных точек — и каждое будущее раскрытие станет обновлением версии, а не инцидентом.
Ничто из этого не повод отказываться от ИИ-агентов для кода — выигрыш в продуктивности реален, а исправление DuneSlide — это рутинное обновление. Но раскрытие даёт ясный сигнал: как только агент автономно действует на контенте, который вы не писали, он принадлежит внутри вашей программы безопасности, а не за её пределами.
Частые вопросы
DuneSlide — это название, которое Cato AI Labs дала двум критическим RCE-уязвимостям в редакторе кода Cursor: CVE-2026-50548 и CVE-2026-50549, обе с оценкой 9.8 по CVSS 3.1. Каждая позволяет непрямому prompt injection вырваться из командной песочницы Cursor и выполнить код на машине разработчика без действий пользователя, помимо первоначального безобидного запроса.
Нет. На момент раскрытия 1 июля 2026 года нет свидетельств эксплуатации в реальных атаках; Cato представила DuneSlide как исследование. Практический риск сосредоточен в командах, всё ещё работающих на версиях Cursor старше 3.0.
Обе уязвимости закрыты в Cursor 3.0, выпущенном 2 апреля 2026 года. Все более ранние версии затронуты. Cato сообщила о проблемах 19 февраля, идентификаторы CVE были присвоены 5 июня, а раскрытие последовало 1 июля. Убедитесь, что каждый разработчик на 3.0 или новее.
Агент читает недоверенный контент от вашего имени — веб-страницу, файл репозитория или вывод подключённого MCP-инструмента — а атакующий прячет внутри инструкции. Эти инструкции направляют агента писать за пределы проекта и перезаписать бинарник, обеспечивающий песочницу, так что следующая команда выполняется вне песочницы с вашими правами.
Обновите Cursor до 3.0 или новее, затем управляйте агентом: ограничьте, какие MCP-серверы он может читать, примените наименьшие привилегии, чтобы он не был авторизован в продакшене, ограничьте область и ротируйте доступные токены и мониторьте конечную точку разработчика. Включите ИИ-агентов в свой безопасный SDLC и периодическое тестирование безопасности, а не доверяйте одной только песочнице.
Источники
Cato Networks — DuneSlide: Two Critical RCE Vulnerabilities via Zero-Click Prompt Injection in Cursor IDE, 1 июля 2026 (первоисточник).
CSO Online — Sandbox bypass flaws in Cursor IDE highlight prompt injection as an RCE vector, 1 июля 2026.
The Hacker News — Critical Cursor Flaws Could Let Prompt Injection Escape Sandbox and Run Commands, июль 2026.