CVE-2026-48717
moderatePKCE bypass in OpenAM OAuth authorization code redemption (pre-16.1.1)
OpenAM (Open Access Management) versions before 16.1.1 fail to enforce the PKCE code_verifier during authorization code redemption unless the realm-wide codeVerifierEnforced flag is enabled, which is disabled by default. As a result, an attacker who intercepts a PKCE-protected authorization code (e.g., via referrer leakage, logs, or network interception) can redeem it at the token endpoint by simply omitting the code_verifier parameter entirely, while an explicitly incorrect verifier is still rejected. Successful exploitation yields the tokens issued for that code — effectively hijacking the victim's authenticated session and impersonating them in applications relying on the OpenAM identity provider. All deployments prior to 16.1.1 are vulnerable; public OAuth clients are directly affected, while confidential-client exploitation additionally requires the attacker to hold client authentication material or another redemption context. The flaw (CWE-285, CVSS 4.0 9.1 critical) is fixed in version 16.1.1, and there is currently no public proof of concept and no evidence of exploitation in the wild.
What to do: Upgrade to OpenAM 16.1.1 or later as the primary fix. Until then, enable the realm-wide codeVerifierEnforced setting so the token endpoint always requires a code_verifier, and verify that clients issued authorization codes with a code_challenge are actually validating it. Review token-endpoint logs for redemptions of PKCE-issued authorization codes that omit the code_verifier parameter, and rotate client secrets and review issued tokens if any such redemptions are found.
| Open Identity Platform (OpenAM open-source project) OpenAM (Open Access Management) | prior to 16.1.1 (fixed in 16.1.1) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Open Access Management (OpenAM) is an access management solution. Prior to 16.1.1, AuthorizationCodeGrantTypeHandler requires a code_verifier only when the realm-wide codeVerifierEnforced setting is enabled, even when an authorization code stores a code_challenge. Because that setting is disabled by default, an attacker who intercepts a PKCE-protected authorization code can omit code_verifier and redeem the code, while an explicitly incorrect verifier is rejected. Public clients are directly affected, and confidential-client exploitation additionally requires client authentication material or another redemption context. This issue is fixed in version 16.1.1.
- Weakness
- CWE-285
- Vector
- CVSS:4.0/AV:N/AC:H/AT:P/PR:N/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
In the news0 stories
No ingested article mentions this CVE yet.