Múltiples Vulnerabilidades en el Protocolo HTPP/2

Se ha reportado sobre múltiples vulnerabilidades en el protocolo HTTP/2 que podrían ser explotadas para lanzar ataques de denegación de servicio (DoS) en servidores que utilizan implementaciones vulnerables.

Las mismas están identificadas como

CVE-2024-27316: Los frames de CONTINUATION de HTTP/2 enviados por un actor malicioso a una implementación de Apache sin el indicador END_HEADERS, pueden ser enviados en un flujo continuo, lo que no terminará adecuadamente la solicitud de forma temprana, aún no se ha designado una puntuación en CVSSv3, se ha asignado una severidad media.

CVE-2024-31309: Vulnerabilidad del tipo denegación de servicio (DoS) a través de lautilización tramas de CONTINUATION en HTTP/2puede derivar en que el servidor de Apache consuma más recursos de memoria y CPU, aun no cuenta con puntuación asignada en CVSSv3, se ha asignado una severidad baja.

CVE-2024-27983: Vulnerabilidad que puede dejar el servidor Node.js HTTP/2 no disponible, sucede cuando se envían pequeñas cantidades de paquetes de tramas HTTP/2 con unos pocos frames HTTP/2 en su interior. Esto puede causar que ciertos datos se queden en la memoria de nghttp2 luego de un reinicio, lo que lleva a una condición de carrera (cuando dos subprocesos acceden a una variable compartida al mismo tiempo) se cierra abruptamente una conexión TCP por el lado deli cliente, desencadenando la función destructor Http2Session mientras los frames de encabezado aún se están procesando y almacenando en la memoria, condición que puede causar una denegación de servicio (DoS) se ha asignado una puntuación de 8.2 en CVSSv3 y con una severidad alta.

CVE-2024-28182: La biblioteca nghttp2 es una implementación del Protocolo de Transferencia de Hipertexto versión 2 escrita en C. En un escenario donde el servidor recibe de manera constante e incremental sostenida de frames de CONTINUATION de HTTP/2. Esto podría provocar un uso excesivo de los recursos del procesador del servidor para decodificar el flujo frames, causando una denegación de servicio (DoS), se ha asignado una puntuación en CVSSv3 de 5.3 con una severidad media.

CVE-2024-27919: Vulnerabilidad que afecta al servicio proxy de código abierto nativo para ambientes cloud, denominado Envoy, se la ha asignado una puntuación de 7.5 en CVSSv3 con una severidad alta, el mismo contiene una falla que permite la inundación de tramas CONTINUATION en la pila de protocolo HTTP/2. Esto puede causar un agotamiento de memoria y derivar en una denegación de servicio (DoS).

CVE-2024-30255: Vulnerabilidad que afecta al servicio proxy de código abierto nativo para ambientes cloud, denominado Envoy, se la ha asignado una puntuación de 5.3 en CVSSv3 con severidad media, un actor malicioso podría enviar una gran cantidad de tramas CONTINUATION sin establecer el bit END_HEADERS, lo que provoca una carga excesiva en la CPU del sistema. Esto puede resultar en la denegación de servicio (DoS) debido al agotamiento de la CPU.

CVE-2024-2653: Vulnerabilidad que afecta al componente del servidor web amphp/http en la manera que maneja los frames de HTTP/2 CONTINUATION, la falla sucede cuando se recopilan tramas de CONTINUATION HTTP/2 en un búfer ilimitado, sin comprobar el límite de tamaño del encabezado hasta que se recibida el indicador END_HEADERS, lo que provocará un bloqueo de OOM(Out-off-memory), causando una denegación de servicio (DoS), se ha asignado una puntuación de 8.2 en CVSSv3 con una severidad alta.

CVE-2023-45288: Vulnerabilidad que afecta a las instalaciones de Golang en los equipos, sucede cuando los encabezados de una solicitud superan el límite impuesto en la variable MaxHeaderBytes, esta situación podría permitir la explotación de una vulnerabilidad del tipo denegación de servicios (DoS), un actor malicioso podría explotar dicha vulnerabilidad para leer cantidades arbitrarias de datos en el equipo afectado, se asignado una puntuación en CVSSv3 de 6.5 con una severidad media.

Productos afectados

  • Apache Software Foundation – Servidor HTTP Apache: Versiones <= 2.4.58
  • Apache Software Foundation – Servidor de tráfico Apache: <=8.1.9, <=9.2.3
  • Node.js: Versiones v18.x, v20.x y 21.x. 
  • Project nghttp2 – nghttp2: Versiones >= 1.29.3, >= 1.28.2, >=1.27.4 y >=1.26.8
  • Project Amphp – amphp/http >= 2.0.0 && <= 2.1.0, <= 1.7.2
  • The Go Programming Language (Golang) <1.22.2

Recomendación

  • Se recomienda aplicar los parches de seguridad liberados por el desarrollador del software/producto afectado.

Referencia

Compartir: