---
id: CVE-2025-64527
title: Envoy is a high-performance edge/middle/service proxy
summary: >-
  Envoy is a high-performance edge/middle/service proxy. In 1.33.12, 1.34.10,
  1.35.6, 1.36.2, and earlier, Envoy crashes when JWT authentication is
  configured with the remote JWKS fetching, allow_missing_or_failed is enabled,
  multiple JWT …
severity: medium
cvss: 6.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'
cwe:
  - CWE-476
vendor: envoyproxy
product: envoy
affected:
  - envoy < 1.33.13
  - 'envoy >= 1.34.0, < 1.34.11'
  - 'envoy >= 1.35.0, < 1.35.7'
  - 'envoy >= 1.36.0, < 1.36.3'
patched:
  - envoy 1.36.3
published: '2025-12-03'
updated: '2026-09-25'
sourceUpdated: '2026-09-25T23:10:00.463'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-64527'
references:
  - url: >-
      https://github.com/envoyproxy/envoy/security/advisories/GHSA-mp85-7mrq-r866
    label: security-advisories@github.com
tags:
  - nvd
epss: 0.0053
epssPercentile: 0.42436
ingestedAt: '2026-09-25T23:21:16.869Z'
---

## Overview

Envoy is a high-performance edge/middle/service proxy. In 1.33.12, 1.34.10, 1.35.6, 1.36.2, and earlier, Envoy 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. 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.

## Affected

- `envoy < 1.33.13`
- `envoy >= 1.34.0, < 1.34.11`
- `envoy >= 1.35.0, < 1.35.7`
- `envoy >= 1.36.0, < 1.36.3`

## Remediation

Upgrade past the affected range:

- `envoy 1.36.3`
