CVE-2024-30255: HTTP/2: CPU exhaustion due to CONTINUATION frame flood

Published Apr 3, 2024
·
Updated

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 ENDHEADERS 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.

Other sources

HTTP/2 protocol stack in Envoy versions 1.29.2 or earlier 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 ENDHEADERS bit set causing CPU utilization, consuming approximately 1 core per 300Mbit/s of traffic.

— Red Hat

Affected Software

7 affected componentsFixes available
redhat/envoy<1.29.3
1.29.3
redhat/envoy<1.27.4
1.27.4
redhat/envoy<1.26.8
1.26.8
Envoyproxy Envoy<1.26.8
Envoyproxy Envoy>=1.27.0<1.27.4
Envoyproxy Envoy>=1.28.0<1.28.2
Envoyproxy Envoy>=1.29.0<1.29.3

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade redhat/envoy to a version that resolves this vulnerability.

    Fixed in 1.29.3
  2. Upgrade

    Upgrade redhat/envoy to a version that resolves this vulnerability.

    Fixed in 1.28.2
  3. Upgrade

    Upgrade redhat/envoy to a version that resolves this vulnerability.

    Fixed in 1.27.4
  4. Upgrade

    Upgrade redhat/envoy to a version that resolves this vulnerability.

    Fixed in 1.26.8
  5. Upgrade

    Upgrade Envoy to a version that resolves this vulnerability.

    Fixed in 1.29.3
  6. Upgrade

    Upgrade Envoy to a version that resolves this vulnerability.

    Fixed in 1.28.2
  7. Upgrade

    Upgrade Envoy to a version that resolves this vulnerability.

    Fixed in 1.27.4
  8. Upgrade

    Upgrade Envoy to a version that resolves this vulnerability.

    Fixed in 1.26.8
  9. Configuration

    Disable the HTTP/2 protocol for downstream connections as a workaround.

    Envoy downstream connections HTTP/2 protocol = disabled

Event History

Apr 3, 2024
Data Sourced
via Red Hat·03:07 PM
DescriptionSeverityAffected Software
Apr 4, 2024
CVE Published
via MITRE·07:41 PM
Data Sourced
via MITRE·07:41 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·08:15 PM
RemedyDescriptionSeverityWeaknessAffected Software
Apr 9, 2024
Exploit Published
via GitHub·03:59 PM

Frequently Asked Questions

1

What is the severity of CVE-2024-30255?

CVE-2024-30255 is classified as a high-severity vulnerability due to its potential to cause CPU exhaustion in the affected Envoy versions.

2

How do I fix CVE-2024-30255?

To fix CVE-2024-30255, you should upgrade Envoy to version 1.29.3, 1.28.2, 1.27.4, or 1.26.8 or later.

3

Which Envoy versions are affected by CVE-2024-30255?

CVE-2024-30255 affects Envoy versions prior to 1.29.3, 1.28.2, 1.27.4, and 1.26.8.

4

What type of attack does CVE-2024-30255 facilitate?

CVE-2024-30255 facilitates a denial-of-service attack through CPU exhaustion via excessive CONTINUATION frames.

5

Is there a mitigation for CVE-2024-30255 if I cannot upgrade?

If upgrading is not possible, implementing rate limiting on HTTP/2 traffic may help mitigate the effects of CVE-2024-30255.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203