Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable but gated by a non-default CTS write primitive and prior Push registration (AC:H, PR:L); token forgery impacts relying parties beyond OpenAM (S:C) with high confidentiality/integrity but no availability effect.
Primary rating from Vendor (https://github.com/OpenIdentityPlatform/OpenAM).
CVSS VectorVendor: https://github.com/OpenIdentityPlatform/OpenAM
Lifecycle Timeline
5DescriptionCVE.org
Summary
Description
An Authorization Bypass Through User-Controlled Key (CWE-639) exists in OpenAM's stateful OAuth2 token-read path. Under certain conditions, this may allow an attacker to forge OAuth2 bearer tokens and OIDC ID tokens with arbitrary subject, client, realm, and scope. This affects OpenAM Community Edition through version 16.0.6.
The OAuth2 token-read path reads caller-supplied token identifiers from the shared Core Token Store (CTS) without placing them in an OAuth-only namespace and without binding the row's trusted CTS type to the expected OAuth token family, so any CTS row whose BLOB claims to be an OAuth token is accepted on the read path with no integrity check.
Impact
OpenAM Community Edition deployments through version 16.0.6 with the OAuth2 Provider service enabled in a realm are potentially affected, but the vulnerable read path is only reachable once an attacker can place attacker-controlled JSON into the shared CTS under an identifier they know. For example, an anonymous Push Notification SNS callback handler, reachable by any low-privileged user in a Push Notification-enabled realm after a single legitimate Push registration can trigger the exploit.
In any deployment where such a primitive exists, an attacker can forge OAuth2 bearer tokens with attacker-chosen userName, clientID, realm, and scope. The compromise does not by itself create an OpenAM SSO session or grant admin-console access.
Patch
This has been patched in OpenAM Community Edition version 16.1.1. Users are encouraged to update to the latest release.
AnalysisAI
OpenAM Community Edition through 16.0.6 fails to namespace OAuth2 token identifiers in its shared Core Token Store (CTS), allowing attackers who can write JSON rows into the CTS to forge OAuth2 bearer tokens and OIDC ID tokens with arbitrary subject, client, realm, and scope. Exploitation is not universal: the read path only becomes reachable once a CTS-write primitive exists, for example an anonymous Push Notification SNS callback handler that any low-privileged user can reach after one legitimate Push registration, which is reflected in the CVSS 4.0 Attack Requirements metric (AT:P). The flaw is fixed in OpenAM Community Edition 16.1.1 (commit e047b01), and no public exploit code or CISA KEV listing was identified in the supplied intelligence.
Same technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-78359
GHSA-cj8f-2fhf-826r