Дыра в ChatGPT позволяла тайно переправлять данные Gmail жертвы в чужой аккаунт

· Безопасность
Исследователи Check Point показали, как одна вставленная в диалог инструкция заставляла ChatGPT незаметно работать на злоумышленника, вычитывая почту и историю переписки. Скрытым каналом стал внутренний сервис для установки пакетов.

cover.svg

Компания Check Point Research опубликовала отчёт, согласно которому единственная заранее подброшенная в диалог инструкция могла заставить ChatGPT втайне выполнять задание злоумышленника, продолжая при этом как ни в чём не бывало отвечать пользователю. В подготовленном исследователями сценарии скрытая работа считывала данные из подключённого аккаунта Gmail и передавала их во второй аккаунт ChatGPT по потайному каналу. В видимом ответе об этом не было ни слова. Тем же способом можно было выкачать историю чата и приложенные к разговору файлы.

Как это работало

Инструкцию требовалось поместить в диалог заранее — например, через текст, который пользователь сам вставляет, через открытую им общую ссылку на чужой чат или через кастомного GPT, где она пряталась в невидимых пользователю настройках. Дальше хватало одного обычного сообщения. В режиме рассуждений ChatGPT вёл два потока сразу: отвечал человеку и параллельно проверял «почтовый ящик» с заданием от атакующего, выполнял его инструментами текущей сессии и отправлял результат обратно. Единственным следом оставалась скромная пометка «Talked to Gmail» над ответом — она фиксировала уже состоявшееся чтение, не спрашивая разрешения.

По умолчанию так и задумано: документация OpenAI разрешает чтение из подключённых приложений без запроса, а подтверждения требуются лишь для действий с последствиями вовне. Пользователь может переключиться в режим «спрашивать всегда», а в корпоративных тарифах правами распоряжаются администраторы.

Метаданные вместо буфера обмена

Самое любопытное — природа канала. Контейнеры, в которых ChatGPT исполняет код для разных разговоров и даже разных аккаунтов, изолированы друг от друга и не имеют выхода в интернет. Но все они обращаются к одному внутреннему сервису — экземпляру JFrog Artifactory, который подтягивает нужные Python- и npm-пакеты вместо публичных репозиториев.

Этот сервис позволял привязывать к сохранённому файлу произвольные именованные свойства и читать их обратно. Учётных данных, лежавших прямо в переменных окружения, хватало и на запись таких свойств, причём они не разделялись по аккаунтам. Check Point прикрепила к файлу свойство с меткой времени из одного аккаунта — и получила его же в разговоре под другим. Текст можно кодировать в Base64 и дробить на несколько свойств, собирая на другом конце. Так метаданные пакетного сервиса превратились в общий буфер обмена между контейнерами, которым видеть друг друга не полагалось.

OpenAI подтвердила, что стоявший за каналом внутренний сервис отключён; никаких обновлений устанавливать не нужно. Это уже второй подобный канал из той же части ChatGPT, о котором сообщает Check Point: в марте описывался приём с DNS-запросами. Работа датирована июнём 2026 года, а срок, в течение которого лазейка оставалась открытой, в отчёте не указан.


Источник: The Hacker News

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.