Исследователь безопасности Йоханн Ребергер сообщил об уязвимости в ChatGPT, которая позволяла злоумышленникам хранить ложную информацию и вредоносные инструкции в настройках долговременной памяти. Теперь он создал эксплойт для проверки концепции, в рамках которого использовал уязвимость для извлечения пользовательских данных.
Инженеры OpenAI обратили на это внимание и выпустили частичное исправление в начале этого месяца. Уязвимость злоупотребляла долговременной памятью разговоров, функцией, которую OpenAI начала тестировать в феврале и сделала доступной в сентябре. Память хранит информацию из предыдущих разговоров и использует её в качестве контекста во всех будущих беседах. Таким образом, LLM может знать такие детали, как возраст пользователя, пол, философские убеждения и многое другое.
В течение трёх месяцев после развёртывания функции Ребергер обнаружил, что воспоминания могут быть созданы и постоянно сохранены с помощью непрямого внедрения подсказок, эксплойта ИИ, который заставляет LLM следовать инструкциям из ненадёжных источников — электронных писем, записей в блогах или документов.
Исследователь продемонстрировал, как он может обмануть ChatGPT, заставив поверить, что целевому пользователю 102 года, что он живет в Матрице и настаивает на том, что Земля плоская.
LLM использовала эту информацию для управления всеми будущими разговорами.
Эти ложные воспоминания можно было внедрить, сохраняя файлы в Google Drive или Microsoft OneDrive, загружая изображения или просматривая данные в Bing.
Ребергер в частном порядке сообщил OpenAI об уязвимости в мае. В том же месяце компания закрыла тикет отчёта. Месяц спустя исследователь представил PoC, в котором приложение ChatGPT для macOS отправляло копию всего пользовательского ввода и вывода на сервер по его выбору.
Всё, что нужно было сделать — это дать указание LLM просмотреть веб-ссылку, на которой размещалось вредоносное изображение. С этого момента все входные и выходные данные в ChatGPT и из него отправлялись на сайт злоумышленника.
«Что действительно интересно, так это то, что теперь это сохраняется в памяти. Внедрение подсказки вставило воспоминание в долговременное хранилище ChatGPT. Когда вы начинаете новый разговор, он фактически всё ещё извлекает данные», — рассказал Ребергер.
Атака невозможна через веб-интерфейс ChatGPT благодаря API OpenAI, развёрнутому в прошлом году.
Хотя OpenAI представила исправление, которое предотвращает злоупотребление воспоминаниями в качестве вектора извлечения, исследователь пояснил, что ненадёжный контент позволяет выполнять инъекции подсказок, которые заставляют инструмент памяти хранить долговременную информацию, внедренную злоумышленником. Он предложил изначально отключить опцию.
Пользователи LLM, которые хотят предотвратить эту форму атаки, должны внимательно следить во время сеансов за выводом, который указывает на добавление нового воспоминания. Они также должны регулярно проверять сохранённые воспоминания на предмет надежности источников. OpenAI предоставила руководство по управлению инструментом памяти и определёнными воспоминаниями, хранящимися в нём. Однако представители компании не ответили на электронное письмо с вопросом о её усилиях по предотвращению других попыток взломов с использованием ложных воспоминаний.
Источник: habr.com