Уязвимость в NGINX позволяет вызвать сбой worker-процесса и потенциально выполнить код

Уязвимость в NGINX позволяет вызвать сбой worker‑процесса и потенциально выполнить код

Она получила обозначение CVE‑2026‑42945 и оценку 8,1 по шкале CVSSv3
15 мая 2026 г.

В NGINX Open Source и NGINX Plus обнаружена уязвимость CVE‑2026‑42945, также известная как NGINX Rift. Она затрагивает модуль ngx_http_rewrite_module и связана с переполнением буфера в куче при обработке определенных правил rewrite.

Уязвимость может быть использована удаленным неаутентифицированным злоумышленником с помощью специально сформированного HTTP‑запроса. В результате возможен сбой worker‑процесса NGINX и его перезапуск. В системах с отключенной ASLR также возможно выполнение кода.

Как эксплуатируют уязвимость
  • Уязвимость удаленная и не требует аутентификации.
  • Для эксплуатации злоумышленнику нужен сетевой доступ к HTTP‑сервису на базе NGINX и наличие уязвимой конфигурации rewrite.
  • Проблема возникает, когда директива rewrite использует безымянные PCRE‑группы, например $1 или $2, содержит знак вопроса (?) в строке замены и после нее в той же области конфигурации следует еще одна директива rewrite, if или set.
  • В таком сценарии NGINX некорректно рассчитывает размер буфера при обработке URI, а затем записывает в него больше данных, чем было выделено. Это приводит к переполнению буфера в куче worker‑процесса.
Какие версии Nginx уязвимы

Затронуты:

  • NGINX Open Source 0.6.27–1.30.0;
  • NGINX Plus R32—R36;
  • продукты и компоненты, использующие уязвимую версию NGINX в составе решения, включая отдельные версии NGINX Ingress Controller, NGINX Gateway Fabric, NGINX App Protect WAF/DoS и F5 WAF for NGINX.

Уязвимость проявляется не на каждой установке NGINX, а только при наличии уязвимого шаблона в конфигурации rewrite.

Как защититься

Как можно скорее обновите NGINX до исправленной версии:

  • NGINX Open Source 1.30.1 или 1.31.0.
  • Для NGINX Plus — до исправленного релиза своей ветки.

Важно: в Linux‑дистрибутивах исправление может быть перенесено в старую версию пакета, поэтому номер установленного пакета NGINX может отличаться от номера версии в основной ветке проекта. Проверяйте статус по бюллетеню вашего дистрибутива.

Если обновить NGINX немедленно нельзя, проверьте конфигурацию на уязвимый шаблон rewrite: безымянные группы $1, $2 в сочетании со строкой замены, содержащей ?, после которой следует rewrite, if или set. Временная мера — заменить безымянные группы на именованные и перепроверить конфигурацию перед перезагрузкой NGINX.

Как помогают наши решения

BI.ZONE EASM может выявить NGINX на внешнем периметре IT‑инфраструктуры и определить, какие из установок могут быть уязвимы.

Платформа помогает:

  • найти внешне доступные HTTP‑ и HTTPS‑сервисы на базе NGINX;
  • определить версии NGINX на периметре.

Это позволяет быстро оценить, какие доступные через интернет сервисы могут попасть в зону риска, и сфокусировать исправление на наиболее критичных участках периметра.

Дополнительная информация