Согласился скопировать видео, потерял SSH-ключи. Атака SymJack разводит программистов и их ИИ-помощников
NewsMakerОкно запроса показывает действие, которому легко поверить, но не раскрывает весь маршрут.
Специалисты Adversa AI описали атаку SymJack, которая показывает опасное слабое место популярных ИИ-помощников для программирования: пользователь видит безобидную просьбу скопировать файл, а в системе в тот же момент может перезаписаться конфигурация самого инструмента. После перезапуска такой помощник способен выполнить код злоумышленника с правами владельца компьютера.
Автор отчёта Рони Утевски проверил технику на Claude Code , Gemini CLI, Antigravity CLI, Cursor Agent CLI, GitHub Copilot CLI, Grok Build и OpenAI Codex CLI. По данным Adversa AI, проблема затрагивает не отдельный продукт, а общий подход к безопасности: инструменты доверяют инструкциям внутри репозитория, показывают пользователю неполную картину действия и не всегда проверяют, куда на самом деле ведёт операция записи.
Атака начинается с подготовленного репозитория. В нём размещают файл с инструкциями для ИИ-агента, который выглядит как обычное задание для генерации документации. Помощник получает указание скопировать якобы медиафайлы из одной папки в другую. На экране пользователь видит команду копирования видеофайла и подтверждает действие, не замечая подвоха.
Ключевую роль играет символическая ссылка. Файл назначения в папке с документацией на самом деле указывает на конфигурацию ИИ-инструмента, например, настройки MCP-серверов . Когда команда выполняется, операционная система записывает содержимое не в «видео», а в конфигурационный файл. Полезная нагрузка при этом маскируется под файл с расширением .mp4, хотя внутри находятся настройки в формате JSON или TOML, подключающие вредоносный MCP-сервер.
После перезапуска помощник загружает новую конфигурацию и запускает команду злоумышленника. На рабочей станции разработчика такой сценарий может привести к краже SSH-ключей, облачных токенов и данных сеансов. В CI-средах риск выше, поскольку агенты часто работают без ручного подтверждения, а сборочные узлы хранят ключи развёртывания, материалы для подписи и токены реестров.
Реакция поставщиков оказалась разной. Anthropic отклонила отчёт, но позже усилила окно подтверждения в Claude Code и начала показывать реальный путь после раскрытия символической ссылки. Google и Cursor не приняли сообщение как новую уязвимость, OpenAI закрыла отчёт по Codex CLI как теоретический сценарий, а GitHub и xAI, по данным Adversa AI, на момент публикации ещё не ответили.
Авторы отчёта считают главным слабым местом саму модель подтверждения. Пользователь соглашается с тем, что видит в окне запроса, но окно не показывает фактический итог операции. Для снижения риска разработчикам советуют проверять репозитории на символические ссылки, запрещать ИИ-агентам запись в конфигурационные каталоги через команды оболочки, отключать автоматический запуск проектных MCP-серверов и изолировать CI-среды, которые обрабатывают непроверенные запросы на слияние.
Специалисты Adversa AI описали атаку SymJack, которая показывает опасное слабое место популярных ИИ-помощников для программирования: пользователь видит безобидную просьбу скопировать файл, а в системе в тот же момент может перезаписаться конфигурация самого инструмента. После перезапуска такой помощник способен выполнить код злоумышленника с правами владельца компьютера.
Автор отчёта Рони Утевски проверил технику на Claude Code , Gemini CLI, Antigravity CLI, Cursor Agent CLI, GitHub Copilot CLI, Grok Build и OpenAI Codex CLI. По данным Adversa AI, проблема затрагивает не отдельный продукт, а общий подход к безопасности: инструменты доверяют инструкциям внутри репозитория, показывают пользователю неполную картину действия и не всегда проверяют, куда на самом деле ведёт операция записи.
Атака начинается с подготовленного репозитория. В нём размещают файл с инструкциями для ИИ-агента, который выглядит как обычное задание для генерации документации. Помощник получает указание скопировать якобы медиафайлы из одной папки в другую. На экране пользователь видит команду копирования видеофайла и подтверждает действие, не замечая подвоха.
Ключевую роль играет символическая ссылка. Файл назначения в папке с документацией на самом деле указывает на конфигурацию ИИ-инструмента, например, настройки MCP-серверов . Когда команда выполняется, операционная система записывает содержимое не в «видео», а в конфигурационный файл. Полезная нагрузка при этом маскируется под файл с расширением .mp4, хотя внутри находятся настройки в формате JSON или TOML, подключающие вредоносный MCP-сервер.
После перезапуска помощник загружает новую конфигурацию и запускает команду злоумышленника. На рабочей станции разработчика такой сценарий может привести к краже SSH-ключей, облачных токенов и данных сеансов. В CI-средах риск выше, поскольку агенты часто работают без ручного подтверждения, а сборочные узлы хранят ключи развёртывания, материалы для подписи и токены реестров.
Реакция поставщиков оказалась разной. Anthropic отклонила отчёт, но позже усилила окно подтверждения в Claude Code и начала показывать реальный путь после раскрытия символической ссылки. Google и Cursor не приняли сообщение как новую уязвимость, OpenAI закрыла отчёт по Codex CLI как теоретический сценарий, а GitHub и xAI, по данным Adversa AI, на момент публикации ещё не ответили.
Авторы отчёта считают главным слабым местом саму модель подтверждения. Пользователь соглашается с тем, что видит в окне запроса, но окно не показывает фактический итог операции. Для снижения риска разработчикам советуют проверять репозитории на символические ссылки, запрещать ИИ-агентам запись в конфигурационные каталоги через команды оболочки, отключать автоматический запуск проектных MCP-серверов и изолировать CI-среды, которые обрабатывают непроверенные запросы на слияние.