Envoy crashes when JWT authentication is configured with the remote JWKS fetching
Package
Affected versions
>= 1.36.0, <= 1.36.2
>= 1.35.0, <= 1.35.6
>= 1.34.0, <= 1.34.10
<= 1.33.12
Patched versions
1.36.3
1.35.7
1.34.11
1.33.13
Description
Published by the National Vulnerability Database
Dec 3, 2025
Published to the GitHub Advisory Database
Dec 5, 2025
Reviewed
Dec 5, 2025
Summary
Envoy crashes when JWT authentication is configured with the remote JWKS fetching,
allow_missing_or_failedis enabled, multiple JWT tokens are present in the request headers and the JWKS fetch fails.Details
This is caused by a re-entry bug in the
JwksFetcherImpl. When the first token's JWKS fetch fails,onJwksError()callback triggers processing of the second token, which calls fetch() again on the same fetcher object.The original callback's reset() then clears the second fetch's state (
receiver_ and request_) which causes a crash when the async HTTP response arrives.PoC
allow_missing_or_failedorallow_missingis enabledImpact
DoS and Crash
Mitigation
allow_missing_or_failedorallow_missingReferences