CVE-2026-9087 Keycloak: cross-session email verification proof not bound to upstream identity in first-broker-login

Medium 6.4 Published Updated

Attackers can link a second upstream identity to a victim's local account by reusing cross-session verification proofs, leading to account takeover.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2026-9087?

CVE-2026-9087 is a medium-severity authentication bypass vulnerability in Redhat Build of Keycloak, published on 20 May 2026. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.

Official description

A flaw was found in Keycloak. The cross-session verification proof is keyed only by (local userId, idpAlias) and is not bound to the upstream identity that was actually verified, so a second upstream account on the same IdP can consume it and get linked to the victim's local account.

Weakness: CWE-639

Which versions are affected by CVE-2026-9087?

2 open source packages ship an affected version, including org.keycloak:keycloak-services. It affects 1 product.

PackageAffectedFixed in
org.keycloak:keycloak-services MavenAll versions26.6.3
org.keycloak:keycloak-services MavenAll versions26.6.3

Products include Redhat Build of Keycloak.

How do I fix CVE-2026-9087?

Upgrade org.keycloak:keycloak-services to 26.6.3 or later.

Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.

Is CVE-2026-9087 being exploited?

There is no known exploitation of CVE-2026-9087 in the wild and no public exploit code.

All Redhat Build of Keycloak vulnerabilities

Sources

Also known as ECHO-b2e2-7f87-b426, GHSA-m6qj-3mpp-57v8, MINI-7r72-f98m-fxc6, MINI-wgc3-wr2v-qc67.

Is CVE-2026-9087 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free