ИБ-исследователь Саймон Кёк из Австрии выявил критическую уязвимость удалённого выполнения кода (RCE) на порталах экосистемы Google DevSite и получил за отчёт вознаграждение в размере $90 000.
При обращении к OAuth-эндпоинту
/oauth2authorize на developers.google.com сервер устанавливал сессионную куку Flask нетипично большого размера, около 1200 байт. Исследователь распаковал сжатие zlib и обнаружил внутри сериализованный объект Python, в котором в открытом виде содержался секрет клиента client_secret.Главная проблема заключалась в том, что этот же секрет был задан в приложении как переменная
SECRET_KEY для формирования подписи сессии. Библиотека itsdangerous формирует подпись на базе алгоритма HMAC-SHA1. Извлечённый секрет позволил исследователю автономно рассчитывать валидную подпись для любых произвольных данных, в результате чего сервер безоговорочно принимал поддельные сессии. На этапе возврата ответа авторизации серверный бэкенд считывал состояние сессии и передавал полезную нагрузку в небезопасный десериализатор pickle.loads(...). В формате Python Pickle опкод REDUCE вызывает указанную функцию с переданными аргументами, поэтому наличие валидной подписи превратило подделку куки в прямое RCE без аутентификации. Для безопасного доказательства концепции исследователь передал объект с методом __reduce__, вызывающим time.sleep(N). Сервер выполнял команду и удерживал соединение ровно заданное число секунд.Поскольку платформа DevSite является общей для всей документации Google, скомпрометированный ключ позволял подписывать сессии сразу для семи доменов, включая 🤦♂️
firebase.google.com и developer.android.com. Инженеры Google устранили уязвимость четырьмя шагами: отозвали скомпрометированные ключи OAuth, выделили для каждого сервиса изолированный серверный SECRET_KEY, перенесли хранение сессий на бэкенд и полностью исключили использование pickle при обработке входящих данных.🕔Хронология событий и вознаграждение📢
▪️6 августа 2026 года исследователь отправил технический отчёт в команду Google Bug Hunters.
▪️7 августа 2026 года отчёт прошёл первичную обработку, и в 16:23 инженеры подтвердили наличие критической проблемы.
▪️27 августа 2026 года вендор утвердил итоговую выплату за уязвимость класса S0 RCE на сервисах категории T2. К базовой ставке в $75 000 был применён коэффициент 1,2 за образцовое качество отчёта, что довело сумму награды до $90 000.
▪️7 октября 2026 года все защитные патчи были развёрнуты на серверах компании.
▪️12 октября 2026 года автор опубликовал открытый отчёт после полного устранения угрозы.
✋ @Russian_OSINT
