31 октября 2026 г.
originValidator: дефолт MathLive принимает команды с любого сайта, в ChatGPT так прочли чужой чат
Жертве хватало открыть обычную ссылку-шару в залогиненном ChatGPT: OpenAI закрыла путь 26 октября и заплатила $5 000.

Исследователи прочитали приватный чат в ChatGPT, которым с ними никто не делился.
OpenAI закрыла этот путь 26 октября. Дефолт библиотеки, через которую он шёл, остался прежним: MathLive слушает postMessage с любого origin у каждого, кто поставил её себе.
Не хотите разбираться сами? Внедряем ИИ в ваш бизнес: задачи без лимита, одна цена в месяц, отмена в любой момент.
Что проверить, если MathLive стоит у вас
Закрывается одной строкой. Настройка originValidator по умолчанию стоит в "none", и слушатель виртуальной клавиатуры принимает postMessage с любого origin. Пропишите mathVirtualKeyboard.originValidator = "same-origin" или колбэк, который отклоняет чужие.
В CHANGELOG MathLive до последней версии 0.111.1 от 09.10.2026 нет записи про проверку origin в postMessage. Гайд по безопасности библиотеки разбирает CSP и Trusted Types, а слушатель клавиатуры остаётся открытым у всех, кто её поставил.
Как собиралась цепочка
MathLive принимал меняющее состояние сообщение update-setting, не проверяя, какой фрейм его прислал. Формат сообщения разрешал передать сырой HTML как раскладку клавиатуры, а этот HTML создавал несэндбоксенный документ с идентичностью chatgpt.com. Разметку в живую страницу клала функция createHTML, и она только выглядит санитайзером: помечает строку доверенной и пропускает HTML без изменений.
Чужой код в origin сайта. iframe внутри chatgpt.com вынимал access-токен и account ID из #client-bootstrap родительской страницы и дёргал авторизованные запросы к /backend-api/conversations. Авто-вариант воспроизвели трижды в отдельном аккаунте, алерт появлялся через 4,5 секунды.
CSP ChatGPT обошли через YouTube: домен www.youtube.com был разрешён в script-src-elem, а эндпоинт oEmbed отдаёт имя callback в теле ответа. Итоговый callback занял 5 533 символа.
Отчёт ушёл в bug bounty OpenAI 18 октября, 21-го компания воспроизвела путь и подняла приоритет с P2 до P1, 26-го оба фронтенда стали отвергать спорные сообщения. Восемь дней от отчёта до фикса. Пользователям ChatGPT делать нечего, все четыре урока автор адресует разработчикам.
Пока в CHANGELOG MathLive не появится запись про проверку origin, у новых установок дефолт остаётся тем же.
Первоисточник