CVE-2026-4636Keycloak中存在一个安全漏洞,拥有uma_protection角色的经过身份验证的用户可以绕过用户管理访问(UMA)策略验证。攻击者能够在策略创建请求中包含属于其他用户的资源标识符,即使URL路径指定的是攻击者拥有的资源。这导致攻击者获得对受害者拥有资源的未经授权的权限,从而能够获取请求方令牌(RPT)并访问敏感信息或执行未经授权的操作。
该漏洞的核心在于Keycloak在处理UMA策略创建时的逻辑缺陷。当用户尝试为资源创建UMA策略时,系统通常会验证请求者是否拥有该资源。然而,漏洞允许拥有uma_protection角色的攻击者篡改请求参数,在请求体中插入受害者拥有的资源ID,而URL路径中保持为攻击者拥有的资源。由于验证逻辑存在疏漏,服务器仅校验了URL中的资源归属,而未严格校验请求体中关联的资源ID。这导致策略被错误地绑定到了受害者的资源上。攻击者随后可以利用该策略申请RPT令牌,成功获取对受害者资源的访问权限,从而绕过原有的权限隔离机制。