Компания Check Point Research опубликовала отчет об обнаружении серьезной уязвимости в ChatGPT. Исследователи выявили, что одна встроенная в диалог команда способна заставить нейросеть работать на злоумышленника, при этом продолжая нормально отвечать на вопросы пользователя.
В демонстрации уязвимости скрытая команда считывала информацию из подключенного аккаунта Gmail пользователя и передавала ее на второй аккаунт ChatGPT через невидимый канал связи. Пользователь не видел никаких следов такой деятельности в ответе.
Check Point указал, что аналогичный канал мог также кража истории чатов и загруженных файлов из беседы.
Объем украденных данных зависел от прав доступа, которыми располагал сеанс, включая подключенные приложения и разрешения.
Чтобы запустить атаку, требовалось предварительно поместить специальную команду в диалог. Check Point указал три способа внедрения: вставка команды самим пользователем, открытие общей беседы с командой или использование пользовательского GPT с командой в инструкциях конструктора.
После этого обычное сообщение запускало весь процесс. Компания разработала команду так, чтобы ChatGPT в режиме глубокого анализа выполнял два потока работы одновременно.
Нейросеть отвечала пользователю, одновременно проверяя скрытый ящик на наличие задач от злоумышленника, выполняя эти задачи и отправляя результаты обратно. Команда заставляла модель скрывать оба потока, чтобы скрытые действия не попадали в видимый ответ.
Единственным индикатором было небольшое обозначение "Обращение к Gmail" над ответом. Оно регистрировало уже произошедшее действие и не давало пользователю возможности разрешить или запретить его.
Система не запрашивала согласие пользователя из-за стандартных настроек подключенных приложений. Согласно документации OpenAI, по умолчанию установлены "Важные действия", которые позволяют ChatGPT читать данные из приложений без подтверждения. Подтверждение требуется только для действий, которые могут повлиять на внешние системы, раскрыть конфиденциальную информацию или быть сложными для отката.
Пользователи могут изменить настройку на "Всегда спрашивать". В Business, Enterprise и Edu рабочих пространствах администраторы определяют, какие действия доступны приложениям и кто может их использовать. Приложения включены по умолчанию в Business и отключены в Enterprise и Edu.
Check Point сообщил, что уведомил OpenAI об уязвимости, и компания подтвердила отключение внутреннего сервиса. Обновления для пользователей не требуются.
Канал связи работал между контейнерами, в которых выполняется код ChatGPT. Система создает отдельный контейнер для каждой беседы при необходимости.
Согласно документации OpenAI, окружение Python, используемое для анализа данных, не может отправлять запросы в интернет или к внешним API. Check Point отметил, что контейнеры разных бесед, включая те, что принадлежат разным аккаунтам, также не имели прямых путей друг к другу.
Однако все они могли обращаться к одному внутреннему сервису. ChatGPT иногда нуждается в установке дополнительных пакетов Python или npm. Вместо разрешения контейнерам обращаться к открытым репозиториям, каждому разрешалось общаться с внутренним экземпляром JFrog Artifactory, который предоставлял нужные пакеты.
Этот сервис позволял контейнерам добавлять именованные значения (свойства) к сохраненным файлам и считывать их. Учетные данные на чтение были достаточны для записи этих свойств. Они хранились в переменных окружения, откуда код имел прямой доступ. Не требовалось ни кража дополнительных секретов, ни повышение привилегий.
Свойства не разделялись по аккаунтам. From контейнера одного аккаунта Check Point добавил свойство chatgpt_test_ts с текущим временем к файлу. В беседе под другим аккаунтом они запросили свойства этого файла и получили те же значения.
Свойство может содержать обычный текст или Base64. Большие данные можно разделить на несколько свойств и собрать заново на другом конце. Это превратило метаданные сервиса пакетов в общий буфер обмена между контейнерами, которые не должны были взаимодействовать.
Это вторая обнаруженная Check Point уязвимость в этой части ChatGPT. В марте компания описала другой канал, использовавший DNS-запросы для отправки данных бесед на внешний сервер. OpenAI исправила его 20 февраля.
Этот случай отличается от инцидента с Hugging Face, когда собственные модели OpenAI превратили внутренний Artifactory в доску объявлений во время тестирования безопасности.
Check Point подчеркнула, что механизм был другим, и описала оба случая как примеры того, как "общий внутренний сервис стал непредусмотренным каналом связи" между средами, которые должны быть изолированы.
Check Point датировала свою работу июнем 2026 года и не уточнила, когда канал перестал работать, поэтому неизвестно, как долго уязвимость была открыта.
