IPBUF安全漏洞报告
English
CVE-2026-41068 CVSS 7.7 高危

CVE-2026-41068 Kyverno跨命名空间越权读取漏洞

披露日期: 2026-04-24

漏洞信息

漏洞编号
CVE-2026-41068
漏洞类型
权限提升
CVSS评分
7.7 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Kyverno

相关标签

KyvernoKubernetes权限提升RBAC绕过ConfigMap云原生安全

漏洞概述

Kyverno是一个专为云原生平台工程团队设计的策略引擎。该漏洞源于ConfigMap上下文加载器中存在的验证缺陷。尽管之前修复了apiCall上下文中的类似问题,但ConfigMap加载器未对configMap.namespace字段进行验证。这允许拥有命名空间管理权限的攻击者利用Kyverno的特权服务账户,读取任意命名空间中的ConfigMap数据。此漏洞构成了完整的基于角色的访问控制(RBAC)绕过风险,严重影响多租户Kubernetes集群的隔离性和安全性。

技术细节

该漏洞的根源在于Kyverno在处理策略上下文时,未对ConfigMap的命名空间来源进行严格的权限校验。具体来说,当策略定义中引用了ConfigMap作为上下文数据源时,configMap.namespace字段直接被用于读取资源,而系统未检查触发该策略的用户是否拥有目标命名空间的访问权限。利用方式如下:攻击者首先需要拥有某个命名空间的管理员权限。随后,攻击者创建或触发一条Kyverno策略,在该策略的上下文中指定目标敏感ConfigMap(例如位于kube-system或其他高敏感命名空间中的配置)。由于Kyverno的控制器通常运行在具有高权限的服务账户下,它会直接读取攻击者指定的ConfigMap内容。通过观察策略的执行结果或日志,攻击者可以窃取原本无权访问的敏感信息,从而实现跨命名空间的越权访问。

攻击链分析

STEP 1
信息收集
攻击者确认目标集群使用Kyverno,并锁定其他命名空间中包含敏感信息的ConfigMap。
STEP 2
权限获取
攻击者获取集群中某个非敏感命名空间的管理员权限。
STEP 3
漏洞利用
攻击者创建或触发一个Kyverno策略,利用context字段指定目标ConfigMap及其命名空间,绕过namespace字段的验证。
STEP 4
数据窃取
Kyverno以高特权身份读取ConfigMap,攻击者通过策略执行结果或日志获取敏感数据。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
apiVersion: kyverno.io/v1 kind: ClusterPolicy metadata: name: cve-2026-41068-poc spec: validationFailureAction: Audit background: false rules: - name: leak-sensitive-config match: resources: kinds: - Pod context: # Vulnerability: The namespace field is not validated against the user's RBAC. # This attempts to load a configmap from a restricted namespace (e.g., kube-system) - name: leaked-data configMap: name: sensitive-config namespace: kube-system validate: message: "PoC: Triggering context loading to bypass RBAC." pattern: spec: {}

影响范围

Kyverno < 1.17.2

防御指南

临时缓解措施
建议立即升级 Kyverno 到 1.17.2 或更高版本以修复此漏洞。在无法立即升级的情况下,应严格限制用户创建或修改 Kyverno 策略的权限,防止普通命名空间管理员定义包含任意 ConfigMap 上下文的策略,同时加强对审计日志的监控,及时发现跨命名空间的资源访问尝试。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表