Уязвимость ZombieAgent в ChatGPT позволяла красть данные без кликов через Gmail и GitHub с помощью скрытых подсказок

Изображение: Om siva Prakash (unsplash)
В ChatGPT обнаружена серьёзная уязвимость, позволявшая атакующему получать доступ к конфиденциальным данным пользователя — от писем в Gmail до файлов в Google Drive. Как выяснилось, для запуска атаки не требовалось даже кликов со стороны жертвы. Новый метод, получивший название ZombieAgent, был выявлен исследователем безопасности Цвикой Бадо из компании Radware. Информация об этом была передана OpenAI через платформу BugCrowd ещё в сентябре 2025 года, а патч был выпущен только в декабре. 8 января Radware опубликовала подробный отчёт об инциденте.
Уязвимость связана с внедрением так называемых агентов — функций, которые позволяют ChatGPT подключаться к внешним сервисам вроде Outlook, Gmail, GitHub и облачных хранилищ. Эти возможности предоставляют удобство пользователю, но при этом открывают дополнительные векторы для злоупотреблений.
Исследователи установили, что в определённых условиях ChatGPT-агенты могли быть вынуждены выполнить скрытые команды, встроенные в текст или HTML-документ. Команды не отображались пользователю — они прятались в виде белого текста на белом фоне, применялись микрошрифты и иные уловки визуального сокрытия. Одна из атак заключалась в том, что агент Deep Research загружал электронное письмо, содержавшее специально оформленные подсказки, а затем открывал стороннюю ссылку с утечкой данных в URL-параметрах.
Такой тип атаки, получивший обозначение ShadowLeak, позволял обойти локальные системы мониторинга, поскольку утечка происходила на стороне облака — из инфраструктуры OpenAI. В результате действия агента, например, адрес электронной почты пользователя, содержимое письма или фрагменты из GitHub могли быть переданы злоумышленнику без каких-либо визуальных признаков для жертвы.
После получения отчёта, OpenAI изменила поведение системы — было введено ограничение, согласно которому ChatGPT больше не может модифицировать URL-адреса перед открытием. Теперь адреса загружаются только в оригинальном виде, без возможности добавления параметров через встроенные подсказки. Эти меры должны были остановить утечку данных, завязанную на модификацию ссылок через изображения или Markdown-синтаксис.
