Bug 2501270 (CVE-2026-15943) - CVE-2026-15943 keycloak-services: keycloak-services: OIDC IdP update reuses masked client secret after token URL change
Summary: CVE-2026-15943 keycloak-services: keycloak-services: OIDC IdP update reuses m...
Keywords:
Status: NEW
Alias: CVE-2026-15943
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-07-16 09:32 UTC by OSIDB Bzimport
Modified: 2026-07-17 11:48 UTC (History)
28 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-07-16 09:32:09 UTC
A vulnerability was identified in Keycloak's admin API where the secret masking boundary is bypassed for OIDC identity-provider client secrets. The flaw exists in the IdentityProviderResource.updateIdpFromRep() function. When a PUT request is made to update an IdP configuration and the clientSecret is set to the masked sentinel value (ComponentRepresentation.SECRET_VALUE), Keycloak unconditionally copies the actual stored secret into the update.
The root cause is a lack of validation to check if security-sensitive destination fields—specifically tokenUrl, clientId, or clientAuthMethod}}—have been modified in the same request. A delegated IdP manager with {{manage-identity-providers permissions can exploit this by changing the tokenUrl to an attacker-controlled endpoint while providing the masked secret sentinel. Keycloak will then bind the real secret to the new, malicious endpoint, allowing the attacker to capture the secret through normal broker traffic.


Note You need to log in before you can comment on or make changes to this bug.