Новости Сюрприз в куче. В NGINX нашли ошибку, которая 18 лет позволяла взламывать серверы без пароля

NewsMaker

I'm just a script
Премиум
26,760
46
8 Ноя 2022
Слабое место срабатывало только при особых условиях, но последствия могли быть жёсткими.


p9wiywpw7wgte7nxljo8lr7ccn0gqlgo.jpg


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

Проблема получила идентификатор CVE-2026-42945 и оценку 9,2 по шкале CVSS v4. Команда depthfirst назвала уязвимость NGINX Rift. Ошибка связана с переполнением буфера в куче в модуле ngx_http_rewrite_module. Для атаки нужен специально сформированный HTTP-запрос и определённое сочетание настроек: директивы rewrite, if или set, безымянные захваты PCRE вроде $1 или $2 и строка замены со знаком вопроса.

По данным depthfirst, уязвимый код появился в NGINX ещё в 2008 году и дошёл до версий 1.30.0 включительно. Команда отдельно взялась за CVE-2026-42945 из-за редкого сочетания высокой опасности и долгой жизни ошибки в проекте, через который проходит огромный объём веб-трафика. Проблема пережила множество релизов, новые серверные конфигурации и годы активного использования модуля rewrite.

По данным F5, сбой происходит в рабочем процессе NGINX. При включённой рандомизации адресного пространства атака чаще приводит к перезапуску процесса и отказу в обслуживании. Если ASLR отключён, риск становится выше — злоумышленник может добиться удалённого выполнения кода .

depthfirst указывает, что CVE-2026-42945 особенно опасна из-за отсутствия авторизации. Атакующему достаточно доступа к уязвимому серверу по HTTP . Лишние данные, которые попадают за пределы выделенной памяти, формируются из URI злоумышленника, поэтому повреждение памяти можно контролировать. Повторные запросы способны снова и снова ронять рабочие процессы и мешать работе всех сайтов на том же экземпляре.

Исправления выпущены для NGINX Open Source 1.30.1 и 1.31.0, а также для NGINX Plus R32 P6 и R36 P4. Ошибка затрагивает NGINX Open Source с 1.0.0 по 1.30.0, а для старой ветки 0.6.27—0.9.7 исправления не планируются. В список уязвимых продуктов также попали NGINX Instance Manager, F5 WAF for NGINX, NGINX App Protect WAF, решения для защиты от DoS, NGINX Gateway Fabric и NGINX Ingress Controller.

Вместе с CVE-2026-42945 в NGINX закрыли ещё три уязвимости. CVE-2026-42946 связана с чрезмерным выделением памяти в модулях SCGI и uWSGI. CVE-2026-40701 затрагивает SSL-модуль и может привести к повреждению данных или перезапуску процесса при отдельных настройках проверки клиентских сертификатов и OCSP. CVE-2026-42934 позволяет читать данные за пределами буфера в модуле charset при специфической конфигурации.

Администраторам рекомендуют перейти на исправленные версии. Если быстро обновиться невозможно, F5 советует для защиты от CVE-2026-42945 изменить правила rewrite и заменить безымянные захваты на именованные во всех затронутых директивах.
 
Источник новости
www.securitylab.ru

Похожие темы