Ранее OpenAI использовала интерфейсную модель Canvas, однако ее последняя версия — предпросмотр HTML — содержала архитектурный изъян, ставивший под угрозу безопасность родительской страницы. Согласно отчету Parameter Labs, эксплойт к реализации концепции артефактов от OpenAI показал, что интерактивные кастомные HTML-приложения внутри изолированного фрейма iframe способны выходить за пределы песочницы. Данный инцидент подчеркивает: сложные интерактивные компоненты внутри генеративных платформ создают критические точки входа для несанкционированного доступа к аккаунтам.

Архитектурные компромиссы при рендеринге интерактивных артефактов несут прямые риски, когда изолированные фреймы взаимодействуют с базовыми функциями платформы. OpenAI устранила уязвимость и выплатила $5 000 в рамках программы bug bounty исследователям, задокументировавшим цепочку атаки. Несмотря на ликвидацию бреши, цепочка ошибок наглядно продемонстрировала механизмы взаимодействия недоверенного кода с родительским интерфейсом и API OpenAI.

Ошибка postMessage и побег из песочницы

Уязвимость возникла из-за особенностей обработки утилит фронтенд-рендеринга. В рамках поддержки графиков OpenAI использует JavaScript-библиотеку MathLive, содержащую собственную виртуальную клавиатуру. Этот компонент клавиатуры мог запускаться на родительской странице через вызовы postMessage() прямо из изолированного iframe.

Поскольку код приема сообщений использовал метод innerHTML, любой источник, способный отправить сообщение, мог внедрить произвольный HTML-код в родительский контейнер. Главная проблема заключалась в отсутствии механизма, блокирующего другим изолированным фреймам (включая фреймы предпросмотра HTML) вызов этого метода приема сообщений.

«Код приема сообщений использует innerHTML, поэтому любой отправитель сообщения может добавить произвольный HTML в родительский контейнер — и не существовало механизма, запрещающего другим изолированным фреймам, включая фреймы предпросмотра HTML, вызывать этот метод».

Хотя сам по себе innerHTML напрямую не исполняет элементы script, он позволил исследователям внедрить новый iframe, полностью свободный от ограничений песочницы.

Обход Content Security Policy через YouTube

Для выполнения произвольного кода злоумышленникам требовалось обойти защитные конфигурации OpenAI. Политика CSP платформы полностью блокировала встроенные скрипты и строго ограничивала загрузку внешних скриптов небольшим списком разрешенных доменов. Однако одним из таких доверенных доменов оказался YouTube.

Специалисты Parameter Labs выяснили, что эндпоинт oEmbed на YouTube можно использовать для отражения JavaScript таким образом, чтобы он выполнялся в контексте родительской страницы. Получив возможность исполнять JavaScript в ChatGPT, атакующие могли беспрепятственно запрашивать приватные данные пользователей через бэкенд-API и выводить информацию через подгрузку изображений.

«Правила CSP OpenAI полностью блокировали встроенные скрипты и разрешали их загрузку лишь с нескольких доменов, одним из которых был YouTube — а эндпоинт oEmbed на YouTube можно было использовать для отражения JavaScript с последующим выполнением».

С помощью этого механизма злоумышленник мог сгенерировать специальную публичную ссылку на диалог в ChatGPT. Переход авторизованного пользователя по такой ссылке приводил к незаметной утечке его конфиденциальных данных или совершению несанкционированных действий от имени жертвы.

Устранение проблемы и вопросы к инфраструктуре

Закрытие отчета об ошибке и выплата вознаграждения в размере $5 000 указывают на то, что локальная уязвимость была устранена без фундаментальной переработки архитектуры предпросмотра HTML. 5 октября 2026 года OpenAI анонсировала новый формат визуальной рекламы в ChatGPT, ориентированный на еженедельную аудиторию в 1,2 млрд пользователей, что подчеркивает растущий масштаб взаимодействия аудитории с динамическими функциями сервиса.

Остается открытым вопрос, насколько выплата в $5 000 гарантирует надежную защиту песочниц интерактивного HTML от схожих уязвимостей через postMessage и отражение эндпоинтов.

Для сравнения

Изолированная песочница для кода должна защищать ChatGPT от взлома, но именно ее интерактивность открыла прямой доступ к приватным данным через API сервиса. Любая попытка превратить текстовый чат в полноценную среду исполнения приложений неизбежно умножает скрытые точки отказа на родительской странице. Сумеет ли платформа сохранить безопасность 1,2 млрд пользователей при внедрении динамических форматов без полного отказа от сторонних библиотек рендеринга?

OpenAIКибербезопасностьБезопасность ИИГенеративный ИИБезопасность LLM