Исследователи Check Point Research описали уязвимость, при которой ИИ-агенты ChatGPT могли переносить данные между разными учетными записями. Такой сценарий получил название «вынужденный инсайдер» (coerced insider). Для его реализации злоумышленнику требовалось заставить агента выполнить определенные действия через специально подготовленные инструкции.
При задачах, где необходимо запускать код, ChatGPT использует изолированные контейнеры. Дополнительное программное обеспечение для них загружалось не напрямую из интернета, а через внутренний экземпляр JFrog Artifactory. Хотя контейнеры пользователей были отделены друг от друга, им оставался доступен общий внутренний механизм работы с объектами репозитория.
Этот механизм позволял сохранять у объектов текстовые или бинарные свойства. Оказалось, что свойства, созданные одним контейнером, могли быть прочитаны другим. По данным Check Point Research, такую особенность можно было превратить в скрытый канал для передачи команд и полученных данных.
Атакующий мог подготовить запрос или совместный чат так, чтобы агент проверял это внутреннее хранилище. Обнаружив оставленную там инструкцию, агент выполнял ее, не прекращая обычного диалога с пользователем. Во время демонстрации исследователи добились извлечения информации из Gmail одного пользователя с последующей передачей условному злоумышленнику.
Потенциальный объем доступной информации увеличивался при подключении к агенту внешних сервисов, включая Gmail, Google Диск, Microsoft Teams и GitHub. После получения сообщения об уязвимости OpenAI подтвердила вывод соответствующего экземпляра Artifactory из эксплуатации. После этого описанный исследователями вектор атаки оказался закрыт.