NULL pointer dereference in Envoyproxy Envoy

CVE-2024-53270

Envoy is a cloud-native high-performance edge/middle/service proxy. In affected versions `sendOverloadError` is going to assume the active request exists when `envoy.load_shed_points.http1_server_abort_dispatch` is configured. If `active_request` is nullptr, only onMessageBeginImpl() is called. However, the `onMessageBeginImpl` will directly return ok status if the stream is already reset leading to the nullptr reference. The downstream reset can actually happen during the H/2 upstream reset. As a result envoy may crash. This issue has been addressed in releases 1.32.3, 1.31.5, 1.30.9, and 1.29.12. Users are advised to upgrade. Users unable to upgrade may disable `http1_server_abort_dispatch` load shed point and/or use a high threshold.

EPSS: 0.007 (49.5th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 7.5 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H.

Affected products

  • Envoyproxy Envoy — versions >= 1.32.0, < 1.32.3, >= 1.31.0, < 1.31.5, >= 1.30.0, < 1.30.9

Weakness classification (CWE)

Public proof-of-concept exploits

References

Frequently asked questions

What is CVE-2024-53270?
CVE-2024-53270 is a high-severity vulnerability in Envoyproxy Envoy, classified under Always-Incorrect Control Flow Implementation. CVSS score: 7.5/10. Published 2024-12-18.
How severe is CVE-2024-53270?
High severity. CVSS v3 base score is 7.5 out of 10.
Is CVE-2024-53270 known to be exploited?
1 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.