GitHub Copilot CLI может раскрыть секреты разработчиков, если получит соответствующие инструкции, в зависимости от используемой модели.
Инструмент для написания кода ранее в этом году был отмечен как уязвимый к косвенным инъекциям команд (prompt injection). Это происходит, когда модель получает текст из источника, отличного от пользователя, который предписывает ей выполнить действие вне рамок ее предполагаемой функции.
Данная ситуация схожа с предыдущей, но с нюансом. По словам исследователей безопасности из Adversa AI, GitHub Copilot CLI страдает от той же уязвимости, что была выявлена в Grok два месяца назад: криптографическая инъекция контекста (Cryptographic Context Injection, CCI).
Представьте, что пользователь GitHub Copilot CLI работает над проектом и запускает агент в режиме автопилота. В других инструментах для написания кода, таких как Claude от Anthropic, это режим по умолчанию, но для GitHub Copilot CLI он остается опциональным.
При таких условиях следующим шагом является чтение CLI-инструментом веб-страницы с вредоносными инструкциями, зашифрованными с помощью приватного ключа, опубликованного на том же сайте.
«Статические защитные механизмы читают текст; они его не выполняют», — пояснил Рони Утевски в записи в блоге, предоставленной The Register. «CCI поставляет вредоносные инструкции в виде сильного шифротекста вместе с материалом ключа и инструкцией по расшифровке, побуждая агент выполнить эту расшифровку в своей собственной среде выполнения кода».
Классификаторы активного контента, которые могли бы читать полученный текст в качестве защиты модели, пропустили бы зашифрованный код, в отличие от кодировок вроде base64 или шифров замены, которые можно отменить, поскольку модель научилась их декодировать во время обучения.
Лотерея с моделью
Цепочка атаки выглядит следующим образом: пользователь запускает Copilot CLI и просит его получить содержимое по определенному URL. Страница содержит зашифрованный контент, инструкции по расшифровке с использованием Python и два возможных ключа для расшифровки.
Первый ключ — поддельный. Это шаблон, который агент пытается построить, читая целевые файлы с диска (например, файл пользователя .env). Затем эти секреты добавляются к строке ключа. Первоначальная попытка расшифровки с этим фальшивым ключом терпит неудачу.
Затем пробуется второй ключ, расшифровка проходит успешно, и агент получает инструкции для получения другого URL для получения дополнительного контекста — но этот URL содержит извлеченные секреты, и сетевой запрос передает их злоумышленнику.
Однако это работает не всегда. Это зависит от модели, что не всегда очевидно для пользователя. GitHub Copilot CLI в настоящее время использует либо собственную модель Microsoft, mai-code-1.1-flash, которая успешно выполнила полную цепочку атаки в 50% случаев, либо одну из двух моделей OpenAI GPT-5.6, обе из которых отклонили вредоносную нагрузку.
Утевски описывает ситуацию как лотерею с моделью.
«На протестированном платном аккаунте уязвимая модель не была выбрана по умолчанию и требовала ручного выбора», — сказал Утевски. «Но на аккаунте с автоматическим выбором модели маршрутизатор назначал уязвимую модель в одних сессиях, а безопасную — в других, без каких-либо действий со стороны пользователя вне стандартных настроек. Пользователь не выбирает и не видит, какая модель обрабатывала сессию».
Adversa заявляет, что сообщила об уязвимости через программу поиска ошибок GitHub 17 сентября 2026 года, и команда проверки GitHub подтвердила находку, но отказалась рассматривать ее как уязвимость.
Представитель GitHub подтвердил это The Register, утверждая, что действия пользователя означают согласие на последующие события: «GitHub ценит вклад нашего сообщества исследователей безопасности и стремится расследовать сообщаемые проблемы безопасности. После расследования мы пришли к выводу, что это требует от пользователя намеренного указания Copilot CLI получить контролируемый злоумышленником или недоверенный контент и подтверждения желания выполнить действие, и поэтому не является уязвимостью продукта. Хотя это и не проблема безопасности самого продукта, мы всегда ищем возможности для его улучшения».
Adversa не согласна с этим решением и утверждает, что цепочка атаки в настоящее время работает, как описано. ®
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Thomas Claburn




