VMTech
Обсудить проект →

Next.js исправила две критические RCE-уязвимости и DoS-ошибку

Next.js исправила две критические RCE-уязвимости и DoS-ошибку

Vercel выпустила внеплановое обновление Next.js 16.4.1 и 15.5.28, закрывающее две критические уязвимости удалённого выполнения кода с оценкой CVSS 9,5 и одну ошибку отказа в обслуживании. Исправления предназначены для актуальных LTS-веток: 16.4.1 для Next.js 16 и 15.5.28 для Next.js 15.

Одна критическая проблема затрагивает React Server Components и механизм use cache, вторая связана с обработкой SVG через пакет sharp и библиотеку librsvg. DoS-уязвимость касается Server Actions в приложениях с App Router.

Какие приложения находятся под риском

Ошибка выполнения кода через use cache затрагивает Next.js 16.0.0–16.4.0. Для эксплуатации требуется приложение с включёнными Cache Components, в котором функция use cache возвращает более одного типизированного массива. React указывает, что сценарий возникает в крайне редких случаях, когда ответ переносит несколько typed arrays и значение контролируется атакующим.

Vercel рекомендует обновиться даже тем командам, которые не нашли такую функцию в своём коде. Исправление доступно в Next.js 16.4.1; ветка 15 этой проблеме не подвержена.

Вторая RCE-уязвимость получила идентификатор CVE-2026-96889. Это ошибка работы с памятью в librsvg, которую Next.js использует через bundled-пакет sharp. Она затрагивает Next.js 10.0.0–15.5.27 и 16.0.0–16.4.0, если приложение работает на Linux с glibc и передаёт в sharp SVG-файлы, контролируемые атакующим.

SVG, оптимизатор изображений и next/og

По умолчанию Next.js не оптимизирует SVG. Путь через image optimizer становится доступен после включения параметра dangerouslyAllowSVG. librsvg также используется при генерации изображений для соцсетей через next/og, если эта функция исполняется в среде Node.js.

Next.js 16.4.1 содержит sharp 0.35.5 с исправленной librsvg 2.63.2. Для ветки 15 одной установки Next.js 15.5.28 может оказаться недостаточно: она допускает уязвимый sharp 0.34.x, который способен сохраниться после обновления существующей установки. Командам следует выполнить npm ls sharp и обновить пакет до версии 0.35.5 или новее.

Если обновление Next.js временно невозможно, для SVG-проблемы есть промежуточная мера: установить sharp 0.35.5 либо запретить загрузку SVG в sharp через sharp.block({ operation: ["VipsForeignLoadSvg"] }). Для уязвимостей в use cache и Server Actions обходных мер нет.

Отказ в обслуживании и порядок действий

DoS-ошибка затрагивает App Router-приложения, где определён хотя бы один Server Action. Специально сформированные запросы могут загрузить один серверный процесс до 100% CPU и лишить его возможности обслуживать другие запросы. Pages Router и приложения без Server Actions этой проблеме не подвержены.

Для устранения проблемы нужно обновить Next.js до 16.4.1 или 15.5.28, затем пересобрать и повторно развернуть приложение. На 15-й ветке необходимо отдельно проверить версию sharp. На 15 октября публичных сообщений об эксплуатации трёх исправленных уязвимостей не было, а предупреждения по use cache и Server Actions ещё не отображались в ленте npm advisory, которую использует npm audit.

Практический вывод для бизнеса: обновление следует включить в ближайшее окно релиза, а инвентаризацию стоит начать с App Router, Server Actions, Cache Components и потоков обработки внешних SVG. Обычной проверки через npm audit для этих двух проблем недостаточно.

#nextjs#websecurity#remotecodeexecution#devsecops
Открытая аналитика
На сайте 0 просмотров
мин чтения 4 15.10.2026
Instagram

Next.js исправила две критические RCE-уязвимости и DoS-ошибку

Открыть публикацию в Instagram ↗