Оновлення nginx 1.31.7 та njs 1.0.2 з усуненням уразливостей

Сформовано випуск основної гілки nginx 1.31.7, в рамках якої продовжується розвиток нових можливостей, а також випуск паралельно підтримуваної стабільної гілки nginx 1.30.6, в яку вносяться лише зміни, пов'язані з усуненням серйозних помилок та вразливостей. В оновленнях усунуто 5 вразливостей:

  • CVE-2026-15176 - переповнення буфера, що виявляється при використанні
    директиви «alias» у конфігураціях, які змінюють URI запиту через директиву
    "rewrite" з подальшим перенаправленням на файл.
  • CVE-2026-93479 — переповнення буфера, що виникає при виконанні рядкових виразів зі змінними та виявляється при обчисленні шляху до кореневого каталогу та при логуванні запитів у модулях http та stream
  • CVE-2026-95101 — обхід обмеження «client_max_body_size» і підстановка сторонніх даних у запит, що проксується, через передачу некоректних кадрів у HTTP/3, частина вмісту яких могла бути оброблена як тіло запиту.
  • CVE-2026-97629 - підробка TLS-сеансів через залишення одного із сесійних ключів неініціалізованим під час ротації.
  • CVE-2026-97205 - звернення до пам'яті після її звільнення (use-after-free), що виникає при використанні на SSI-сторінках команд "include virtual" у поєднанні із застосуванням асинхронного вводу/виводу (AIO).

Не пов'язані з уразливістю зміни в nginx 1.31.7:

  • У модулі ngx_http_geoip_module та ngx_stream_geoip_module додано підтримку БД у форматі MaxMind (MMDB).
  • Реалізовано можливість перевірки за IP-адресою SSL-сертифікатів, що використовуються в бекенді.
  • Реалізовані можливості переконфігурації та оновлення файлу, що виконується, при використанні в налаштуваннях директиви quic_bpf.
  • У модулі ngx_http_v2_module реалізована схема розміщення пріоритетів, що відповідає RFC 9218.

Одночасно доступний випуск njs 1.0.2, модуля для інтеграції інтерпретатора мови JavaScript до http-сервера nginx. Njs дозволяє використовувати сценарії JavaScript у конфігураційних файлах для розширення можливостей nginx. Скрипти можуть використовуватися для визначення розширеної логіки обробки запитів, формування конфігурації, динамічної генерації відповідей, модифікації запиту/відповіді або швидкого створення заглушок із вирішенням проблем у веб-додатках. Код проекту написано на Сі та поширюється під ліцензією BSD.

У випуску njs 1.0.2 усунуто вразливість: вичерпання доступної пам'яті при розборі некоректних XML-даних (CVE-2026-101025) та порушення перевірки підписаного XML-документа через маніпуляцію з XML-атрибутами (CVE-2026-101019). Додані методи XMLNode.getAttributeNS() та XMLNode.getChildNS(). Скорочено споживання пам'яті при компіляції в двигуні njs.

Джерело: opennet.ru

Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери 🔥 Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери | ProHoster