CISA внесла уязвимость в каталог эксплуатируемых угроз
27 октября 2026 года Агентство по кибербезопасности и защите инфраструктуры США (Cybersecurity News) официально добавило критическую уязвимость выхода за границы буфера, получившую название Node2Shell (CVE-2026-111497), в свой каталог эксплуатируемых уязвимостей. Брешь затрагивает библиотеку сжатия Brotli от Google версий с 1.0.3 по 1.2.0. Федеральным ведомствам и администраторам предписано устранить угрозу до 10 ноября 2026 года после фиксации реального вредоносного трафика, атакующего серверы Node.js.
Компания Google присвоила данной уязвимости критический балл 9.2 по шкале CVSS 4.0 (Cybersecurity News). По данным исследователей безопасности, неаутентифицированный злоумышленник может использовать специально сформированный поток Brotli для повреждения памяти, утечки данных, аварийного завершения приложений или выполнения произвольного удаленного кода с правами учетной записи службы.
Технические механизмы дефекта декодера Brotli
Проблема кроется в неучтенном возвращаемом значении во вспомогательной функции декодера Brotli, которая некорректно обрабатывает недопустимые переключения блоков. Когда сжатый поток содержит неверную команду переключения, декодер ошибочно возвращает стандартный сигнал об отсутствии входных данных вместо кода ошибки.
Из-за этого несоответствия необработанные байты накапливаются во внутреннем буфере размером восемь байт и выходят за его пределы. Поскольку операция записи использует подписанное 32-битное смещение, злоумышленник может перезаписать соседние области памяти и перехватить управление процессом.
Исправление данной уязвимости было включено в исходный код upstream-репозитория под коммитом 0ed4268a, который принудительно возвращает корректный код ошибки BROTLI_DECODER_ERROR_FORMAT_BLOCK_SWITCH со значением -17, прерывая обработку поврежденных потоков. Тем не менее, как отмечают эксперты компании ELLIO, исправление находилось в публичной ветке master с февраля 2026 года без выпуска официальных релизов или бюллетеней безопасности около восьми месяцев.
Масштаб распространения и векторы атак
Уязвимость затрагивает версии Node.js 22.x, 24.x и 26.x, а также устаревшие ветки 20.x, 23.x и 25.x, которые больше не получат официальных исправлений. Исправленные версии включают Node.js 22.23.4, 24.22.1 и 26.12.1. Кроме того, уязвимы сборки Bun до версии 1.4.4, пакеты Python Brotli и brotlicffi, Envoy, Ruby-гем brotli и различные дистрибутивы Linux.
В зоне риска находятся любые приложения, автоматически распаковывающие входящий или исходящий трафик с кодировкой Brotli, включая популярные веб-фреймворки Express 5 и Koa, а также встроенные сетевые функции.
Компания Microsoft также выпустила внеплановые экстренные обновления для платформ .NET, Visual Studio и PowerShell после того, как команда Codex Security компании OpenAI сообщила об аналогичных векторах атак. Обновления затрагивают .NET версий 8, 9 и 10, а также .NET 11 Release Candidate 3.
Активное сканирование и попытки атак в реальных условиях
Системы мониторинга зафиксировали автоматизированное сканирование 26 октября 2026 года, за которым последовал первый подтвержденный вредоносный запрос. Эксперты отмечают, что большинство неудачных попыток эксплуатации приводят к падению рабочих процессов, что может создавать дампы памяти с потенциально конфиденциальными сессионными токенами.
Специалисты по безопасности подчеркивают, что злоумышленники активно исследуют инфраструктуру на предмет уязвимых сборок. По данным аналитиков Wiz, около 91% облачных сред содержат ресурсы, подверженные данному риску, а 82% имеют публично доступные экземпляры Node.js. Это требует незамедлительного вмешательства со стороны ИТ-специалистов.
Срочные меры по устранению и исправления
Специалисты рекомендуют незамедлительно обновить зависимости, пересобрать контейнеры и проверить актуальность релизов. Поскольку некоторые дистрибутивы Node.js включают исправления без изменения видимой строки версии, администраторам следует проверять точные номера сборок для предотвращения потенциальных атак.
До завершения полного цикла обновления рекомендуется ограничить или тщательно инспектировать входящие заголовки Content-Encoding на сетевых шлюзах, а также следить за появлением аномальных дампов памяти и записей в журналах серверов.

