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

Исследователи в области кибербезопасности раскрыли несколько уязвимостей в NGINX Plus и NGINX Open Source, включая критическую ошибку, которая оставалась незамеченной почти 18 лет.

Наиболее опасная проблема получила идентификатор CVE-2026-42945 и оценку CVSS 9.2. Уязвимость обнаружили специалисты depthfirst. Ошибка представляет собой heap buffer overflow в модуле ngx_http_rewrite_module и получила название NGINX Rift. Она позволяет удалённому атакующему выполнить код или вызвать отказ в обслуживании при помощи специально сформированных HTTP-запросов.

По данным F5, проблема возникает при использовании директивы rewrite вместе с rewrite, if или set, если применяются безымянные PCRE-захваты вроде $1 или $2, а строка замены содержит символ вопроса ?.

Атаку можно провести без аутентификации. В некоторых случаях уязвимость приводит к перезапуску worker-процесса NGINX. Если на системе отключён ASLR, возможна удалённая эксплуатация с выполнением кода.

Исследователи отметили, что переполнение памяти можно стабильно вызывать через специально подготовленный URI. Записываемые за пределы выделенной области данные контролируются содержимым запроса, что делает повреждение памяти предсказуемым. Повторные запросы также позволяют удерживать worker-процессы в состоянии постоянного падения.

Исправления выпущены для следующих версий:

  • NGINX Plus R32-R36, патчи доступны в R32 P6 и R36 P4

  • NGINX Open Source 1.0.0-1.30.0, исправления добавлены в 1.30.1 и 1.31.0

  • NGINX Instance Manager 2.16.0-2.21.1

  • F5 WAF for NGINX 5.9.0-5.12.1

  • NGINX App Protect WAF 4.9.0-4.16.0 и 5.1.0-5.8.0

  • F5 DoS for NGINX 4.8.0

  • NGINX App Protect DoS 4.3.0-4.7.0

  • NGINX Gateway Fabric 1.3.0-1.6.2 и 2.0.0-2.5.1

  • NGINX Ingress Controller 3.5.0-3.7.2 и 4.0.0-4.0.1, а также 5.0.0-5.4.1

Для ветки NGINX Open Source 0.6.27-0.9.7 исправления выпускать не планируется.

Помимо CVE-2026-42945 разработчики закрыли ещё три уязвимости:

  • CVE-2026-42946 с оценкой CVSS 8.3 связана с чрезмерным выделением памяти в модулях ngx_http_scgi_module и ngx_http_uwsgi_module. При определённых условиях атакующий может читать память worker-процесса или вызывать его перезапуск.

  • CVE-2026-40701 с оценкой 6.3 представляет собой use-after-free в ngx_http_ssl_module. Проблема затрагивает конфигурации с включёнными ssl_verify_client и ssl_ocsp.

  • CVE-2026-42934 с оценкой 6.3 затрагивает ngx_http_charset_module и может привести к утечке содержимого памяти или перезапуску worker-процесса при использовании charset, source_charset, charset_map и proxy_pass с отключённой буферизацией.

Пользователям рекомендуется обновить NGINX до последних версий. Если установка патчей невозможна, для CVE-2026-42945 советуют заменить безымянные захваты в rewrite-директивах на именованные.


Источник: HN

Комментарии (0)

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

Похожие статьи

Кибербезопасность 1 неделю назад

Критическая уязвимость Apache HTTP/2 (CVE-2026-23918)

В Apache HTTP Server обнаружена критическая уязвимость в реализации HTTP/2, позволяющая вызвать DoS и потенциально выполнить произвольный код. Ошибка связана с двойным освобождением памяти в mod_http2.

Кибербезопасность 2 месяца назад

Новая Android-угроза PromptSpy использует ИИ Gemini для закрепления в системе

Новый Android-малваре PromptSpy, который впервые использует ИИ Google Gemini для автоматизации навигации по интерфейсу устройства, чтобы сохранить своё присутствие и получить удалённый доступ. Угроза распространяется через фишинговые сайты и особенно опасна тем, что её сложно удалить стандартными способами.