Actualización de seguridad: Publicados los paquetes RPM y DEB de Apache httpd 2.4.69 con HTTP/2, HTTP/3, Brotli, TLS 1.3, OpenSSL 4.0.3 y ALPN para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

Apache httpd 2.4.69 ha sido añadido al repositorio de CodeIT, compilado con HTTP/2 (mod_http2), Brotli, TLS 1.3 y ALPN, usando OpenSSL 4.0.3. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

A partir de 2.4.69, mod_ssl se compila con la API de OpenSSL 3.0 en lugar de la 1.1.1 (OPENSSL_API_COMPAT sube de 1.1.1 a 3.0.0), porque OpenSSL 4.0 elimina funciones que quedaron obsoletas antes de la 3.0. Con ello desaparece SRP (TLS-SRP, RFC 5054): las directivas SSLSRPVerifierFile y SSLSRPUnknownUserSeed ya no existen, así que elimínelas de la configuración antes de actualizar o httpd no arrancará, y las variables SSL_SRP_USER y SSL_SRP_USERINFO ya no se definen. La API ENGINE ya estaba desactivada en estos paquetes.

En los paquetes RPM, mod_http2 se compila ahora desde el código fuente de httpd, como ya se hace en los paquetes DEB y en el apache2 de Ubuntu, en lugar de desde el proyecto independiente mod_h2. El paquete conserva el nombre mod_http2 y ahora lleva la versión de httpd, así que dnf o yum actualizan desde mod_http2 2.0.42 por sí solos: no hay que desinstalar nada antes y se conserva un 10-h2.conf modificado.

HTTP/3 está disponible para este httpd mediante mod_http3, un módulo experimental empaquetado por separado:

  • RPM, EL8 y posteriores: dnf install mod_http3
  • RPM, EL7: yum install mod_http3
  • DEB: apt install libapache2-mod-http3

El módulo se carga en cuanto se instala; HTTP/3 se activa por host virtual. Edite el vhost de ejemplo que instala el paquete (ServerName y certificado): en EL es /etc/httpd/vhosts.d/http3-vhost.conf, que httpd.conf no incluye por defecto, así que añada IncludeOptional vhosts.d/*.conf; en Ubuntu ejecute a2ensite http3-vhost. Después recargue httpd y abra 443/udp en el cortafuegos, ya que QUIC funciona sobre UDP.

Cambios principales:

  • Se corrigió el icono de tar en la documentación para que el fondo sea transparente. PR 70238.
  • mod_ssl: Se corrigieron las macros de compatibilidad de OpenSSL para X509_get0_notBefore, X509_get0_notAfter y X509_get0_serialNumber con OpenSSL < 1.1. PR 70205.
  • mod_cgid, mod_ssl, mod_md: Varias correcciones de endurecimiento.
  • mod_md: MDServerStatus queda deshabilitado de forma predeterminada.
  • mod_auth_digest: Se corrigió la compatibilidad con AuthName basado en expresiones. PR 59039.
  • mod_auth_digest.c: Se eliminó la compatibilidad con RFC 2069; se reescribió el manejo de memoria compartida y el manejo del client nonce; el mutex “authdigest-opaque” ya no es necesario.
  • mod_lbmethod_heartbeat: Se utiliza un análisis seguro de enteros con validación de rango, sustituyendo atoi().
  • core: Se rechazan los caracteres de control en la razón (reason phrase) de las respuestas intermedias. Solo se acepta el espacio como separador del código de estado.
  • mod_substitute: Se corrigió SubstituteMaxLineLength para que rechace valores demasiado grandes para el sufijo K/M/G.
  • mod_substitute: Se corrigió el fallo o el comportamiento erróneo al cargar una directiva Substitute con un delimitador de cierre que falta.
  • mod_dir: Se corrigió un fallo en fixup_dir para una solicitud que no se mapea a ningún tipo. PR68527.
  • mod_http2: No se elimina una respuesta en curso cuando un cliente envía un GOAWAY cortés (error code 0) mientras aún se procesan los streams que abrió. La sesión ahora vacía los streams abiertos en lugar de cerrarlos de inmediato, algo que los MPM asíncronos sufren mucho más que event. Corrige una respuesta descartada en silencio; cumple RFC 9113.
  • mod_md: Compatibilidad con OpenSSL 4.
  • pytest_suite: Puerto del antiguo framework de pruebas PERL a Python y pytest. Ahora se incluye en el árbol de código fuente en ./test

Vulnerabilidades corregidas:

  • SECURITY: CVE-2026-93546: mod_dav_fs namespace overflow Integer overflow in mod_dav_fs in Apache HTTP Server through 2.4.68 allows an authenticated WebDAV client with write access to crash worker processes and persistently corrupt a directory’s property database via PROPPATCH requests declaring many XML namespaces.
  • SECURITY: CVE-2026-79768: mod_userdir: se corrigió la divulgación de información. Se corregió la vulnerabilidad de equivalencia de rutas ‘/./’ (directorio de un solo punto) en el módulo mod_userdir de Apache HTTP Server al configurarse con una directiva UserDir absoluta sin comodín (la segunda forma). Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-73637: mod_auth_digest: se corrigió el ataque DoS — se eliminó el use after free en mod_auth_digest en Apache Software Foundation Apache HTTP Server anterior a 2.4.69 en todas las plataformas, lo que permitía que un cliente remoto no autenticado corrompiera el estado de autenticación mediante solicitudes concurrentes de Digest cuando está habilitada AuthDigestNcCheck o cuando AuthDigestNonceLifetime se establece en 0.
  • SECURITY: CVE-2026-73636: mod_auth_digest one-time-nonce replay attack Authentication bypass by capture-replay in mod_auth_digest in Apache Software Foundation Apache HTTP Server 2.4.x on all platforms allows a man-in-the-middle (MITM) attacker to replay captured digest authentication credentials via crafted requests that trigger garbage collection of the client’s shared memory entry when AuthDigestNonceLifetime is set to 0. Users are recommended to upgrade to version 2.4.69, which fixes this issue.
  • SECURITY: CVE-2026-63718: mod_proxy_uwsgi: se corrigió el contrabando de respuestas Transfer-Encoding. Se corregió la vulnerabilidad de contrabando de respuestas por interpretación inconsistente de solicitudes HTTP (“HTTP Request/Response Smuggling”) en Apache HTTP Server mediante mod_proxy_uwsgi y una respuesta uwsgi elaborada con Transfer-Encoding. Este problema afecta a Apache HTTP Server: desde 2.4.30 hasta 2.4.68.
  • SECURITY: CVE-2026-63686: mod_xml2enc crash on charset conversion failure A NULL pointer dereference in mod_xml2enc in Apache Software Foundation Apache HTTP Server before 2.4.69 on all platforms allows an untrusted backend server to cause a denial of service via a proxied response with a charset whose conversion partially succeeds then fails. Users are recommended to upgrade to version 2.4.69, which fixes this issue.
  • SECURITY: CVE-2026-63292: mod_vhost_alias stack overflow Stack-based buffer overflow in mod_vhost_alias in Apache Software Foundation Apache HTTP Server through 2.4.68 on all platforms allows a remote client to cause a denial of service or potentially execute arbitrary code via an HTTP request with a Host header exceeding 8192 bytes when VirtualDocumentRoot uses a hostname format specifier and LimitRequestFieldSize is raised above the default. Users are recommended to upgrade to version 2.4.69, which fixes this issue.
  • SECURITY: CVE-2026-63045: mod_proxy_ftp: se corrigió el manejo de direcciones PASV. Se corrigió la validación incorrecta de la dirección de la respuesta PASV en mod_proxy_ftp en Apache Software Foundation Apache HTTP Server hasta 2.4.68 en todas las plataformas, lo que permitía, en configuraciones de proxy directo, que un servidor FTP no confiable hiciera que el proxy abriera una conexión de datos hacia un host de terceros arbitrario mediante una respuesta PASV preparada. Se recomienda actualizar a la versión 2.4.69, que corrige este problema.
  • SECURITY: CVE-2026-59797: mod_ssl: SSLRequire ya no permite expresiones de funciones de archivos en ap_expr desde .htaccess. Se corrigió la vulnerabilidad de gestión de privilegios en mod_ssl de Apache HTTP Server mediante SSLRequire y expresiones relacionadas con archivos. Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-59685: se corrigió una escritura fuera de los límites en ap_directory_walk() al hacer Canonical-Name Rewrite con CASE_BLIND_FILESYSTEM. Se corrigió la vulnerabilidad de escritura fuera de los límites en Apache HTTP Server en Windows al procesar rutas con nombres 8.3 que pueden crecer al expandirse. Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-58415: mod_dav_fs: se corrigió el acceso de lectura a la base de propiedades. Se corrigió que los archivos de estado internos accesibles por terceros en mod_dav_fs de Apache Software Foundation Apache HTTP Server anterior a 2.4.69 en todas las plataformas permitieran a un cliente remoto leer las dead properties de WebDAV de recursos que no puede autorizar mediante una solicitud GET para el directorio de estado .DAV. Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-57941: mod_http2: se corrigió use-after-free / escritura arbitraria mediante reentrancia shared session->bbtmp. Se corrigió la vulnerabilidad use-after-free en mod_http2 de Apache HTTP Server mediante la reentrancia compartida de session->bbtmp. Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-56449: mod_proxy_html: se corrigió el fallo en dump_content. Se corrigió la vulnerabilidad de escritura fuera de los límites en mod_proxy_html de Apache HTTP Server con cuerpos de respuesta HTTP preparados. Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-56154: mod_rewrite: se corrigió use-after-free mediante %{LA-U:HTTP…}. Se corrigió la vulnerabilidad use-after-free en mod_rewrite de Apache HTTP Server al usar lookahead (%{LA-U:HTTP…}). Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-56153: mod_charset_lite: se corrigió el desbordamiento del montón en finish_partial_char. Se corrigió la vulnerabilidad de escritura fuera de los límites en mod_charset_lite de Apache HTTP Server. Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-48005: mod_auth_digest: se corrigió el ataque de reautenticación. Se corrigieron las comprobaciones de autenticación que faltaban en mod_auth_digest de Apache Software Foundation Apache HTTP Server anterior a 2.4.69 en todas las plataformas, lo que permitía a un cliente remoto no autenticado provocar una denegación de servicio (reautenticación forzada) mediante encabezados Authorization falsificados cuando la autenticación Digest está habilitada con AuthDigestNcCheck.
  • SECURITY: CVE-2026-47360: mod_session: la cookie de sesión ya no se conserva sin eliminar durante el redireccionamiento interno. Se corrigió la vulnerabilidad de exposición de información sensible a un actor no autorizado en el módulo mod_session_cookie de Apache HTTP Server.
  • SECURITY: CVE-2026-46729: mod_heartmonitor: se corrigió la denegación de servicio. Se corrigió la vulnerabilidad de NULL Pointer Dereference en Apache HTTP Server mod_heartmonitor sobre el listener unicast. Este problema afecta a Apache HTTP Server: desde 2.4.0 hasta 2.4.68.
  • SECURITY: CVE-2026-42528: mod_dav: se corrigió el desbordamiento del bloqueo compartido. Se corrigió un error de cálculo de memoria en mod_dav de Apache httpd 2.4.67 y versiones anteriores que permitía a un atacante con permisos crear bloqueos WebDAV provocar el fallo de los procesos secundarios del servidor. Se recomienda actualizar a la versión 2.4.69, que corrige este problema
  • SECURITY: CVE-2026-42356: se corrigió el RCE limitado para algunos redireccionamientos internos a archivos non-CGI en directorios CGI. La implementación de un manejador incorrecto en Apache HTTP Server permite que el destino de algunos redireccionamientos internos desde programas CGI también se trate como CGI y se ejecute. El destino debe estar ya en un directorio habilitado para CGI y no debe tener ninguna otra extensión entendida por mod_mime. Este problema afecta a Apache HTTP Server: desde 2.4.60 hasta 2.4.68.

Actualización de seguridad: Publicados los paquetes RPM y DEB de openssl 4.0.3

openssl 4.0.3 ha sido añadido al repositorio de CodeIT. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Cambios principales:

  • OpenSSL 4.0.3 es un lanzamiento de corrección de seguridad. La CVE más grave corregida en este lanzamiento es High.
  • Este lanzamiento incorpora las siguientes correcciones de errores y mitigaciones:
  • Se corrigió un fallo en el que `EVP_DecryptFinal()` informaba incorrectamente de un éxito obsoleto en el fallo de la autenticación de AES-SIV.
  • Se corrigió una regresión en el filtrado BIO de codificación base64 introducida en OpenSSL 4.0 donde escrituras incompletas a través de la cadena del BIO pueden provocar la pérdida de datos base64 codificados.

Vulnerabilidades corregidas:

  • Se corrigieron las retransmisiones DTLS de mensajes de handshake desde un desplazamiento de búfer obsoleto. (CVE-2026-84782)
  • Se corrigió un uso después de liberar memoria (use-after-free) en la caché de extensiones X.509 durante el uso concurrente. (CVE-2026-84783)
  • Se corrigió una asignación excesiva de memoria en el procesamiento relative CRLDP. (CVE-2026-35189)
  • Se corrigió que el amplification credit no validado en QUIC pudiera contabilizarse en exceso. (CVE-2026-35191)
  • Se corrigió una posible DoS de CPU mediante la reensamblación de fragmentos en O(n^2) en QUIC. (CVE-2026-42772)
  • Se corrigió un canal lateral por temporización en la multiplicación escalar para curvas mon-NIST EC. (CVE-2026-54872)
  • Se corrigió una DoS en la metainformación de fragmentos `STREAM` de QUIC. (CVE-2026-54873)
  • Se corrigió la multiplicación escalar de SM2 que no se realiza en tiempo constante en ARM64 y RISC-V. (CVE-2026-54875)
  • Se corrigió el acceso fuera de límites después de `SSL_set_SSL_CTX()` durante un handshake. (CVE-2026-72897)
  • Se corrigió que el control de flujo a nivel de conexión en QUIC no se aplicara a los flujos. (CVE-2026-75804)
  • Se corrigió una desreferenciación de puntero NULL en el manejo de la respuesta de revocación del cliente CMP. (CVE-2026-75805)
  • Se corrigió un registro AEAD de DTLS 1.2 no autenticado y de tamaño insuficiente que causaba DoS. (CVE-2026-75806)
  • Se corrigió un canal lateral por temporización en la generación de firma de SM2. (CVE-2026-77696)
  • Se corrigió una cola sin límite de `RETIRE_CONNECTION_ID` en la implementación de la pila QUIC. (CVE-2026-84784)

Las bibliotecas con soporte para QUIC siguen distribuyéndose como un paquete separado, no conflictivo, openssl-quic-libs, con su propio sufijo .so.81.4, para evitar conflictos con el .so.X oficial.

Actualización de seguridad: Publicados los paquetes RPM y DEB de NGINX 1.31.6 Mainline con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.2 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.6 Mainline con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.2 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Mainline más reciente: docker pull codeitus/nginx:mainline
  • esta versión exacta: docker pull codeitus/nginx:1.31.6

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Cambio: la extensión de parámetros de transporte QUIC recibida en una conexión SSL ahora se ignora siempre.
  • Corrección: la actualización binaria no podía funcionar si se especificaba el socket del control API y el nuevo ejecutable de nginx se construía con el módulo ngx_http_perl_module.
  • Corrección: se ignoraba un error al evaluar un predicado en una ubicación de predicado y el predicado se trataba como false.
  • Corrección: un error durante la búsqueda de una ubicación anidada podía ignorarse si las ubicaciones indicadas por expresiones regulares o predicados se configuraban en el nivel actual.
  • Corrección: podía producirse una falta de segmentación al leer la configuración si se usaba la directiva “geo” con el parámetro “ranges” y el archivo binario base correspondiente estaba dañado.

Vulnerabilidades corregidas:

  • Seguridad: en un proceso worker se podía producir un desbordamiento de búfer de memoria heap con algunas configuraciones al usar HTTP/3 con OpenSSL 3.5.0 o anterior (CVE-2026-90439).

Actualización de seguridad: Publicados los paquetes RPM y DEB de NGINX 1.30.5 Stable con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.2 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.30.5 Stable con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.2 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Stable más reciente: docker pull codeitus/nginx:stable
  • esta versión exacta: docker pull codeitus/nginx:1.30.5

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Change: ahora se ignora siempre la extensión de parámetros de transporte QUIC recibida en una conexión SSL.

Vulnerabilidades corregidas:

  • Security: podría producirse un desbordamiento de búfer de memoria en el montón en un proceso de trabajo con ciertas configuraciones al usar HTTP/3 con OpenSSL 3.5.0 y anteriores (CVE-2026-90439).

Actualización de seguridad: Publicados los paquetes RPM y DEB de mod_http3 v0.0.71

mod_http3 v0.0.71 ha sido añadido al repositorio de CodeIT. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Cambios principales:

  • Un host con “h3” en Protocols ahora sirve HTTP/3 con el certificado de mod_ssl resuelto para él (SSLCertificateFile y mod_md por igual), de la misma forma en que mod_http2 monta sobre mod_ssl. Se eliminan H3CertificatePath y H3CertificateKeyPath; elimínalos de las configuraciones existentes.
  • Se selecciona el certificado de HTTP/3 mediante SNI, de modo que cada host virtual en un puerto compartido sirva su propio certificado en lugar del del primer host.
  • Se proporciona a cada host virtual su propia configuración de mod_http3 (AP_MODULE_FLAG_ALWAYS_MERGE). Un host sin directivas H3 solía compartir la configuración del servidor principal, por lo que ajustes por host como H3AltSvc y H3AltSvcMaxAge se ignoraban en silencio y los hosts no podían llevar su propio certificado.
  • Conjunto de pruebas: stop.conf ahora utiliza el mismo archivo pid que httpd.conf, por lo que “apachectl -k stop” detiene realmente el servidor en las compilaciones de httpd cuyo archivo pid predeterminado está en run/; antes, en cada reinicio del conjunto de pruebas se seguía hablando con el servidor anterior.

Vulnerabilidades corregidas:

  • SECURITY: El certificado y la clave de HTTP/3 se cargan en post_config, mientras httpd sigue ejecutándose con privilegios, de modo que una clave sólo para root ya no falla en el proceso hijo sin privilegios y tanto mod_ssl como mod_http3 leen los mismos archivos.

Actualización de seguridad: Publicados los paquetes RPM y DEB de mod_http3 v0.0.70

mod_http3 v0.0.70 ha sido añadido al repositorio de CodeIT. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Cambios principales:

  • Se ha anunciado una tabla dinámica QPACK, dimensionada por H3QpackTableCapacity y H3QpackBlockedStreams, para que los encabezados de las solicitudes se compriman igual que sobre HTTP/2.
  • El pool de workers de las solicitudes ahora es configurable con H3MinWorkers, H3MaxWorkers y H3MaxWorkerIdleSeconds en lugar de un número fijo de 16 a 64 hilos.
  • Se ha añadido H3StreamTimeout: un cliente que deja de leer ya no puede aparcar un worker de solicitudes hasta que desaparezca.
  • Se ha añadido H3MaxStreamErrors: se cierra una conexión cuyo cliente sigue enviando solicitudes malformadas en lugar de responderle para siempre.
  • Se ha publicado el entorno TLS de mod_ssl (SSL_PROTOCOL, SSL_CIPHER y similares) para solicitudes HTTP/3, que mod_ssl no gestiona.
  • Se ha añadido H3SessionTickets, para que un operador pueda controlar si los clientes que vuelven reanudan la sesión en lugar de ejecutar un handshake completo.
  • Se ha añadido H3SocketBufferSize, para que el socket QUIC ya no descarte datagramas de un búfer de recepción del sistema operativo insuficiente cuando la conexión va a toda velocidad.
  • Se aplica H3IdleTimeout en el event loop del módulo, de modo que una conexión sin solicitudes se cierra en lugar de mantenerse abierta mediante pings de keepalive de QUIC.
  • Se rechaza una solicitud HTTP/3 malformada con un error de stream en lugar de cerrar la conexión, para que las solicitudes en curso junto a ella sobrevivan.
  • Se compila con httpd 2.4.x, además de trunk; los buckets de respuesta y el hook child_stopped ahora se eligen en tiempo de compilación.
  • Se detecta el httpd stable o devel en configure y se retrotrae el graceful drain al branch 2.4.x.

Vulnerabilidades corregidas:

  • SECURITY: Se ha actualizado el submodule de httpd para que mpm_event tolere una conexión que nunca aceptó, terminando con el crash del hijo al servir un ErrorDocument por HTTP/3.
  • SECURITY: Se aplican LimitRequestFields y LimitRequestFieldSize a HTTP/3, para que el cliente ya no pueda hacer crecer la memoria de un stream con encabezados sin límite.

Publicados los paquetes RPM y DEB de NGINX 1.31.5 Mainline con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.2 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.5 Mainline con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.2 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Mainline más reciente: docker pull codeitus/nginx:mainline
  • esta versión exacta: docker pull codeitus/nginx:1.31.5

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Función: control del API.
  • Función: ubicaciones con predicado.
  • Función: el módulo ngx_http_json_module.
  • Función: la directiva “client_body_early_read”.
  • Corrección: puede producirse un uso después de liberar memoria (use-after-free) en un proceso de trabajo si se usaba proxy con almacenamiento en búfer y se producía un error al enviar la respuesta a un cliente HTTP/2.
  • Corrección: el proceso de trabajo ya no puede no finalizar o no deberían aparecer alertas “accept4() failed (9: Bad file descriptor)” en los registros si el proceso de trabajo se queda sin descriptores de archivo antes del apagado limpio.
  • Corrección: las solicitudes a los backends FastCGI y uwsgi se formaban de forma incorrecta si el nombre de un parámetro era demasiado largo.
  • Correcciones en HTTP/3, ngx_http_slice_module y ngx_http_memcached_module.

Actualización de seguridad: Publicados los paquetes RPM y DEB de openssl 4.0.2

openssl 4.0.2 ha sido añadido al repositorio de CodeIT. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Cambios principales:

  • OpenSSL 4.0.2 es un lanzamiento de corrección de seguridad. La CVE más grave corregida en este lanzamiento es Moderate.
  • Este lanzamiento incorpora las siguientes correcciones de errores y mitigaciones:
  • Se corrigió la comprobación de las etiquetas de autenticación para cifrados vacíos en cifradores AEAD en modo CCM.

Vulnerabilidades corregidas:

  • Se corrigió que el servidor QUIC pudiera provocar una doble liberación al procesar el paquete `INITIAL`. (CVE-2026-18798)
  • Se corrigió un desbordamiento de búfer en el montón al desenrollar claves en CMS. (CVE-2026-63072)
  • Se corrigió una desreferencia de puntero no válida en el servidor CMP mediante un `protectionAlg` manipulado. (CVE-2026-63076)
  • Se corrigió el crecimiento de memoria sin límite en la cola de canales entrantes del servidor QUIC. (CVE-2026-14456)
  • Se corrigió que el servidor RPK pudiera, al seleccionar el algoritmo de firma, desreferenciar un certificado que no existe. (CVE-2026-14457)
  • Se corrigió el uso excesivo de memoria al almacenar en búfer registros DTLS para una época futura. (CVE-2026-54874)
  • Se corrigió una fuga de memoria del lado del cliente al comprobar respuestas de OCSP. (CVE-2026-54876)
  • Se corrigió que un Sender DN no fiable se usara como cadena de formato en la validación de la respuesta CMP. (CVE-2026-63073)
  • Se corrigió el crecimiento indefinido de la caché en CMP de `extraCerts`. (CVE-2026-63074)
  • Se corrigió que la retención de paquetes que solo contienen ACK en QUIC pudiera causar agotamiento de memoria. (CVE-2026-63075)
  • Se corrigió la posibilidad de falsificaciones AEAD con texto cifrado vacío al usar `EVP_Cipher()`. (CVE-2026-75803)

Las bibliotecas con soporte para QUIC siguen distribuyéndose como un paquete separado, no conflictivo, openssl-quic-libs, con su propio sufijo .so.81.4, para evitar conflictos con el .so.X oficial.

Publicados los paquetes RPM y DEB de NGINX 1.31.4 Mainline con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.1 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.4 Mainline con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.1 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Mainline más reciente: docker pull codeitus/nginx:mainline
  • esta versión exacta: docker pull codeitus/nginx:1.31.4

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Feature: la directiva “proxy_protocol” en los módulos stream y mail ahora admite la versión 2 del protocolo PROXY.
  • Change: ahora las solicitudes HTTP/2 y gRPC a los backends siempre se envían con el pseudocabecero “:authority” y las solicitudes HTTP/1.1, con la cabecera “Host”.
  • Bugfix: podría producirse un fallo de segmentación en un proceso trabajador si se usaba el método “select”.
  • Bugfix: ahora las respuestas incompletas de gRPC con una línea de cabecera “Content-Length” distinto de cero se tratan como malformadas.
  • Bugfix: corrección en compatibilidad binaria con módulos de terceros que usan códigos de scripts; el fallo apareció en la versión 1.31.3.
  • Bugfix: en el módulo ngx_http_perl_module.
  • Bugfixes en HTTP/2, HTTP/3, ngx_http_image_filter_module y ngx_http_grpc_module.

Actualización de seguridad: Publicados los paquetes RPM y DEB de apr-util 1.6.5

apr-util 1.6.5 ha sido añadido al repositorio de CodeIT. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Cambios principales:

  • Se corrigieron errores de compilación de oracle DBD introducidos en 1.6.4. PR 70170.
  • apr_brigade: no se divide la última LF en apr_brigade_split_line para evitar generar un bucket vacío. PR 64273
  • apr_brigade: los buckets de metadatos ahora se ignoran en apr_brigade_split_line, apr_brigade_flatten y apr_brigade_to_iovec, corrigiendo un comportamiento indefinido posible. PR 68278
  • apr_crypto_openssl: compatibilidad con OpenSSL 3.
  • apr_crypto_openssl: se usa OPENSSL_init_crypto() para inicializar OpenSSL en versiones 1.1+.
  • apr_memcache: se corrigió la búsqueda del nombre para permitir tanto IPv6 como IPv4.
  • configure: se corrigió la detección de Berkeley DB con compiladores que imponen el cumplimiento estricto de C99. PR 66396.

Vulnerabilidades corregidas:

  • SECURITY: CVE-2026-34502: desbordamiento de búfer en el montón en el cliente memcached de APR: vulnerabilidad de desbordamiento de búfer basada en el montón en el cliente memcached de Apache Portable Runtime Utility. Este problema afecta a Apache Portable Runtime Utility: de 1.3.0 a 1.6.3.
  • SECURITY: CVE-2026-34501: Apache Portable Runtime Utility: desbordamiento de búfer en el montón en el cliente redis de APR: vulnerabilidad de desbordamiento de búfer basada en el montón en el cliente redis de Apache Portable Runtime Utility. Este problema afecta a Apache Portable Runtime Utility: de 1.6.0 a 1.6.3. Se recomienda a los usuarios actualizar a la versión 1.6.4, que corrige el problema.
  • SECURITY: CVE-2026-34191: Apache Portable Runtime Utility: SQL Injection en apr_dbd_oracle: neutralización inadecuada de elementos especiales utilizados en un comando SQL (“SQL Injection”) en una vulnerabilidad de Apache Portable Runtime Utility a través del proveedor apr_dbd_oracle. Este problema afecta a Apache Portable Runtime Utility: de 1.6.0 a 1.6.3. Se recomienda a los usuarios actualizar a la versión 1.6.4, que corrige el problema.
  • SECURITY: CVE-2026-32327: Apache Portable Runtime Utility: bloqueo por recursión en la pila XML de apr-util: un error en la versión 1.6.3 de APR-util (y anteriores) permite un ataque de recursión en la pila contra cualquier consumidor de bibliotecas que analiza XML de fuentes no confiables y que usa la función apr_xml_quote_elem(). Se recomienda a los usuarios actualizar a la versión 1.6.4, que corrige el problema.
  • SECURITY: CVE-2025-49506: apr_password_validate() es vulnerable a ataques de temporización APR-util versiones 1.6.3 (y anteriores) la función apr_password_validate() no era de tiempo constante en cuanto a las comparaciones de hashes o contraseñas, lo que potencialmente podía filtrar su contenido mediante un canal lateral de temporización de ataques, especialmente en plataformas sin crypt() como Windows, BeOS, NetWare o Android. Se recomienda a los usuarios actualizar a la versión 1.6.4, que corrige el problema.