CVE-2026-48090 PUBLISHED

Envoy HTTP: OAuth2 filter late async token completion after stream teardown (UAF / crash risk)

Assigner: GitHub_M
Reserved: 20.05.2026 Published: 26.06.2026 Updated: 26.06.2026

Envoy is an open source edge and service proxy designed for cloud-native applications. From 1.37.0 until 1.37.5 and 1.38.3, the HTTP OAuth2 filter (envoy.filters.http.oauth2) can leave an in-flight async token exchange attached to a downstream stream that has already been torn down. A late AsyncClient completion can still invoke OAuth2Filter methods that use StreamDecoderFilterCallbacks after that object’s lifetime has ended, causing undefined behavior, worker crashes (availability loss), and use-after-free / invalid-vptr failures under AddressSanitizer. This is a memory-safety / lifetime issue in the data plane, not a trivial config bug. Remote code execution is not claimed here; the primary demonstrated impact is DoS via crash and UB; any further impact would be deployment- and allocator-dependent. This vulnerability is fixed in 1.37.5 and 1.38.3.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS Score: 5.9

Product Status

Vendor envoyproxy
Product envoy
Versions
  • Version >= 1.38.0, < 1.38.3 is affected
  • Version >= 1.37.0, < 1.37.5 is affected

References

Problem Types

  • CWE-416: Use After Free CWE