// For flags

CVE-2024-30255

HTTP/2: CPU exhaustion due to CONTINUATION frame flood

Severity Score

5.3
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

2
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Attend
*SSVC
Descriptions

Envoy is a cloud-native, open source edge and service proxy. The HTTP/2 protocol stack in Envoy versions prior to 1.29.3, 1.28.2, 1.27.4, and 1.26.8 are vulnerable to CPU exhaustion due to flood of CONTINUATION frames. Envoy's HTTP/2 codec allows the client to send an unlimited number of CONTINUATION frames even after exceeding Envoy's header map limits. This allows an attacker to send a sequence of CONTINUATION frames without the END_HEADERS bit set causing CPU utilization, consuming approximately 1 core per 300Mbit/s of traffic and culminating in denial of service through CPU exhaustion. Users should upgrade to version 1.29.3, 1.28.2, 1.27.4, or 1.26.8 to mitigate the effects of the CONTINUATION flood. As a workaround, disable HTTP/2 protocol for downstream connections.

Envoy es un proxy de servicio y borde de código abierto, nativo de la nube. La pila de protocolos HTTP/2 en las versiones de Envoy anteriores a 1.29.3, 1.28.2, 1.27.4 y 1.26.8 son vulnerables al agotamiento de la CPU debido a la inundación de tramas de CONTINUACIÓN. El códec HTTP/2 de Envoy permite al cliente enviar un número ilimitado de tramas de CONTINUACIÓN incluso después de exceder los límites del mapa de encabezado de Envoy. Esto permite a un atacante enviar una secuencia de tramas CONTINUATION sin que el bit END_HEADERS esté configurado causando la utilización de la CPU, consumiendo aproximadamente 1 núcleo por cada 300 Mbit/s de tráfico y culminando en una denegación de servicio por agotamiento de la CPU. Los usuarios deben actualizar a la versión 1.29.3, 1.28.2, 1.27.4 o 1.26.8 para mitigar los efectos de la inundación de CONTINUACIÓN. Como workaround, deshabilite el protocolo HTTP/2 para conexiones descendentes.

A vulnerability was found in how Envoy Proxy implements the HTTP/2 codec. There are insufficient limitations placed on the amount of CONTINUATION frames that can be sent within a single stream. This issue could allow an unauthenticated remote attacker to send packets to vulnerable servers, which could use up compute resources to cause a Denial of Service.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
Low
Attack Vector
Network
Attack Complexity
Low
Authentication
None
Confidentiality
None
Integrity
None
Availability
Partial
* Common Vulnerability Scoring System
SSVC
  • Decision:Attend
Exploitation
None
Automatable
Yes
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2024-03-26 CVE Reserved
  • 2024-04-04 CVE Published
  • 2024-04-09 First Exploit
  • 2025-02-13 CVE Updated
  • 2025-03-30 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
CWE
  • CWE-390: Detection of Error Condition Without Action
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Envoyproxy
Search vendor "Envoyproxy"
Envoy
Search vendor "Envoyproxy" for product "Envoy"
>= 1.29.0 < 1.29.3
Search vendor "Envoyproxy" for product "Envoy" and version " >= 1.29.0 < 1.29.3"
en
Affected
Envoyproxy
Search vendor "Envoyproxy"
Envoy
Search vendor "Envoyproxy" for product "Envoy"
>= 1.28.0 < 1.28.2
Search vendor "Envoyproxy" for product "Envoy" and version " >= 1.28.0 < 1.28.2"
en
Affected
Envoyproxy
Search vendor "Envoyproxy"
Envoy
Search vendor "Envoyproxy" for product "Envoy"
>= 1.27.0 < 1.27.4
Search vendor "Envoyproxy" for product "Envoy" and version " >= 1.27.0 < 1.27.4"
en
Affected
Envoyproxy
Search vendor "Envoyproxy"
Envoy
Search vendor "Envoyproxy" for product "Envoy"
< 1.26.8
Search vendor "Envoyproxy" for product "Envoy" and version " < 1.26.8"
en
Affected