Start with Identity
Identity CVE · OAuth / OIDC / JWT

CVE-2025-27370OpenID private_key_jwt audience ambiguity

high
Product: OpenID Connect specificationVendor: OpenID FoundationDisclosed: 2025-03-01Status: Spec-level fixProtocol deep diveNVD ↗

What broke

CVE-2025-27370 is the OpenID Connect identifier for the same private_key_jwt audience ambiguity as CVE-2025-27371. A client assertion is a JWT. If aud is not a single, exact identifier for the intended authorization server, another server that knows the client's public key may accept it.

Why it matters

OIDC deployments reuse OAuth client authentication. Multi-tenant SaaS IdPs and multi-region banks are the obvious victims: one environment's client JWT becomes another's. This is a protocol footgun, not a single product bug.

What to do

  • Same control as 27371: exact aud, per-environment keys, and a library that rejects surprising audiences.
  • Review FAPI deployments first. They lean on private_key_jwt and sender-constrained tokens.

After you patch

Token-layer flaws produce credentials that keep working after the patch, so remediation is about invalidating what was issued.

  • Rotate the signing keys published at your JWKS endpoint, then confirm relying parties refetch on an unknown key id rather than caching indefinitely.
  • Revoke refresh tokens and sessions. Access tokens expire on their own; refresh tokens are the ones that turn a short compromise into months of access.
  • Audit client registrations and consent grants created during the window, particularly any client with broad scopes or a redirect URI you do not recognize.
  • Verify validation on your side: pinned algorithms, issuer and audience checks, and no acceptance of alg: none. See JWT and the validate a JWT recipe.

Sources

Last reviewed By SWI Community TeamSuggest a correctionHow we research

Technique

This CVE is an instance of Token replay against an unbound endpoint. A token that is not bound to the client, session, or challenge that requested it can be lifted once and replayed anywhere the check for binding is missing, no matter how it was strengthened.

Know a primary source we should add, or a patch status that has changed? Email community@startwithidentity.com. See all briefs in the identity CVE catalog, or volunteer as a CVE Analyst.
Compiled from vendor advisories, NVD, CISA KEV, and public research. CVSS figures can disagree across NVD and the CNA. Confirm affected versions against the vendor advisory before you patch. Independent, community-driven analysis. See the disclaimer.