15 июля 2026 года состоялся выпуск высокопроизводительного HTTP‑сервера и многопротокольного прокси‑сервера nginx 1.31.3. Исходный код проекта nginx написан на языке C и распространяется под лицензией BSD. Проект nginx 1.28.0 вышел в апреле 2025 года. Выпуск nginx 1.29 случился в июне 2025 года. Версия nginx 1.30 вышла в апреле 2026 года. Выпуск nginx 1.31 произошёл в мае 2026 года.

Также разработчики проекта представили выпуск параллельно поддерживаемой стабильной ветки nginx 1.30.4, в которую вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей.

В обновлениях проекта устранены три критические уязвимости:

  • CVE-2026-42533 — переполнение буфера, проявляющееся при использовании в директиве "map" проверок через регулярные выражения с подстановками при помощи неименованных (например, $1 и $2) или именованных переменных, при условии, что данные переменные упомянуты до переменной результата map или использована переменная, которая не кэшируется. Потенциально уязвимость может привести к удалённому выполнению кода на сервере через отправку специально оформленного HTTP-запроса. Проблеме присвоен критический уровень опасности (9.2 из 10);

  • CVE-2026-60005 — утечка неинициализированной памяти рабочего процесса при использовании модуля ngx_http_slice_module и указания в директиве slice регулярных выражений с подстановками при помощи неименованных переменных. Уязвимости присвоен уровень опасности 8.8 из 10;

  • CVE-2026-56434 — обращение к памяти после её освобождения в модуле ngx_http_ssi_module, возникающее при обработке специально оформленного ответа, возвращённого проксированным бэкендом. Уязвимость может привести к изменению содержимого памяти рабочего процесса. Проблеме присвоен уровень опасности 8.3 из 10.

Не связанные с уязвимостями изменения:

  • в модуле ngx_http_xslt_filter_module отключена загрузка переменных в XML-документе, значения которых загружаются из внешних источников. Добавлена директива "xml_external_entities" для управления загрузкой внешних компонентов, указанных в блоке DTD обрабатываемого XML-документа;

  • добавлены директивы "proxy_socket_sndbuf", "proxy_socket_rcvbuf", "fastcgi_socket_sndbuf", "fastcgi_socket_rcvbuf", "grpc_socket_sndbuf", "grpc_socket_rcvbuf", "scgi_socket_sndbuf", "scgi_socket_rcvbuf", "uwsgi_socket_sndbuf", "uwsgi_socket_rcvbuf", "tunnel_socket_sndbuf" и "tunnel_socket_rcvbuf" для выставления размера буферов отправки (SO_SNDBUF) и приёма (SO_RCVBUF);

  • для архитектуры LoongArch64 реализовано определение размера блока (cache line), используемого для передачи данных между кэшем CPU и памятью;

  • в модулях ngx_http_proxy_v2_module и ngx_http_grpc_module реализовано ограничение размера заголовков и трейлеров в ответах HTTP/2 при помощи директив proxy_buffer_size и grpc_buffer_size.