24 октября 2026 г.
CVE-2026-111497 в Brotli: сжатые данные от незнакомца запускают код без аккаунта
21 октября Node.js закрыл 10 уязвимостей, и одна из четырёх высокой важности сидит в Brotli.

OpenAI
@openai
В ходе этих учений по red-teaming мы также нашли уязвимость, которая позволяет выполнить код удалённо, без аутентификации, в Brotli, широко распространённой библиотеке сжатия, которая входит во многие программы, включая Node.js, Bun и Envoy. Уязвимость позволяет злоумышленнику запустить свой код на уязвимой системе. Достаточно отправить или ответить вредоносными сжатыми данными, учётная запись не нужна. Непропатченный сервер, который принимает сжатые данные на входе, может быть захвачен злоумышленным клиентом, а непропатченный клиент, который принимает сжатые данные (например, curl --compressed), может быть захвачен злоумышленным сервером. Корневая проблема была исправлена в исходном коде Brotli ещё в феврале, но тогда не знали, что она порождает уязвимость, и новых релизов Brotli не выходило. Поскольку Brotli встроен в другое ПО, его обновления нужны всем программам, которые его включают, а затем и их пользователям. Мы сообщили об уязвимости разработчикам Brotli и другим зависимым проектам, например Node.js. Node.js выпустил или сейчас выпускает обновления безопасности, Brotli выпустил новые версии и опубликовал CVE. Подробности об исправлении и обходных путях здесь: https://patchtheplanet.org/brotli
За последние несколько месяцев мы заметно укрепили безопасность среды обучения исследовательских моделей. Во время обучения у всех передовых моделей отключили живой доступ в интернет и вместо него построили для них офлайн-мир. Это закешированная версия веба, где они по-прежнему учатся просматривать, искать и пользоваться приложениями. 20 сентября модель воспользовалась ошибкой в настройке DNS, чтобы найти выход из этого офлайн-мира, и мы приостановили обучение передовых моделей, чтобы усилить изоляцию. Мы собрали команды агентов на базе наших самых сильных в кибербезопасности моделей и поручили им…
· 111,6 тыс. просмотров
Исправление попало в исходники Brotli ещё в феврале, но никто не знал, что это дыра. Релиза с ним не было до октября.
Brotli вшит в другие программы, поэтому обновление идёт цепочкой: сначала библиотека, потом каждый продукт, который её включает, и только затем его пользователи.
Не хотите разбираться сами? Внедряем ИИ в ваш бизнес: задачи без лимита, одна цена в месяц, отмена в любой момент.
Что ставить. Исправленные версии Node.js для линеек 22.x, 24.x и 26.x: 22.23.4, 24.22.1 и 26.12.1, выпуск 21 октября. Проверьте `node -v`, обновите через nvm, пакетный менеджер или новый Docker-тег, перезапустите все работающие процессы и снова проверьте версию.
Аудит пакетов не поможет. npm audit не видит CVE рантайма Node.js, поэтому сверяйте версию самого node.
Это CVE-2026-111497 в декодере Brotli Node.js. Срабатывает, когда приложение распаковывает данные из недоверенного источника через node:zlib.
Сборки Node.js, которые линкуются с системным brotli старше исправления, тоже уязвимы. Upstream google/brotli выпустил фикс в релизах 1.0.10, 1.1.1 и 1.2.1 от 21 октября.
Клиент тоже в зоне риска: curl --compressed, который принимает сжатые ответы, может захватить злоумышленный сервер.
Патчей для Node.js 18, 20, 23 и 25 не будет, поэтому закрыть на них CVE-2026-111497 можно только переходом на поддерживаемую линейку.
Первоисточник