Зашифрованные инструкции обманом заставили Copilot CLI раскрыть секреты разработчиков

Github Copilot безопасность уязвимость Cci ии csoonline.com

Обнаружена уязвимость в GitHub Copilot CLI: читайте конфиденциальные файлы и отправляйте их злоумышленникам через зашифрованный контент. Узнайте, как работает атака CCI и какие модели подвержены риску.

GitHub Copilot CLI может быть использован для чтения конфиденциальных файлов с машины разработчика и отправки их содержимого злоумышленнику с одной веб-страницы.

Исследователи безопасности из Adversa AI заявили, что новая техника атаки, получившая название Cryptographic Context Injection (CCI), скрывает вредоносные инструкции внутри зашифрованного контента. Эти инструкции рассматриваются как доверенный контекст, когда Copilot CLI расшифровывает контент, используя свою собственную среду выполнения кода, что позволяет им влиять на дальнейшие действия агента.

В ходе демонстрации исследователи Adversa заставили Copilot прочитать файл «.env.prod», содержащий секреты, и отправить его содержимое на управляемый злоумышленником конечный узел. «Полная цепочка: 28 секунд, без подтверждения и без указания в журнале назначения хоста или того, что содержимое файла покинуло машину», — сообщил исследователь в блоге.

По данным Adversa, атака не является универсальным компромиссом в один клик, поскольку требует, чтобы Copilot CLI работал в режиме автопилота, и модель была готова выполнить расшифрованные инструкции. GitHub подтвердил находку, но отказался рассматривать ее как уязвимость, заявив, что пользователь явно попросил Copilot получить контент, контролируемый злоумышленником, предоставив полные разрешения на автономные действия.

«Они отметили, что в будущем могут ужесточить функциональность, но пока ничего не могут объявить, и исключили отчет из программы вознаграждений за обнаружение уязвимостей GitHub», — сообщили в Adversa. Исследователи оспорили эту оценку, утверждая, что она не объясняет, почему Copilot отклоняет те же инструкции, представленные в открытом тексте, но принимает их после шифрования и расшифровки в своей среде выполнения.

GitHub не сразу ответил на запрос CSO о комментарии.

Шифрование делает атаку возможной

Атака может начаться с того, что пользователь запускает Copilot CLI и просит его получить URL, пояснили исследователи. Страница будет содержать зашифрованные инструкции, которые затем агенту будет предложено расшифровать с использованием двух возможных ключей.

Один из этих ключей является легитимным, а другой — шаблоном, который может быть заполнен только путем чтения файлов с локальной машины. Цепочка атаки продолжается попыткой агента подготовить оба ключа, читая целевые файлы и добавляя их содержимое в шаблон.

Само чтение файла является фактической кражей.

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

Модель определяет успех атаки

Однако выбор модели Copilot может изменить результат.

Исследователи сообщили, что модель Microsoft mai-code-1.1-flash выполнила полную цепочку в 50% их запусков, в то время как две модели GPT-5.6, предлагаемые через Copilot, последовательно отклоняли тот же полезный груз. При установке модели в режим Auto, по утверждению Adversa, уязвимая модель назначалась в некоторых сеансах без выбора или ведома пользователя, какая модель обрабатывает рабочий процесс.

Хотя GitHub отказывается признавать это недостатком или исправлять базовое поведение, Adversa советует защитникам искать любые подозрительные последовательности действий вокруг зашифрованного полезного груза: недоверенный веб-контент поступает в агент, выполняется код, читаются локальные файлы, и агент впоследствии устанавливает несвязанное исходящее соединение.

Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.

В тренде:


Похожие новости: