{"id":"GHSA-mp85-7mrq-r866","summary":"Envoy crashes when JWT authentication is configured with the remote JWKS fetching","details":"### Summary\nEnvoy crashes when JWT authentication is configured with the remote JWKS fetching, `allow_missing_or_failed` is enabled, multiple JWT tokens are present in the request headers and the JWKS fetch fails.\n\n### Details\nThis 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.\n\nThe original callback's reset() then clears the second fetch's state (`receiver_ and request_`) which causes a crash when the async HTTP response arrives.\n\n### PoC\n* `allow_missing_or_failed` or `allow_missing` is enabled\n* The client send 2 Authorization headers\n* the remote JWKS fetching failed\n* There will be crash\n\n### Impact\nDoS and Crash\n\n### Mitigation\n* Disable the `allow_missing_or_failed` or `allow_missing`","aliases":["BIT-envoy-2025-64527","CVE-2025-64527"],"modified":"2025-12-06T12:29:15.337458Z","published":"2025-12-05T18:12:39Z","database_specific":{"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2025-12-05T18:12:39Z","nvd_published_at":"2025-12-03T18:15:46Z","cwe_ids":["CWE-476"]},"references":[{"type":"WEB","url":"https://github.com/envoyproxy/envoy/security/advisories/GHSA-mp85-7mrq-r866"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2025-64527"},{"type":"PACKAGE","url":"https://github.com/envoyproxy/envoy"}],"affected":[{"package":{"name":"github.com/envoyproxy/envoy","ecosystem":"Go","purl":"pkg:golang/github.com/envoyproxy/envoy"},"ranges":[{"type":"SEMVER","events":[{"introduced":"1.36.0"},{"fixed":"1.36.3"}]}],"database_specific":{"last_known_affected_version_range":"\u003c= 1.36.2","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2025/12/GHSA-mp85-7mrq-r866/GHSA-mp85-7mrq-r866.json"}},{"package":{"name":"github.com/envoyproxy/envoy","ecosystem":"Go","purl":"pkg:golang/github.com/envoyproxy/envoy"},"ranges":[{"type":"SEMVER","events":[{"introduced":"1.35.0"},{"fixed":"1.35.7"}]}],"database_specific":{"last_known_affected_version_range":"\u003c= 1.35.6","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2025/12/GHSA-mp85-7mrq-r866/GHSA-mp85-7mrq-r866.json"}},{"package":{"name":"github.com/envoyproxy/envoy","ecosystem":"Go","purl":"pkg:golang/github.com/envoyproxy/envoy"},"ranges":[{"type":"SEMVER","events":[{"introduced":"1.34.0"},{"fixed":"1.34.11"}]}],"database_specific":{"last_known_affected_version_range":"\u003c= 1.34.10","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2025/12/GHSA-mp85-7mrq-r866/GHSA-mp85-7mrq-r866.json"}},{"package":{"name":"github.com/envoyproxy/envoy","ecosystem":"Go","purl":"pkg:golang/github.com/envoyproxy/envoy"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.33.13"}]}],"database_specific":{"last_known_affected_version_range":"\u003c= 1.33.12","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2025/12/GHSA-mp85-7mrq-r866/GHSA-mp85-7mrq-r866.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"}]}