Обновление безопасности: Выпущены RPM- и DEB-пакеты Apache httpd 2.4.69 с поддержкой HTTP/2, HTTP/3, Brotli, TLS 1.3, OpenSSL 4.0.3 и ALPN для EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

Apache httpd 2.4.69 добавлен в репозиторий CodeIT, собран с поддержкой HTTP/2 (mod_http2), Brotli, TLS 1.3 и ALPN, с использованием OpenSSL 4.0.3. Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Начиная с 2.4.69 mod_ssl собирается с API OpenSSL 3.0 вместо 1.1.1 (OPENSSL_API_COMPAT повышен с 1.1.1 до 3.0.0), поскольку в OpenSSL 4.0 удалены возможности, объявленные устаревшими до 3.0. Вместе с этим убрана поддержка SRP (TLS-SRP, RFC 5054): директив SSLSRPVerifierFile и SSLSRPUnknownUserSeed больше нет, поэтому удалите их из конфигурации до обновления, иначе httpd не запустится; переменные SSL_SRP_USER и SSL_SRP_USERINFO больше не устанавливаются. API ENGINE в этих пакетах был отключён и раньше.

mod_http2 в RPM-пакетах теперь собирается из исходников httpd, как это уже делается в DEB-пакетах и в apache2 самой Ubuntu, а не из отдельного проекта mod_h2. Пакет сохраняет имя mod_http2 и теперь имеет версию httpd, поэтому dnf или yum обновляют mod_http2 2.0.42 до него сами: ничего удалять заранее не нужно, а изменённый 10-h2.conf сохраняется.

Для этой версии httpd доступен HTTP/3 через mod_http3 — экспериментальный модуль в отдельном пакете:

  • RPM, EL8 и новее: dnf install mod_http3
  • RPM, EL7: yum install mod_http3
  • DEB: apt install libapache2-mod-http3

Модуль загружается сразу после установки, а сам HTTP/3 включается для каждого виртуального хоста. Отредактируйте пример vhost из пакета (ServerName и сертификат): на EL это /etc/httpd/vhosts.d/http3-vhost.conf, который httpd.conf по умолчанию не подключает, поэтому добавьте IncludeOptional vhosts.d/*.conf; в Ubuntu выполните a2ensite http3-vhost. Затем перезагрузите httpd и откройте 443/udp в межсетевом экране, так как QUIC работает поверх UDP.

Основные изменения:

  • Исправлена иконка tar в документации, чтобы фоновая заливка была прозрачной. PR 70238.
  • mod_ssl: Исправлены макросы совместимости OpenSSL для X509_get0_notBefore, X509_get0_notAfter и X509_get0_serialNumber с OpenSSL < 1.1. PR 70205.
  • mod_cgid, mod_ssl, mod_md: Выполнены различные исправления по усилению защиты.
  • mod_md: MDServerStatus теперь отключён по умолчанию.
  • mod_auth_digest: Исправлена совместимость с выражениями на основе AuthName. PR 59039.
  • mod_auth_digest.c: Убрана поддержка RFC 2069; переработано управление общей памятью и обработка клиентского nonce; mutex «authdigest-opaque» теперь больше не требуется.
  • mod_lbmethod_heartbeat: Используется безопасный разбор целых чисел с проверкой диапазона вместо atoi().
  • core: Отклоняются управляющие символы в фразе причины промежуточных ответов. Принимается только пробел как разделитель между кодом состояния.
  • mod_substitute: Исправлена директива SubstituteMaxLineLength, чтобы она отклоняла значения, слишком большие для суффикса K/M/G.
  • mod_substitute: Исправлен сбой или некорректное поведение при загрузке директивы Substitute с отсутствующим завершающим разделителем.
  • mod_dir: Исправлен сбой в fixup_dir для запроса, который не сопоставлен ни с одним типом. PR68527.
  • mod_http2: Не отбрасывается ответ в процессе выполнения, когда клиент отправляет корректный GOAWAY (error code 0) при том, что открытые им потоки всё ещё обрабатываются. Сеанс теперь «дожидает» открытые потоки вместо немедленного завершения, с чем async MPM сталкиваются гораздо чаще, чем event. Исправлено тихо отброшенное ответное сообщение; соответствует RFC 9113.
  • mod_md: Совместимость с OpenSSL 4.
  • pytest_suite: Портирование старого PERL-фреймворка тестирования на Python и pytest. Теперь он включён в исходное дерево в ./test.

Исправленные уязвимости:

  • SECURITY: CVE-2026-93546: mod_dav_fs переполнение пространства имён Integer overflow в mod_dav_fs в Apache HTTP Server через 2.4.68 позволяет аутентифицированному WebDAV-клиенту с правом записи вызывать аварийное завершение процессов worker и стойко повреждать базу свойств каталога через запросы PROPPATCH, объявляющие много XML namespace.
  • SECURITY: CVE-2026-79768: mod_userdir утечка информации Эквивалентность путей: уязвимость ‘/./’ (каталог с одной точкой) в модуле mod_userdir Apache HTTP Server при настройке с абсолютной директивой UserDir без подстановок (второй вариант в). Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-73637: mod_auth_digest атака DoS Использование после освобождения в mod_auth_digest в Apache HTTP Server от Apache Software Foundation до 2.4.69 на всех платформах позволяет неаутентифицированному удалённому клиенту вызывать повреждение состояния аутентификации через параллельные запросы Digest-аутентификации при включённом AuthDigestNcCheck или установленном значении AuthDigestNonceLifetime равном 0. Рекомендуется обновиться до версии 2.4.69, которая исправляет эту проблему.
  • SECURITY: CVE-2026-73636: mod_auth_digest атака повторного воспроизведения одноразового nonce обход аутентификации через capture-replay в mod_auth_digest в Apache Software Foundation Apache HTTP Server 2.4.x на всех платформах позволяет атакующему типа man-in-the-middle (MITM) повторять захваченные учётные данные Digest-аутентификации через специально сформированные запросы, которые вызывают garbage collection записи общей памяти клиента при установленном AuthDigestNonceLifetime равном 0. Рекомендуется обновиться до версии 2.4.69, которая исправляет эту проблему.
  • SECURITY: CVE-2026-63718: mod_proxy_uwsgi Перехват ответа Transfer-Encoding Несовместимая интерпретация HTTP-запросов (‘HTTP Request/Response Smuggling’) уязвимость перехвата ответов в Apache HTTP Server через mod_proxy_uwsgi и специально сформированный uwsgi-ответ с Transfer-Encoding. Эта проблема затрагивает Apache HTTP Server: от 2.4.30 до 2.4.68.
  • SECURITY: CVE-2026-63686: mod_xml2enc сбой при ошибке преобразования charset Отмена по NULL-указателю в mod_xml2enc в Apache Software Foundation Apache HTTP Server до 2.4.69 на всех платформах позволяет недоверенному серверу backend вызывать отказ в обслуживании через проксированный ответ с charset, преобразование которого частично выполняется, а затем завершается ошибкой. Рекомендуется обновиться до версии 2.4.69, которая исправляет эту проблему.
  • SECURITY: CVE-2026-63292: mod_vhost_alias переполнение стека Переполнение буфера на основе стека в mod_vhost_alias в Apache Software Foundation Apache HTTP Server до 2.4.68 на всех платформах позволяет удалённому клиенту вызвать отказ в обслуживании или, потенциально, выполнить произвольный код через HTTP-запрос с заголовком Host, превышающим 8192 байта, когда VirtualDocumentRoot использует спецификатор формата имени хоста, а LimitRequestFieldSize увеличен выше значения по умолчанию. Рекомендуется обновиться до версии 2.4.69, которая исправляет эту проблему.
  • SECURITY: CVE-2026-63045: mod_proxy_ftp обработка адресов PASV Ненадлежащая проверка адреса ответа FTP PASV в mod_proxy_ftp в Apache Software Foundation Apache HTTP Server до 2.4.68 на всех платформах позволяет, в конфигурациях forward proxy, недоверенному FTP-серверу заставить прокси открыть соединение для данных с произвольным сторонним хостом через специально сформированный ответ PASV. Рекомендуется обновиться до версии 2.4.69, которая исправляет эту проблему.
  • SECURITY: CVE-2026-59797: mod_ssl SSLRequire допускает .htaccess ap_expr файловую функцию Уязвимость неправильного управления привилегиями в mod_ssl Apache HTTP Server через SSLRequire и выражения, связанные с файлами. Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-59685: Запись за пределы в ap_directory_walk() Canonical-Name Rewrite в CASE_BLIND_FILESYSTEM Уязвимость записи за пределы в Apache HTTP Server в Windows при обработке путей с именами 8.3, которые могут увеличиваться при расширении. Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-58415: mod_dav_fs доступ к чтению базы данных свойств Внутренние файлы состояния доступны внешним сторонам в mod_dav_fs в Apache Software Foundation Apache HTTP Server до 2.4.69 на всех платформах позволяет удалённому клиенту читать dead properties WebDAV ресурсов, которым он не имеет права авторизовать, через GET-запрос к каталогу .DAV state directory. Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-57941: mod_http2 use-after-free / некорректная запись через повторный вход shared session->bbtmp Уязвимость use-after-free в mod_http2 Apache HTTP Server через повторный вход shared session->bbtmp. Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-56449: mod_proxy_html: сбой в dump_content Уязвимость записи за пределы в mod_proxy_html Apache HTTP Server при специально сформированных HTTP- телах ответа. Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-56154: mod_rewrite use-after-free через %{LA-U:HTTP…} Уязвимость use-after-free в Apache HTTP Server mod_rewrite при использовании lookahead (%{LA-U:HTTP…}) Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-56153: mod_charset_lite: переполнение кучи в finish_partial_char Уязвимость записи за пределы в mod_charset_lite Apache HTTP Server. Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-48005: mod_auth_digest атака повторной аутентификации Отсутствие проверок аутентификации в mod_auth_digest в Apache Software Foundation Apache HTTP Server до 2.4.69 на всех платформах позволяет неаутентифицированному удалённому клиенту вызвать отказ в обслуживании (вынужденная повторная аутентификация) через поддельные заголовки Authorization при включённой Digest-аутентификации с AuthDigestNcCheck. Рекомендуется обновиться до версии 2.4.69, которая исправляет эту проблему.
  • SECURITY: CVE-2026-47360: mod_session: cookie сессии не удаляется при внутреннем редиректе Раскрытие конфиденциальной информации неавторизованному субъекту уязвимость в модуле mod_session_cookie Apache HTTP Server.
  • SECURITY: CVE-2026-46729: mod_heartmonitor отказ в обслуживании Уязвимость отмены по NULL-указателю в Apache HTTP Servers mod_heartmonitor через unicast listener. Эта проблема затрагивает Apache HTTP Server: от 2.4.0 до 2.4.68.
  • SECURITY: CVE-2026-42528: переполнение shared lock в mod_dav Ошибка в вычислении памяти в mod_dav в Apache httpd 2.4.67 и более ранних версиях позволяет атакующему с правом создавать WebDAV locks вызывать сбой дочерних процессов сервера. Рекомендуется обновиться до версии 2.4.69, которая исправляет эту проблему
  • SECURITY: CVE-2026-42356: ограниченный RCE для некоторых внутренних редиректов на не-CGI-файлы в CGI-каталогах Уязвимость развёртывания неверного обработчика в Apache HTTP Server позволяет цели некоторых внутренних редиректов из CGI-программ также обрабатываться как CGI и выполняться. Цель должна уже находиться в каталоге, включённом для CGI, и не иметь другого расширения, распознаваемого mod_mime. Эта проблема затрагивает Apache HTTP Server: от 2.4.60 до 2.4.68.

Обновление безопасности: Выпущены RPM- и DEB-пакеты openssl 4.0.3

openssl 4.0.3 добавлен в репозиторий CodeIT. Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Основные изменения:

  • OpenSSL 4.0.3 — исправление безопасности. Самая критичная исправленная в этом релизе уязвимость имеет уровень High.
  • В этот релиз включены следующие исправления ошибок и меры по снижению рисков:
  • Исправлена ошибка, из-за которой `EVP_DecryptFinal()` неверно сообщала об устаревшем успешном результате при сбое аутентификации AES-SIV.
  • Исправлена регрессия в кодировании base64 фильтром BIO, добавленным в OpenSSL 4.0. При неполных записях по цепочке BIO может теряться закодированное содержимое base64.

Исправленные уязвимости:

  • Исправлены повторные передачи (retransmissions) рукопожатий DTLS из-за устаревшего смещения в буфере. (CVE-2026-84782)
  • Исправлено использование освобождённой памяти (use-after-free) в кэше расширений X.509 при параллельном использовании. (CVE-2026-84783)
  • Исправлено чрезмерное выделение памяти при обработке relative CRLDP. (CVE-2026-35189)
  • Исправлен возможный неверный учёт amplification credit в QUIC из-за неподтверждённости. (CVE-2026-35191)
  • Исправлена потенциальная DoS-атака на ЦП через O(n^2) сборку фрагментов в QUIC. (CVE-2026-42772)
  • Исправлен тайминговый побочный канал при скалярном умножении для кривых mon-NIST EC. (CVE-2026-54872)
  • Исправлена DoS-атака через метаданные фрагментов `STREAM` в QUIC. (CVE-2026-54873)
  • Исправлено скалярное умножение SM2, выполняемое не за константное время на ARM64 и RISC-V. (CVE-2026-54875)
  • Исправлен выход за границы после вызова `SSL_set_SSL_CTX()` во время рукопожатия. (CVE-2026-72897)
  • Исправлено то, что на уровне соединения в QUIC не применялось управление потоком для потоков. (CVE-2026-75804)
  • Исправлено разыменование NULL-указателя при обработке ответа на отзыв в клиенте CMP. (CVE-2026-75805)
  • Исправлена необработанная подлинность и недостаточный размер записи AEAD DTLS 1.2, приводившие к DoS. (CVE-2026-75806)
  • Исправлен тайминговый побочный канал при генерации подписи SM2. (CVE-2026-77696)
  • Исправлена неограниченная очередь `RETIRE_CONNECTION_ID` в реализации стека QUIC. (CVE-2026-84784)

Библиотеки с поддержкой QUIC по-прежнему поставляются отдельным, не конфликтующим пакетом openssl-quic-libs с собственным суффиксом .so.81.4, чтобы избежать конфликтов с официальным .so.X.

Обновление безопасности: Выпущены RPM- и DEB-пакеты NGINX 1.31.6 Mainline с поддержкой HTTP/3, Brotli, TLS 1.3 и OpenSSL 4.0.2 для EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.6 Mainline с поддержкой HTTP/3 добавлен в репозиторий CodeIT. http2 и ngx_cache_purge встроены, а OpenSSL динамически линкуется с официальным OpenSSL 4.0.2 с поддержкой QUIC. Модуль сжатия Brotli от Google и ngx_http_geoip2 поставляются как динамические модули — в пакетах nginx-module-brotli и nginx-module-geoip2, которые rpm-пакет nginx устанавливает автоматически (зависимость оставлена, чтобы существующие установки обновлялись без потери этих директив; через несколько месяцев мы её уберём, и оба модуля станут полностью необязательными). Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Остальные динамические модули собраны отдельно и устанавливаются по желанию: nginx-module-lua вместе с lua-resty-core и lua-resty-lrucache, nginx-module-acme для автоматических сертификатов ACMEv2, nginx-module-njs, nginx-module-perl, nginx-module-xslt и nginx-module-image-filter. Каждый пакет сам добавляет строку load_module в /etc/nginx/modules-enabled, поэтому модуль работает сразу после установки и править nginx.conf вручную не нужно. Lua и ACME собираются для EL9, EL10 и Ubuntu; для EL7 вместо них есть nginx-module-geoip, а njs, Perl, XSLT и image-filter доступны только в rpm.

Тот же выпуск есть на Docker Hub как codeitus/nginx: образ собран на AlmaLinux 9 из этих же пакетов и опубликован для amd64 и arm64:

  • самый свежий образ, из того пула, который вышел последним: docker pull codeitus/nginx
  • самый свежий образ Mainline: docker pull codeitus/nginx:mainline
  • именно этот выпуск: docker pull codeitus/nginx:1.31.6

Для HTTP/3 нужно опубликовать и UDP-порт, а не только TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Основные изменения:

  • Изменение: параметры расширения transport QUIC, полученные в SSL-соединении, теперь всегда игнорируются.
  • Исправление: двоичное обновление не выполнялось, если был задан сокет control API и новый исполняемый файл nginx был собран с модулем ngx_http_perl_module.
  • Исправление: ошибка при вычислении предиката в location предиката игнорировалась, и предикат трактовался как false.
  • Исправление: ошибка при поиске во вложенном location могла игнорироваться, если locations, заданные регулярными выражениями или предикатами, были настроены на текущем уровне.
  • Исправление: при чтении конфигурации мог возникать сбой сегментации, если использовалась директива «geo» с параметром «ranges», а соответствующий двоичный базовый файл был повреждён.

Исправленные уязвимости:

  • Безопасность: в рабочем процессе при некоторых конфигурациях могла возникать переполненная область памяти heap при использовании HTTP/3 с OpenSSL 3.5.0 и более ранними (CVE-2026-90439).

Обновление безопасности: Выпущены RPM- и DEB-пакеты NGINX 1.30.5 Stable с поддержкой HTTP/3, Brotli, TLS 1.3 и OpenSSL 4.0.2 для EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.30.5 Stable с поддержкой HTTP/3 добавлен в репозиторий CodeIT. http2 и ngx_cache_purge встроены, а OpenSSL динамически линкуется с официальным OpenSSL 4.0.2 с поддержкой QUIC. Модуль сжатия Brotli от Google и ngx_http_geoip2 поставляются как динамические модули — в пакетах nginx-module-brotli и nginx-module-geoip2, которые rpm-пакет nginx устанавливает автоматически (зависимость оставлена, чтобы существующие установки обновлялись без потери этих директив; через несколько месяцев мы её уберём, и оба модуля станут полностью необязательными). Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Остальные динамические модули собраны отдельно и устанавливаются по желанию: nginx-module-lua вместе с lua-resty-core и lua-resty-lrucache, nginx-module-acme для автоматических сертификатов ACMEv2, nginx-module-njs, nginx-module-perl, nginx-module-xslt и nginx-module-image-filter. Каждый пакет сам добавляет строку load_module в /etc/nginx/modules-enabled, поэтому модуль работает сразу после установки и править nginx.conf вручную не нужно. Lua и ACME собираются для EL9, EL10 и Ubuntu; для EL7 вместо них есть nginx-module-geoip, а njs, Perl, XSLT и image-filter доступны только в rpm.

Тот же выпуск есть на Docker Hub как codeitus/nginx: образ собран на AlmaLinux 9 из этих же пакетов и опубликован для amd64 и arm64:

  • самый свежий образ, из того пула, который вышел последним: docker pull codeitus/nginx
  • самый свежий образ Stable: docker pull codeitus/nginx:stable
  • именно этот выпуск: docker pull codeitus/nginx:1.30.5

Для HTTP/3 нужно опубликовать и UDP-порт, а не только TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Основные изменения:

  • Change: теперь расширение с параметрами транспорта QUIC, полученное в SSL-соединении, всегда игнорируется.

Исправленные уязвимости:

  • Security: в буфере кучи рабочего процесса при некоторых конфигурациях может возникнуть переполнение памяти при использовании HTTP/3 с OpenSSL 3.5.0 и более ранними версиями (CVE-2026-90439).

Обновление безопасности: Выпущены RPM- и DEB-пакеты mod_http3 v0.0.71

mod_http3 v0.0.71 добавлен в репозиторий CodeIT. Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Основные изменения:

  • Хост с «h3» в Protocols теперь обслуживает HTTP/3, используя сертификат mod_ssl, разрешённый для него (SSLCertificateFile и mod_md также), как это делает mod_http2, опираясь на mod_ssl. Удаляются H3CertificatePath и H3CertificateKeyPath; уберите их из существующих конфигураций.
  • Выбор HTTP/3-сертификата выполняется по SNI, так что каждый виртуальный хост на общем порту обслуживает свой собственный сертификат вместо сертификата первого хоста.
  • Для каждого виртуального хоста теперь используется отдельная конфигурация mod_http3 (AP_MODULE_FLAG_ALWAYS_MERGE). Хост без директив H3 раньше разделял конфигурацию главного сервера, поэтому параметры для конкретного хоста, такие как H3AltSvc и H3AltSvcMaxAge, незаметно игнорировались, и хосты не могли использовать собственный сертификат.
  • Набор тестов: stop.conf теперь указывает тот же файл pid, что и httpd.conf, поэтому «apachectl -k stop» действительно останавливает сервер в сборках httpd, где файл pid по умолчанию находится в run/; ранее при каждом перезапуске в рамках набора тестов поддерживалась связь со старым сервером.

Исправленные уязвимости:

  • SECURITY: Загрузка сертификата и ключа HTTP/3 выполняется в post_config при сохранении привилегированного запуска httpd, поэтому ключ, доступный только root, больше не приводит к ошибке в непривилегированном дочернем процессе, и как mod_ssl, так и mod_http3 читают одни и те же файлы.

Обновление безопасности: Выпущены RPM- и DEB-пакеты mod_http3 v0.0.70

mod_http3 v0.0.70 добавлен в репозиторий CodeIT. Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Основные изменения:

  • Объявлена динамическая QPACK-таблица, размер которой задаётся H3QpackTableCapacity и H3QpackBlockedStreams, чтобы заголовки запросов сжимались так же, как и по HTTP/2.
  • Пул рабочих для обработки запросов стал настраиваемым с H3MinWorkers, H3MaxWorkers и H3MaxWorkerIdleSeconds вместо фиксированных 16–64 потоков.
  • Добавлен H3StreamTimeout: клиент, который перестаёт читать, больше не может удерживать рабочий поток запроса, пока запрос не будет завершён.
  • Добавлен H3MaxStreamErrors: соединение закрывается, если клиент продолжает отправлять некорректные запросы, вместо того чтобы обслуживать их бесконечно.
  • Опубликована среда TLS для mod_ssl (SSL_PROTOCOL, SSL_CIPHER и другие) для запросов HTTP/3, которую mod_ssl не контролирует.
  • Добавлены H3SessionTickets, чтобы администратор мог управлять возобновлением сеансов для возвращающихся клиентов вместо выполнения полного рукопожатия.
  • Добавлен H3SocketBufferSize, поэтому QUIC-сокет больше не отбрасывает дейтаграммы из-за слишком малого буфера приёма в ОС, когда соединение начинает работать на полной скорости.
  • В модульном event loop принудительно используется H3IdleTimeout: соединение без запросов закрывается вместо того, чтобы удерживаться открытым пингами keepalive от QUIC.
  • Некорректный запрос HTTP/3 отклоняется с ошибкой уровня потока вместо закрытия соединения, поэтому запросы, выполняющиеся параллельно, продолжают обрабатываться.
  • Сборка выполняется с httpd 2.4.x, а также из trunk; теперь сегменты ответа и хук child_stopped выбираются на этапе компиляции.
  • Определяется стабильная или devel версия httpd во время configure, и функция graceful drain возвращается в ветку 2.4.x.

Исправленные уязвимости:

  • SECURITY: Обновлён submodule httpd, чтобы mpm_event допускал соединение, которое никогда не принимал, устраняя падение дочернего процесса при ErrorDocument по HTTP/3.
  • SECURITY: Применены LimitRequestFields и LimitRequestFieldSize для HTTP/3, так что клиент больше не может раздувать память потока неограниченными заголовками.

Выпущены RPM- и DEB-пакеты NGINX 1.31.5 Mainline с поддержкой HTTP/3, Brotli, TLS 1.3 и OpenSSL 4.0.2 для EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.5 Mainline с поддержкой HTTP/3 добавлен в репозиторий CodeIT. http2 и ngx_cache_purge встроены, а OpenSSL динамически линкуется с официальным OpenSSL 4.0.2 с поддержкой QUIC. Модуль сжатия Brotli от Google и ngx_http_geoip2 поставляются как динамические модули — в пакетах nginx-module-brotli и nginx-module-geoip2, которые rpm-пакет nginx устанавливает автоматически (зависимость оставлена, чтобы существующие установки обновлялись без потери этих директив; через несколько месяцев мы её уберём, и оба модуля станут полностью необязательными). Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Остальные динамические модули собраны отдельно и устанавливаются по желанию: nginx-module-lua вместе с lua-resty-core и lua-resty-lrucache, nginx-module-acme для автоматических сертификатов ACMEv2, nginx-module-njs, nginx-module-perl, nginx-module-xslt и nginx-module-image-filter. Каждый пакет сам добавляет строку load_module в /etc/nginx/modules-enabled, поэтому модуль работает сразу после установки и править nginx.conf вручную не нужно. Lua и ACME собираются для EL9, EL10 и Ubuntu; для EL7 вместо них есть nginx-module-geoip, а njs, Perl, XSLT и image-filter доступны только в rpm.

Тот же выпуск есть на Docker Hub как codeitus/nginx: образ собран на AlmaLinux 9 из этих же пакетов и опубликован для amd64 и arm64:

  • самый свежий образ, из того пула, который вышел последним: docker pull codeitus/nginx
  • самый свежий образ Mainline: docker pull codeitus/nginx:mainline
  • именно этот выпуск: docker pull codeitus/nginx:1.31.5

Для HTTP/3 нужно опубликовать и UDP-порт, а не только TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Основные изменения:

  • Функция: управление API.
  • Функция: условия по расположениям.
  • Функция: модуль ngx_http_json_module.
  • Функция: директива «client_body_early_read».
  • Исправлена ошибка: use-after-free мог возникать в рабочем процессе, если выполнялось проксирование с использованием буферизации и ошибка возникала при отправке ответа HTTP/2-клиенту.
  • Исправлена ошибка: рабочий процесс больше не мог не завершаться или в журналах больше не появлялись оповещения «accept4() failed (9: Bad file descriptor)» при исчерпании файловых дескрипторов до начала планового завершения.
  • Исправлена ошибка: запросы к бэкендам FastCGI и uwsgi формировались некорректно, если имя параметра было слишком длинным.
  • Исправлены ошибки в HTTP/3, ngx_http_slice_module и ngx_http_memcached_module.

Обновление безопасности: Выпущены RPM- и DEB-пакеты openssl 4.0.2

openssl 4.0.2 добавлен в репозиторий CodeIT. Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Основные изменения:

  • OpenSSL 4.0.2 — это исправляющий пакет по безопасности. Самая серьёзная из устранённых в этом выпуске уязвимостей — Moderate.
  • В этом выпуске учтены следующие исправления ошибок и меры по снижению рисков:
  • Исправлена проверка тегов аутентификации для пустого шифртекста в режимах AEAD для блочных шифров в режиме CCM.

Исправленные уязвимости:

  • Исправлена возможность того, что QUIC-сервер мог вызывать двойное освобождение при обработке пакета `INITIAL`. (CVE-2026-18798)
  • Исправлен выход за пределы буфера в куче при разворачивании ключей в CMS. (CVE-2026-63072)
  • Исправлено обращение по недопустимому указателю в CMP-сервере через специально сформированный `protectionAlg`. (CVE-2026-63076)
  • Исправлен неограниченный рост памяти в очереди входящих каналов QUIC-сервера. (CVE-2026-14456)
  • Исправлена возможность для RPK-сервера при выборе алгоритма подписи приводить к разыменованию отсутствующего сертификата. (CVE-2026-14457)
  • Исправлено чрезмерное использование памяти при буферизации DTLS-записей для будущего эпоха. (CVE-2026-54874)
  • Исправлена утечка памяти на стороне клиента при проверке ответа OCSP. (CVE-2026-54876)
  • Исправлено использование ненадёжного Sender DN в качестве строки формата при проверке ответа CMP. (CVE-2026-63073)
  • Исправлен бесконечный рост кэша в CMP для `extraCerts`. (CVE-2026-63074)
  • Исправлена возможность того, что удержание пакетов только с ACK в QUIC приводило к исчерпанию памяти. (CVE-2026-63075)
  • Исправлена возможность подделок AEAD с пустым шифртекстом при использовании `EVP_Cipher()`. (CVE-2026-75803)

Библиотеки с поддержкой QUIC по-прежнему поставляются отдельным, не конфликтующим пакетом openssl-quic-libs с собственным суффиксом .so.81.4, чтобы избежать конфликтов с официальным .so.X.

Выпущены RPM- и DEB-пакеты NGINX 1.31.4 Mainline с поддержкой HTTP/3, Brotli, TLS 1.3 и OpenSSL 4.0.1 для EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.4 Mainline с поддержкой HTTP/3 добавлен в репозиторий CodeIT. http2 и ngx_cache_purge встроены, а OpenSSL динамически линкуется с официальным OpenSSL 4.0.1 с поддержкой QUIC. Модуль сжатия Brotli от Google и ngx_http_geoip2 поставляются как динамические модули — в пакетах nginx-module-brotli и nginx-module-geoip2, которые rpm-пакет nginx устанавливает автоматически (зависимость оставлена, чтобы существующие установки обновлялись без потери этих директив; через несколько месяцев мы её уберём, и оба модуля станут полностью необязательными). Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Остальные динамические модули собраны отдельно и устанавливаются по желанию: nginx-module-lua вместе с lua-resty-core и lua-resty-lrucache, nginx-module-acme для автоматических сертификатов ACMEv2, nginx-module-njs, nginx-module-perl, nginx-module-xslt и nginx-module-image-filter. Каждый пакет сам добавляет строку load_module в /etc/nginx/modules-enabled, поэтому модуль работает сразу после установки и править nginx.conf вручную не нужно. Lua и ACME собираются для EL9, EL10 и Ubuntu; для EL7 вместо них есть nginx-module-geoip, а njs, Perl, XSLT и image-filter доступны только в rpm.

Тот же выпуск есть на Docker Hub как codeitus/nginx: образ собран на AlmaLinux 9 из этих же пакетов и опубликован для amd64 и arm64:

  • самый свежий образ, из того пула, который вышел последним: docker pull codeitus/nginx
  • самый свежий образ Mainline: docker pull codeitus/nginx:mainline
  • именно этот выпуск: docker pull codeitus/nginx:1.31.4

Для HTTP/3 нужно опубликовать и UDP-порт, а не только TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Основные изменения:

  • Feature: директива «proxy_protocol» в модулях stream и mail теперь поддерживает версию 2 протокола PROXY.
  • Change: запросы к бэкендам для HTTP/2 и gRPC теперь всегда отправляются с псевдозаголовком «:authority», а запросы HTTP/1.1 — с заголовком «Host».
  • Bugfix: в рабочем процессе может возникать аварийное завершение, если использовался метод «select».
  • Bugfix: неполные ответы gRPC с строкой заголовка «Content-Length» со значением не нулевым теперь считаются некорректными.
  • Bugfix: устранена проблема двоичной совместимости с сторонними модулями, использующими коды сценариев; ошибка возникала в 1.31.3.
  • Bugfix: устранена ошибка в модуле ngx_http_perl_module.
  • Bugfixes в HTTP/2, HTTP/3, ngx_http_image_filter_module и ngx_http_grpc_module.

Обновление безопасности: Выпущены RPM- и DEB-пакеты apr-util 1.6.5

apr-util 1.6.5 добавлен в репозиторий CodeIT. Пакеты собраны для RHEL, CentOS, AlmaLinux, Rocky Linux и Oracle Linux 7, 8, 9 и 10, а также для Ubuntu 22.04 и 24.04.

Это обновление устраняет уязвимости. Рекомендуется обновиться.

Основные изменения:

  • Исправлены ошибки компиляции oracle DBD, добавленные в 1.6.4. PR 70170.
  • apr_brigade: Разделение последней LF в apr_brigade_split_line больше не выполняется, чтобы не создавать пустой бакет. PR 64273
  • apr_brigade: Бакеты метаданных теперь игнорируются в apr_brigade_split_line, apr_brigade_flatten и apr_brigade_to_iovec, исправляя возможное неопределённое поведение. PR 68278
  • apr_crypto_openssl: Совместимость с OpenSSL 3.
  • apr_crypto_openssl: Используется OPENSSL_init_crypto() для инициализации OpenSSL в версиях 1.1+.
  • apr_memcache: Исправлен поиск имени, чтобы поддерживались и IPv6, и IPv4.
  • configure: Исправлено обнаружение Berkeley DB компиляторами, которые требуют строгую совместимость с C99. PR 66396.

Исправленные уязвимости:

  • SECURITY: CVE-2026-34502: Переполнение буфера в куче в клиенте memcached APR: уязвимость переполнения буфера на основе кучи в клиенте Apache Portable Runtime Utility memcached. Эта проблема затрагивает Apache Portable Runtime Utility: начиная с 1.3.0 и по 1.6.3 включительно.
  • SECURITY: CVE-2026-34501: Apache Portable Runtime Utility: Переполнение буфера в куче в клиенте redis APR: уязвимость переполнения буфера на основе кучи в клиенте Apache Portable Runtime Utility redis. Эта проблема затрагивает Apache Portable Runtime Utility: начиная с 1.6.0 и по 1.6.3 включительно. Пользователям рекомендуется выполнить обновление до версии 1.6.4, которая устраняет проблему.
  • SECURITY: CVE-2026-34191: Apache Portable Runtime Utility: SQL Injection в apr_dbd_oracle: Недостаточная нейтрализация специальных элементов, используемых в команде SQL («SQL Injection»), в уязвимости Apache Portable Runtime Utility через провайдер apr_dbd_oracle. Эта проблема затрагивает Apache Portable Runtime Utility: начиная с 1.6.0 и по 1.6.3 включительно. Пользователям рекомендуется выполнить обновление до версии 1.6.4, которая устраняет проблему.
  • SECURITY: CVE-2026-32327: Apache Portable Runtime Utility: аварийное завершение из‑за рекурсии в XML-стеке в apr-util: ошибка в APR-util версии 1.6.3 (и более ранних) позволяет атаковать рекурсией в стеке любого потребителя библиотек, который выполняет разбор XML из ненадёжных источников и использует функцию apr_xml_quote_elem(). Пользователям рекомендуется выполнить обновление до версии 1.6.4, которая устраняет проблему.
  • SECURITY: CVE-2025-49506: apr_password_validate() уязвима к атаке по времени APR-util версии 1.6.3 (и более ранние) функция apr_password_validate() не выполняла сравнение хэшей или паролей за постоянное время, что потенциально могло раскрывать их содержимое через побочный канал по времени атаки, особенно на платформах без crypt() таких как Windows, BeOS, NetWare или Android. Пользователям рекомендуется выполнить обновление до версии 1.6.4, которая устраняет проблему.