Next.js закрыл две критические уязвимости с удалённым выполнением кода

· Безопасность
Vercel выпустил внеплановые патчи для Next.js: одна брешь эксплуатируется через вредоносный AVIF-файл, другая — через обход пути на Windows-серверах. Обе позволяют выполнить код без аутентификации.

cover.svg

Компания Vercel выпустила исправления для двух критических уязвимостей во фреймворке Next.js. Обе позволяют неаутентифицированному злоумышленнику удалённо выполнить произвольный код. Патчи вошли в релизы Next.js 15.5.24 (Maintenance LTS) и 16.3.3 (Active LTS), опубликованные 25 августа 2026 года. Приложения, размещённые на самой платформе Vercel, защищены и в обновлении не нуждаются.

Обход пути на Windows

Первая уязвимость, CVE-2026-75604 (CVSS 9.0), затрагивает приложения, использующие одновременно Pages Router и App Router без Cache Components, при условии что сервер работает на файловой системе Windows. Развёртывания на Linux и macOS не подвержены. Обходного решения для затронутых Windows-хостов нет — Vercel настоятельно рекомендует немедленно обновиться. Механизм атаки в бюллетене не раскрыт. Уязвимы версии с 13.4 по 15.5.23 и с 16.0 по 16.3.2.

Переполнение буфера в AVIF

Вторая брешь (GHSA-2xp9-vwfh-vxw4, CVSS 9.5) связана с обработкой изображений. Next.js оптимизирует картинки через пакет sharp, который для разбора AVIF опирается на C-библиотеку libheif. В коде масштабирования libheif обнаружено переполнение кучи: специально сформированный AVIF-файл с вложенными ссылками заставляет библиотеку построить изображение с двумя альфа-каналами разной битности. Буфер выделяется под первую, 8-битную запись, но в него записываются 16-битные значения из второй — при этом за границей выделенной памяти перезаписывается около 16 384 байт.

Затронуты все версии libheif вплоть до 1.23.1; исправленной 1.23.2 на момент публикации ещё не вышло. Поэтому патченые релизы Next.js просто полностью отключают оптимизацию AVIF, пока не подоспеет апстрим-фикс. Уязвимость касается только сайтов, явно добавивших image/avif в настройки формата в next.config.js. Исследователи (rootxharsh и KarimPwnz из команды Hacktron) опубликовали Python-эксплойт, воспроизводящий повреждение кучи под address sanitizer, и утверждают, что добились выполнения кода на нескольких приложениях, хотя независимого подтверждения этому пока нет.

Контекст

Release перенесли на день раньше запланированного графика после того, как в одной из зависимостей нашли ещё одну критическую брешь. Это второй выпуск в рамках ежемесячной программы безопасности Vercel, анонсированной в июле 2026 года; июльский релиз закрыл девять уязвимостей. Компания прямо связывает рост числа находок с исследованиями при помощи больших языковых моделей.

За последние два года Next.js пережил череду критических раскрытий — от обхода авторизации в middleware в марте 2025-го до уязвимости десериализации React2Shell с максимальным баллом CVSS 10.0, которую начали активно эксплуатировать в считанные часы после публикации. По августовским брешам случаев эксплуатации на 27 августа 2026 года не зафиксировано.


Источник: The Hacker News

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.