漏洞概述
Flux Operator 是一个 Kubernetes 自定义资源定义(CRD)控制器,用于管理 CNCF Flux CD 及其 ControlPlane 企业发行版的生命周期。在版本 0.36.0 至 0.40.0 之前,其 Web UI 身份验证逻辑中存在一个权限提升漏洞。当集群管理员配置了缺少必要声明(如 email、groups)的 OIDC 提供商,或使用可返回空值的自定义 CEL 表达式时,攻击者可绕过 Kubernetes RBAC 模拟机制,以 Flux Operator 服务账户身份执行 API 请求,从而获得更高权限。
漏洞详情
- CVE 编号:CVE-2026-23990
- 漏洞类型:权限提升(CWE-269)、缺失授权检查(CWE-862)
- CVSS 评分:5.3(中危),向量:CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
- 影响版本:Flux Operator 0.36.0 至 0.39.9
影响范围
受影响的是部署了 Flux Operator 且启用了 OIDC 身份验证的 Kubernetes 集群,特别是当 OIDC 令牌缺少 email 或 groups 声明,或配置了可能导致空值的 CEL 表达式时。该漏洞仅在特定配置下触发,并非所有部署均受影响。
风险分析
成功利用此漏洞的攻击者可在未被正确模拟用户身份的情况下,以 Flux Operator 服务账户的权限执行 Kubernetes API 请求。由于该服务账户通常具有较高权限,可能导致敏感数据泄露、集群信息暴露,甚至进一步的权限提升或横向移动。尽管攻击复杂度较高(需特定 OIDC 配置),但一旦满足条件,攻击无需用户交互即可完成。
修复建议
- 立即升级 Flux Operator 至 0.40.0 或更高版本,该版本已修复此问题。
- 若暂时无法升级,应确保所配置的 OIDC 提供商始终返回有效的
email和groups声明,并避免使用可能产生空值的 CEL 表达式。
