Investigadores de ciberseguridad han descubierto recientemente una nueva vulnerabilidad en el protocolo HTTP/2, que permite a los actores de amenazas montar denegaciones de servicio (Del) ataca e incluso bloquea servidores con una única conexión TCP.
La vulnerabilidad está relacionada con el uso de marcos de CONTINUACIÓN HTTP/2, razón por la cual el investigador que la encontró, Barket Nowotarski, la denominó «Inundación de CONTINUACIÓN».
Como lo explica pitidocomputadoraHTTP/2 es la versión actualizada del protocolo HTTP, estandarizado en 2015. Su objetivo era mejorar el rendimiento web mediante la introducción de marcos binarios para una transmisión de datos eficiente, multiplexación que permitía múltiples solicitudes y respuestas en una sola conexión y compresión de encabezados que reducía gastos generales.
Múltiples CVE
Con los mensajes HTTP/2, las secciones de encabezado y final se serializan y se colocan en bloques, que luego se pueden fragmentar para su transmisión. Luego se utilizan fotogramas de CONTINUACIÓN para unirlos, pero gracias a la falta de comprobaciones de fotogramas adecuadas, un actor de amenazas puede enviar un fotograma demasiado largo. La CPU puede acabar fallando al intentar procesar estos fotogramas.
«Out of Memory son probablemente los casos más aburridos pero graves. No tienen nada de especial: no tienen una lógica extraña, ni una condición de carrera interesante, etc.», dijo Nowotarski. «Las implementaciones que permiten OOM simplemente no limitaron el tamaño de la lista de encabezados creada utilizando marcos de CONTINUACIÓN».
«Las implementaciones sin tiempo de espera del encabezado requirieron solo una conexión HTTP/2 para bloquear el servidor».
Dependiendo de la implementación de HTTP/2, las vulnerabilidades se rastrean bajo un CVE diferente. Algunos son más perjudiciales que otros y pueden provocar ataques DoS, pérdidas de memoria, consumo de memoria y más:
CVE-2024-27983, CVE-2024-27919, CVE-2024-2758, CVE-2024-2653, CVE-2023-45288, CVE-2024-28182, CVE-2024-27316, CVE-2024-31309 y CVE -2024-30255.
Desde entonces, Red Hat, SUSE Linux, Arista Networks, Apache HTTP Server Project, nghttp2, Node.js, AMPHP y Go Programming Language han confirmado que son vulnerables a al menos uno de estos CVE. pitidocomputadora encontró.