GitHub Advisoryadvisory · Go

GHSA-cf3q-gqg7-3fm9 Envoy crashes when HTTP ext_proc processes local replies

MEDIUM Published 2025-03-21 Modified 2025-03-21 Official page ↗
Aliases
CVE-2025-30157
Ecosystem
Go
Packages
github.com/envoyproxy/envoy
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weaknesses
CWE-460
Reviewed
2025-03-21

Affected packages

• Go github.com/envoyproxy/envoy: < 1.30.10 → fixed in 1.30.10 • Go github.com/envoyproxy/envoy: >= 1.31.0, < 1.31.6 → fixed in 1.31.6 • Go github.com/envoyproxy/envoy: >= 1.32.0, < 1.32.4 → fixed in 1.32.4 • Go github.com/envoyproxy/envoy: >= 1.33.0, < 1.33.1 → fixed in 1.33.1

Description

Summary Envoy's ext_proc HTTP filter is at risk of crashing if a local reply is sent to the external server due to the filter's life time issue. A known situation is the fail of a websocket handshake will trigger a local reply leading to the crash of Envoy. PoC If both websocket and ext_proc are enabled, a failed handshake will trigger a local reply, thus ext_proc will crash. Mitigation 1. Disable websocket traffic 2. Change the websocket response from backend to always return `101 Switch protocol` based on RFC. 3. Apply the patch and the ext_proc filter will not send the local reply that is generated by Envoy to the ext_proc server for processing. 4. Apply the patch that the router will cancel the upstream requests when sending a local reply. Impact Denial of service Reporter Vasilios Syrakis Fernando Cainelli

Related

Alias · CVE (1)

  • CVE-2025-30157 Envoy is a cloud-native high-performance edge/middle/service proxy. vulnerability

Weakness · CWE (1)

  • CWE-460 Improper Cleanup on Thrown Exception weakness

References