В Amazon Q Developer для VS Code обнаружены критические уязвимости, позволяющие выполнять код и красть облачные учётные данные

Компания Amazon выпустила обновления безопасности для расширения Amazon Q Developer в среде Visual Studio Code, закрывающие две уязвимости высокого уровня опасности. Ошибки, отслеживаемые как CVE-2026-12957 и CVE-2026-12958, позволяли злоумышленнику выполнить произвольный код и похитить облачные учётные данные разработчика без его ведома. Исследователи из компании Wiz обнаружили проблему ещё в апреле, а публичное раскрытие состоялось 26 июня.

Детали уязвимостей

Корень уязвимости кроется в том, как Amazon Q обрабатывает конфигурации MCP-серверов (Model Context Protocol - протокол, расширяющий возможности ИИ-ассистента для взаимодействия с API, базами данных и локальными ресурсами). MCP-серверы работают как локальные процессы, которые ассистент запускает для выполнения дополнительных задач. Amazon Q автоматически загружал настройки из скрытого файла ".amazonq/mcp.json", расположенного в директории рабочего пространства, не запрашивая согласия пользователя и не проверяя уровень доверия к открытому проекту.

Поскольку запущенные процессы наследовали полное окружение жертвы, они получали доступ к конфиденциальным данным. В их число входили AWS-учётные данные - идентификатор ключа доступа, секретный ключ, токены сессии, ключи API и сокеты SSH-агента. Исследователи Wiz продемонстрировали прототип атаки, в рамках которой одна команда Bash во вредоносном конфигурационном файле позволяла вызвать команды для получения идентификационной информации и перехватить активные AWS-сессии, отправив их на сервер, подконтрольный злоумышленнику.

Эксплуатация уязвимости требовала минимального участия пользователя. Злоумышленнику достаточно было разместить вредоносный конфигурационный файл в репозитории и дождаться, пока разработчик клонирует этот репозиторий и откроет папку в IDE с активным расширением Amazon Q. После этого расширение молча выполняло встроенную конфигурацию без каких-либо предупреждений. Распространение заражённых репозиториев могло происходить через несколько каналов: пакеты с опечатками в названиях, вредоносные пул-реквесты в популярные проекты с открытым исходным кодом или скомпрометированные зависимости. Отдельно исследователи отметили, что группы киберпреступников, связанные с КНДР, нередко используют фиктивные тестовые задания на собеседованиях программистов как способ доставки вредоносного кода, что делает сценарий атаки особенно реалистичным.

Успешная эксплуатация могла привести к бэкдорингу IAM-пользователей (Identity and Access Management - служба управления доступом в AWS), закреплению злоумышленника в облачной среде или переходу на внутренние продуктивные системы через унаследованные VPN-контексты.

Исследователь Wiz Маор Доханан обнаружил уязвимость 17 апреля 2026 года и сообщил о ней в службу безопасности Amazon 20 апреля. Компания развернула первоначальное обновление языкового сервера 12 мая, а 26 июня последовало публичное раскрытие информации. Два зарегистрированных CVE описывают разные аспекты проблемы: CVE-2026-12957 - это неправильное применение механизма доверия к границам рабочего пространства, CVE-2026-12958 - отсутствие проверки символических ссылок. Под уязвимые версии попадают несколько продуктов: Language Servers for AWS версии ниже 1.69.0, Amazon Q Developer для VS Code версии ниже 2.20, для JetBrains - ниже 4.3, для Eclipse - ниже 2.7.4, AWS Toolkit с Amazon Q для Visual Studio - ниже 1.94.0.0.

В большинстве конфигураций обновление языкового сервера AWS происходит автоматически, поэтому для применения патча достаточно перезагрузить среду разработки. Разработчикам рекомендуется регулярно проверять рабочие директории на наличие неожиданных папок ".amazonq/" и относиться ко всем незнакомым репозиториям как к заведомо недоверенным.

Эта уязвимость - часть более широкой тенденции, связанной с ошибками автоматического выполнения MCP-конфигураций в экосистеме AI-инструментов для разработки. Аналогичные проблемы недавно были раскрыты в продуктах Claude Code (CVE-2025-59536, CVE-2026-21852), Cursor (CVE-2025-54136) и Windsurf (CVE-2026-30615). Совокупность этих находок указывает на необходимость стандартизации механизмов контроля доверия к конфигурациям рабочего пространства как обязательного требования для всех средств разработки с искусственным интеллектом.

Ссылки

Комментарии: 0