В обновлённой версии ChatGPT Plus теперь доступен встроенный Python интерпретатор, облегчающий кодирование и позволяющий исполнять код в отдельной среде. Недостаток этой среды в её уязвимости, как подтверждает Аврам Пилч из Tom’s Hardware. Эта среда, используемая для работы с таблицами и диаграммами, до сих пор подвержена известным атакам.
Пользователи ChatGPT Plus, имеющие доступ к дополнительным функциям, могут эксплуатировать известный эксплойт, о котором рассказал эксперт по кибербезопасности Иоганн Ребергер. Этот метод включает в себя вставку ссылки на внешний ресурс в чат, которую бот обрабатывает как прямые команды пользователя.
В ходе использования ChatGPT, платформа создаёт новую виртуальную машину на Ubuntu для каждого сеанса. Путь к домашней папке - «/home/sandbox», а загруженные файлы сохраняются в «/mnt/data». Хотя ChatGPT Plus не предоставляет прямой доступ к командной строке, пользователи могут выполнять команды Linux в чате. Например, команда «ls» позволяет просмотреть файлы в «/mnt/data».
В одном эксперименте был загружен файл «env_vars.txt» с фиктивными данными ключа API и пароля. Затем использовалась веб-страница с инструкциями, заставляющими ChatGPT отправить данные из файлов в папке «/mnt/data» на контролируемый злоумышленником сервер. Веб-страница, демонстрирующая атаку «командной инъекции», при этом отображала реальный прогноз погоды.
Адрес «вредоносной» страницы был вставлен в чат, и ChatGPT реагировал, составляя сводку по её содержимому и выполняя «вредоносные» инструкции. В результате ChatGPT передал данные на внешний ресурс. Эксперименты показали, что ChatGPT иногда отказывается переходить на внешний ресурс или передавать данные, но в других случаях делает это.
Эта уязвимость кажется надуманной, но она реально существует, и ChatGPT не должен выполнять инструкции с внешних ресурсов, но всё ещё это делает.
Источник новости: habr.com