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.

Leave a Reply

Your email address will not be published. Required fields are marked *