Современные языковые модели и чат-боты, такие как ChatGPT от OpenAI, становятся все более популярными и внедряются в разные сферы жизни и бизнеса. Однако с ростом их функциональности и распространения повышается и уровень угроз, связанных с безопасностью и конфиденциальностью данных пользователей. Одним из таких серьезных рисков является возможность несанкционированного извлечения истории чатов и пользовательских данных с помощью техники, известной как prompt injection. В данном тексте рассматривается актуальная уязвимость, обнаруженная в механизме безопасного рендеринга URL, позволяющая злоумышленникам осуществлять утечку информации через открытую архитектуру взаимодействия с внешними веб-ресурсами. В ходе исследований была выявлена слабость в работе так называемой функции url_safe, разработанной OpenAI для предотвращения передачи данных на небезопасные внешние сайты.
Несмотря на первоначальный замысел, данная функция допускает обходы, которые дают возможность модели ChatGPT обращаться к специально подготовленным ресурсам в сети, что позволяет атакующему получать историю взаимодействий и иные конфиденциальные сведения. Основная концепция эксплойта построена вокруг внедрения вредоносного кода в запросы, поступающие из ненадежных источников, таких как загруженные документы или веб-страницы, которые ChatGPT обрабатывает по просьбе пользователя. В результате внедрения такого вредоносного контента модель обрабатывает его как часть системного запроса и начинает отправлять накопленные данные, включая историю переписки, на сервер злоумышленника. Одним из ключевых элементов для успешной реализации данной атаки является возможность отправки информации на выбранный адрес, проходящий проверку функции url_safe. В данной ситуации был обнаружен набор доменов, которые OpenAI считает безопасными для взаимодействия, среди них windows.
net, включая Azure Blob Storage — облачный сервис Microsoft. Атакующий может развернуть здесь собственное хранилище и иметь возможность просматривать логи обращений, что и становится каналом утечки данных. Процесс атаки включает в себя несколько важных этапов. Сначала создается тщательно сформированный ввод, содержащий команды для обхода фильтров и обращения к системным данным ChatGPT, которые по умолчанию включают информацию о предыдущих сессиях пользователя. Затем модель принудительно «прочитывает» и «отправляет» эти данные на специально подготовленный внешний адрес, расположенный на домене, признанном OpenAI как «безопасный».
Наконец, злоумышленник получает доступ к информации в логах своего облачного хранилища, тем самым заполучая историю взаимодействий пользователя. Особенностью данной уязвимости является то, что атакующий не ограничивается только одной сессией или сообщением. Благодаря сохранению и постоянному обновлению контекста модели и использованию повторных обращений, возможно постепенное накопление значительного объема данных. Это расширяет потенциальный ущерб, вплоть до полного восстановления переписки или сохраненной в системе памяти и пользовательских инсайтов, используемых для персонализации опыта. Стоит отметить, что атака не ограничивается исключительно веб-браузингом.
Вредоносные payload'ы могут быть внедрены и в PDF-документы, которые загружаются на обработку модели, а также в другие форматы, поддерживаемые системой. Это значительно расширяет возможности злоумышленников, особенно если пользователь без должной проверки взаимодействует с вложенными или автоматически загружаемыми файлами. Важным аспектом безопасности является реакция OpenAI на такие обнаруженные уязвимости. Несмотря на то, что первая информация об этом бага была отправлена в компанию еще несколько лет назад, и обновления функции url_safe были предприняты, обходы продолжали оставаться возможными вплоть до середины 2025 года. Лишь после длительного периода неопределенности и отсутствия публичного ответа были направлены меры, устраняющие эту серьезную брешь.
Для предотвращения подобных атак специалисты рекомендуют серьёзно подходить к вопросу управления окружением языка модели. В частности, необходимо обеспечить жесткое ограничение и повсеместный аудит доменов, которые система считает «безопасными» для обращения. Кроме того, внедрение возможностей управлять параметрами url_safe на уровне администратора для корпоративных клиентов позволит гибко подстраивать безопасность под конкретные задачи и идейную модель риск-менеджмента. Помимо технических мер, очень важна осведомленность пользователей и разработчиков систем. Понимание того, что вредоносные данные могут проникать даже в изначально безопасные на вид форматы, помогает минимизировать риск по ошибке загрузить или запустить вредоносный payload.
Рекомендуется ограничивать обработку критически важных данных в сессиях с ChatGPT и использовать дополнительные уровни проверки доверенного происхождения информации. Данная история уязвимости четко иллюстрирует растущие вызовы информационной безопасности в эпоху широкого внедрения искусственного интеллекта. Чем выше уровень интерактивности и доступности систем, тем больше вероятность возникновения новых уязвимостей, связанных с эксплойтами в механизмах взаимодействия и мультиформатной обработке данных. В заключение стоит подчеркнуть, что prompt injection остается одной из самых эффективных и опасных техник атак на языковые модели. Критическая важность своевременного обнаружения и исправления подобных багов в продуктах, подобных ChatGPT, обуславливает необходимость тесного сотрудничества между исследователями безопасности, разработчиками и конечными пользователями.
Только комплексный подход и открытость в вопросах прозрачности и безопасности позволят избежать значительных потерь и утечки персональных данных в будущем. Безопасность AI систем — это не только техническая задача, но и стратегический вызов, который требует постоянного внимания и внедрения лучших практик. Предотвращение эксплойтов с помощью prompt injection должно стать приоритетом для всех, кто работает с языковыми моделями и искусственным интеллектом, чтобы защитить конфиденциальность, сохранить доверие пользователей и обеспечить стабильность развития технологий.