CVE-2026-9791Keycloak存在一处信息泄露漏洞。即便管理员已禁用Organizations功能,拥有现有组织成员身份的认证用户仍可通过账户API或请求包含'organization'范围的OIDC令牌,获取组织元数据。这可能导致资源服务器基于泄露信息做出错误的授权决策。
该漏洞的核心在于Keycloak在处理Organizations功能禁用时的状态不一致与校验缺失。尽管管理员在服务器端禁用了Organizations功能,旨在停止基于组织的访问控制,但系统中预存的用户-组织关联关系并未被彻底清除或隔离。攻击者仅需是一个拥有现有组织成员身份的认证用户。利用此漏洞,攻击者可以向Keycloak的账户API发起请求,或者在OIDC认证流程中,故意向令牌端点请求包含'organization'范围的令牌。由于后端在生成令牌时未能正确校验该功能是否已被禁用,Keycloak依然会检索数据库中的组织信息,并将其作为声明嵌入到ID Token或Access Token中。这导致本应失效的敏感组织元数据(如组织ID、名称及角色)被泄露。由于资源服务器通常信任Keycloak签发的令牌,它们会继续依据这些元数据执行授权逻辑,从而可能导致用户获得不当的访问权限,破坏了系统的安全边界。