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.
CVE-2026-9087
This high-severity CVE scores 8.1 under NVD CVSS v3. EPSS exploit probability: 0.3%, top 77% of all CVEs by exploit prediction. GitHub Security Advisory enrichment pending alignment with NVD CVSS.
- High severity, but no confirmed exploitation yet
A fix is available — apply it.
- CVSS v3
- 8.1
- EG Score
- 8.1(medium)
- EG Risk
- 37(Track)EG Risk 37/100SSVC: Track
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity81% × 45%Exploitation0% × 40%Automatability0% × 15%Action: Routine — remediate on your standard cadence. - EPSS PROB
- 0%
- EPSS %ILE
- 23%
- KEV
- Not listed
Published
May 20, 2026
Last Modified
July 23, 2026
Advisory Details (2)
Auto-updated Jun 10, 20262480172 – (CVE-2026-9087) CVE-2026-9087 keycloak: Cross-Session Email Verification Proof Not Bound to Upstream Identity in First-Broker-Login
https://bugzilla.redhat.com/show_bug.cgi?id=2480172Vendor Advisories for CVE-2026-9087(5)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
- RHSA-2026:30050Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat build of Keycloak 26.4.13 Images Security Update
- RHSA-2026:30049Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat build of Keycloak 26.4.13 Security Update
- RHSA-2026:25098Red Hat Product SecurityMedium
Red Hat Security Advisory: Red Hat build of Keycloak 26.6.3 Update
- RHSA-2026:25097Red Hat Product SecurityMedium
Red Hat Security Advisory: Red Hat build of Keycloak 26.6.3 Images Update
- GHSA-m6qj-3mpp-57v8GitHub Security AdvisoriesMedium
Keycloak: Insufficient verification proof scoping enables identity provider account linking attack and account compromise
Patch Availability(3)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| redhat | rhbk/keycloak-rhel9 | 2026-06-25 | redhat |
| redhat | rhbk/keycloak-rhel9-operator:26.4-19 | 2026-06-25 | redhat |
| redhat | rhbk/keycloak-rhel9-operator:26.6-6 | 2026-06-10 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(1 across 1 ecosystem)
Maven(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| org.keycloak:keycloak-services | 1.0-alpha-1 ... 9.0.3 (227 versions) | 26.6.3 | — |
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 11× in last 7d / 37× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-07-26 14:54 UTCEPSS rescore
- 2026-07-26 08:14 UTCEG score recompute
- 2026-07-26 08:14 UTCVendor advisory
- 2026-07-25 14:18 UTCEPSS rescore
- 2026-07-24 14:18 UTCEPSS rescore
- 2026-07-23 14:18 UTCEPSS rescore
- 2026-07-23 03:23 UTCEG score recompute▲ 1.70
- 2026-07-22 14:08 UTCEPSS rescore
- 2026-07-21 15:25 UTCEPSS rescore
- 2026-07-21 15:25 UTCEPSS rescore
- 2026-07-20 17:08 UTCEPSS rescore
- 2026-07-19 14:31 UTCEPSS rescore
- 2026-07-19 02:29 UTCEPSS rescore
- 2026-07-18 10:04 UTCEPSS rescore
- 2026-07-16 17:03 UTCEPSS rescore
- 2026-07-15 16:57 UTCEPSS rescore
- 2026-07-15 02:00 UTCEPSS rescore
- 2026-07-13 22:31 UTCEPSS rescore
- 2026-07-13 06:13 UTCEPSS rescore
- 2026-07-12 05:46 UTCEPSS rescore
- 2026-07-11 08:27 UTCEPSS rescore
- 2026-07-09 19:10 UTCEPSS rescore
- 2026-07-08 15:16 UTCEPSS rescore
- 2026-07-07 13:46 UTCEPSS rescore
- 2026-07-06 16:27 UTCEPSS rescore
Show 71 moreShow fewer
- 2026-07-06 02:23 UTCEPSS rescore
- 2026-07-05 02:31 UTCEPSS rescore
- 2026-07-05 02:30 UTCEPSS rescore
- 2026-07-04 06:31 UTCEPSS rescore
- 2026-07-04 06:31 UTCEPSS rescore
- 2026-07-01 15:07 UTCEPSS rescore
- 2026-06-30 23:22 UTCEPSS rescore
- 2026-06-29 20:26 UTCVendor advisory
- 2026-06-29 14:06 UTCEPSS rescore
- 2026-06-28 14:07 UTCEPSS rescore
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-27 20:13 UTCVendor advisory
- 2026-06-27 03:08 UTCEPSS rescore
- 2026-06-26 19:33 UTCVendor advisory
- 2026-06-25 15:09 UTCVendor advisory
- 2026-06-25 13:50 UTCEPSS rescore
- 2026-06-24 14:05 UTCEPSS rescore
- 2026-06-23 21:33 UTCEPSS rescore
- 2026-06-22 14:25 UTCEPSS rescore
- 2026-06-21 14:56 UTCEPSS rescore
- 2026-06-21 01:59 UTCEPSS rescore
- 2026-06-19 19:26 UTCEPSS rescore
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-18 02:02 UTCVendor advisory
- 2026-06-17 17:53 UTCEPSS rescore
- 2026-06-17 00:30 UTCVendor advisory
- 2026-06-16 17:53 UTCEPSS rescore
- 2026-06-16 00:37 UTCVendor advisory
- 2026-06-15 17:49 UTCEPSS rescore
- 2026-06-15 17:49 UTCEPSS rescore
- 2026-06-15 00:46 UTCVendor advisory
- 2026-06-14 23:18 UTCEPSS rescore
- 2026-06-14 00:52 UTCVendor advisory
- 2026-06-13 23:00 UTCEPSS rescore
- 2026-06-13 01:02 UTCVendor advisory
- 2026-06-12 23:12 UTCEPSS rescore
- 2026-06-12 23:12 UTCEPSS rescore
- 2026-06-12 01:10 UTCVendor advisory
- 2026-06-11 14:00 UTCEPSS rescore
- 2026-06-11 01:19 UTCVendor advisory
- 2026-06-11 01:19 UTCGHSA enrichment
- 2026-06-10 22:19 UTCEPSS rescore
- 2026-06-10 13:22 UTCEPSS rescore
- 2026-06-10 01:28 UTCGHSA enrichment
- 2026-06-09 01:38 UTCGHSA enrichment
- 2026-06-08 23:31 UTCNVD updateCVSS v3 → 8.1 · severity → HIGH
- 2026-06-08 14:17 UTCEPSS rescore
- 2026-06-08 01:47 UTCGHSA enrichment
- 2026-06-07 15:25 UTCEPSS rescore
- 2026-06-07 01:57 UTCGHSA enrichment
- 2026-06-06 13:47 UTCEPSS rescore
- 2026-06-06 02:06 UTCGHSA enrichment
- 2026-06-05 22:47 UTCEPSS rescore
- 2026-06-05 06:10 UTCEPSS rescore
- 2026-06-05 02:16 UTCGHSA enrichment
- 2026-06-04 13:12 UTCEPSS rescore
- 2026-06-04 02:25 UTCGHSA enrichment
- 2026-06-03 02:33 UTCGHSA enrichment
- 2026-06-02 20:13 UTCEPSS rescore
- 2026-06-02 02:42 UTCGHSA enrichment
- 2026-06-01 13:52 UTCEPSS rescore
- 2026-06-01 02:51 UTCGHSA enrichment
- 2026-05-31 22:30 UTCEPSS rescore
- 2026-05-31 00:16 UTCEPSS rescore
- 2026-05-29 13:44 UTCEPSS rescore
- 2026-05-28 13:44 UTCEPSS rescore
- 2026-05-27 13:40 UTCEPSS rescore
- 2026-05-26 13:44 UTCEPSS rescore
- 2026-05-26 07:18 UTCEPSS rescore
- 2026-05-21 22:43 UTCEPSS rescore
- 2026-05-20 17:36 UTCEG score recompute
Frequently asked(5)
What is CVE-2026-9087?
When was CVE-2026-9087 disclosed?
Is CVE-2026-9087 actively exploited?
What is the CVSS score of CVE-2026-9087?
How do I remediate CVE-2026-9087?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-9087
Is Your Infrastructure Affected by CVE-2026-9087?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.