Keycloak: Privilege escalation in admin REST API (CVE-2026-94000)
Keycloak versions up to 26.8.1 are vulnerable to privilege escalation where a user with "manage-users" permissions can assign composite roles containing "realm-admin" privileges due to incomplete authorization checks.
CVE search metadata
CVE search record: CVE-2026-94000. Severity: medium. CVSS: 6.6. EPSS: 0.40%. KEV: no. Product: Keycloak (<= 26.8.1). Brief: Keycloak: Privilege escalation in admin REST API (CVE-2026-94000). Brief link: https://feed.craftedsignal.io/briefs/2026-10-keycloak-privilege-escalation/
Triage facts
Revision 1- Applicability
- Keycloak (<= 26.8.1)
- Evidence
- Unknown
- Severity
- Low
- Action
- Elevated
- Sources
- 2 public sources
- Freshness
- Revision 1Oct 22, 11:47 UTC
- Vulnerabilities
- 1 CVE
- Source quality
- B2Very likely
Keycloak up to version 26.8.1 contains a privilege escalation vulnerability (CVE-2026-94000) within its admin REST API. While Keycloak previously hardened "group join" operations to check for nested admin roles, the role-mapping endpoints (RoleMapperResource.addRealmRoleMappings and ClientRoleMappingsResource.addClientRoleMapping) do not recursively walk the children of a composite role. Consequently, an attacker holding only the manage-users role can map a composite role that transitively grants realm-management/realm-admin privileges, effectively escalating their own account or other users/groups to realm-admin.
Attack Chain
- Attacker obtains valid credentials for a Keycloak account assigned the
manage-usersrole. - Attacker enumerates available roles via the
.../role-mappings/.../availableendpoint, which is accessible tomanage-usersusers. - Attacker identifies a composite role (or creates one if existing roles permit) that wraps
realm-management/realm-adminas a child. - Attacker performs a
POSTrequest toaddRealmRoleMappingsoraddClientRoleMappingto assign this composite role to a target user, group, or client. - The Keycloak server fails to recursively inspect the nested children of the role and validates only the top-level role name.
- The target user, group, or client gains effective
realm-adminpermissions, allowing for further malicious activity such as creating new roles or accessing confidential information.
Impact
Successful exploitation allows a user with restricted manage-users privileges to gain full realm-admin access. This facilitates complete control over the realm, including user management, configuration of clients, and access to sensitive information, effectively bypassing the principle of least privilege.
Recommendation
- Update all Keycloak instances to a version where CVE-2026-94000 is patched.
- Implement a policy to restrict the ability of
manage-usersto perform role-mapping operations if not strictly required for business operations. - Audit existing role-mapping assignments for composite roles that may grant elevated administrative permissions to unauthorized users.
- Monitor logs for unusual
POSTrequests to role mapping endpoints by users holding themanage-usersrole.
Immediate actions
Upgrade all Keycloak instances to a version containing the fix for CVE-2026-94000.
Threat Hunt
Search API access logs for POST requests to role mapping endpoints originated by users with 'manage-users' role.
Data: Keycloak access logs (REST API calls)