nginx-1.31.0-RELEASE
Some checks are pending
buildbot / buildbot (push) Waiting to run

This commit is contained in:
Sergey Kandaurov 2026-05-13 15:34:55 +04:00 committed by Sergey Kandaurov
parent c24fb259d1
commit e8053c867f

View file

@ -5,6 +5,224 @@
<change_log title="nginx">
<changes ver="1.31.0" date="2026-05-13">
<change type="security">
<para lang="ru">
при использовании директивы proxy_set_body атакующий мог вставить данные
в проксируемый запрос на HTTP/2-бэкенд (CVE-2026-42926).<br/>
Спасибо Mufeed VH из Winfunc Research.
</para>
<para lang="en">
when using the "proxy_set_body" directive, an attacker might inject data
in the proxied request to an HTTP/2 backend (CVE-2026-42926).<br/>
Thanks to Mufeed VH of Winfunc Research.
</para>
</change>
<change type="security">
<para lang="ru">
при обработке специально созданного запроса модулем ngx_http_rewrite_module
могло происходить переполнение буфера в рабочем процессе,
что потенциально могло приводить к выполнению произвольного кода
(CVE-2026-42945).<br/>
Спасибо Leo Lin.
</para>
<para lang="en">
a heap memory buffer overflow might occur in a worker process
while handling a specially crafted request by ngx_http_rewrite_module,
potentially resulting in arbitrary code execution
(CVE-2026-42945).<br/>
Thanks to Leo Lin.
</para>
</change>
<change type="security">
<para lang="ru">
при обработке специально созданного ответа модулем ngx_http_scgi_module
или ngx_http_uwsgi_module могло происходить чтение данных за границами
буфера рабочего процесса, что позволяло атакующему
отправить клиенту содержимое памяти рабочего процесса
или вызвать segmentation fault в рабочем процессе (CVE-2026-42946).<br/>
Спасибо Leo Lin.
</para>
<para lang="en">
a heap memory buffer overread might occur in a worker process
while handling a specially crafted response by ngx_http_scgi_module
or ngx_http_uwsgi_module, allowing an attacker to cause
a disclosure of worker process memory
or segmentation fault in a worker process (CVE-2026-42946).<br/>
Thanks to Leo Lin.
</para>
</change>
<change type="security">
<para lang="ru">
при обработке специально переданного ответа с декодированием из UTF-8
через директиву charset_map могло происходить чтение данных
за границами буфера рабочего процесса, что позволяло атакующему
отправить клиенту ограниченное содержимое памяти рабочего процесса
или вызвать segmentation fault в рабочем процессе (CVE-2026-42934).<br/>
Спасибо David Carlier.
</para>
<para lang="en">
a heap memory buffer overread might occur in a worker process
while handling a specially sent response with decoding from UTF-8
via the "charset_map" directive, allowing an attacker to cause
a limited disclosure of worker proccess memory
or segmentation fault in a worker process (CVE-2026-42934).<br/>
Thanks to David Carlier.
</para>
</change>
<change type="security">
<para lang="ru">
при использовании HTTP/3 обработка миграции соединения могла приводить
к созданию QUIC-стримов с новым адресом клиента до завершения валидации,
что позволяло атакующему выполнить подмену адреса (CVE-2026-40460).<br/>
Спасибо Rodrigo Laneth.
</para>
<para lang="en">
when using HTTP/3, processing of connection migration might cause
new QUIC streams to receive a new client address before validation,
allowing an attacker to cause address spoofing (CVE-2026-40460).<br/>
Thanks to Rodrigo Laneth.
</para>
</change>
<change type="security">
<para lang="ru">
при использовании директивы ssl_ocsp
во время обработки ответов DNS-сервера
могло произойти обращение к ранее освобождённой памяти,
что позволяло атакующему повредить память рабочего процесса
или вызвать segmentation fault в рабочем процессе (CVE-2026-40701).<br/>
Спасибо Leo Lin.
</para>
<para lang="en">
use-after-free might occur
during DNS server response processing
if the "ssl_ocsp" directive was used,
allowing an attacker to cause worker process memory corruption
or segmentation fault in a worker process (CVE-2026-40701).<br/>
Thanks to Leo Lin.
</para>
</change>
<change type="change">
<para lang="ru">
теперь nginx возвращает ошибку, если в запросе по протоколу
HTTP/2 или HTTP/3 присутствуют строки заголовка "Connection",
"Proxy-Connection", "Keep-Alive", "Transfer-Encoding", "Upgrade",
а также "TE" со значением, отличным от "trailers".
</para>
<para lang="en">
now nginx rejects HTTP/2 and HTTP/3 requests with the "Connection",
"Proxy-Connection", "Keep-Alive", "Transfer-Encoding", "Upgrade"
header lines, and "TE" with any value other than "trailers".
</para>
</change>
<change type="change">
<para lang="ru">
модуль ngx_http_dav_module теперь возвращает ошибку,
если при обработке COPY- или MOVE-запроса
исходные и целевые ресурсы совпадают
или одна коллекция включает в себя другую.
</para>
<para lang="en">
the ngx_http_dav_module now rejects a COPY or MOVE requests
when the source and destination resources are the same
or have a parent-child collection relationship.
</para>
</change>
<change type="change">
<para lang="ru">
уровень логгирования ошибок SSL
"invalid alert", "record layer failure",
а также ошибок "SSL alert number N" для любых значений N
понижен с уровня crit до info.
</para>
<para lang="en">
the logging level of the
"invalid alert" and "record layer failure" SSL errors,
and of the "SSL alert number N" for any alert numbers
has been lowered from "crit" to "info".
</para>
</change>
<change type="change">
<para lang="ru">
теперь сборка модуля sticky может быть выключена
с помощью параметра configure --without-http_upstream_sticky_module;
параметр configure --without-http_upstream_sticky объявлен устаревшим.
</para>
<para lang="en">
now the "sticky" module can be disabled with the
--without-http_upstream_sticky_module configure option;
the --without-http_upstream_sticky configure option is deprecated.
</para>
</change>
<change type="feature">
<para lang="ru">
модуль ngx_http_tunnel_module;
поддержка аутентификации через прокси-серверы
в директивах auth_basic, satisfy и auth_delay.
</para>
<para lang="en">
the ngx_http_tunnel_module;
support for authenticating to proxies
in the "auth_basic", "satisfy", and "auth_delay" directives.
</para>
</change>
<change type="feature">
<para lang="ru">
директива least_time в блоке upstream.
</para>
<para lang="en">
the "least_time" directive inside the "upstream" block.
</para>
</change>
<change type="feature">
<para lang="ru">
директива proxy_ssl_alpn в модуле stream.
</para>
<para lang="en">
the "proxy_ssl_alpn" directive in the stream module.
</para>
</change>
<change type="bugfix">
<para lang="ru">
соединения к HTTP/2-бэкендам могли не кэшироваться
при использовании директив proxy_set_body или proxy_pass_request_body.
</para>
<para lang="en">
connections with HTTP/2 backends might not be cached
when using the "proxy_set_body" or "proxy_pass_request_body" directives.
</para>
</change>
<change type="bugfix">
<para lang="ru">
проксированные ответы HTTP/0.9, SCGI или uWSGI
могли передаваться неверно,
если первая строка была прочитана не целиком.
</para>
<para lang="en">
proxied HTTP/0.9, SCGI, or uWSGI responses
might be transferred incorrectly
if the first line was not fully read.
</para>
</change>
</changes>
<changes ver="1.29.8" date="2026-04-07">
<change type="feature">