CVE-2026-33211Tekton Pipelines 是一个用于在 Kubernetes 上声明 CI/CD 流水线的项目。在版本 1.0.0 及之后,但在 1.0.1、1.3.3、1.6.1、1.9.2 和 1.10.2 之前的版本中,其 git 解析器存在严重的安全漏洞。该漏洞源于 `pathInRepo` 参数未经过滤,允许路径遍历攻击。拥有创建 `ResolutionRequests` 权限的租户(例如通过创建使用 git 解析器的 `TaskRuns` 或 `PipelineRuns`),可以读取解析器 Pod 文件系统上的任意文件。敏感内容(如 ServiceAccount 令牌)会被读取并以 base64 编码形式返回在 `resolutionrequest.status.data` 中,这可能导致集群权限被完全接管。
该漏洞的原理是 Tekton Pipelines 的 git resolver 在处理用户输入的 `pathInRepo` 参数时,未能正确校验路径边界,导致存在目录遍历漏洞。攻击者可以利用 `../` 序列突破 git 仓库的预期目录结构,访问 resolver pod 容器内的任意文件系统路径。在 Kubernetes 环境中,Service Account token 通常自动挂载在 `/var/run/secrets/kubernetes.io/serviceaccount/` 路径下。攻击者只需构造一个恶意的 TaskRun 或 PipelineRun,将 `pathInRepo` 指向该敏感路径。当 resolver pod 执行解析逻辑时,它会读取本地文件系统而非远程仓库内容,并将结果通过 status 字段暴露给攻击者。由于 CVSS 评分为 9.6,且影响范围涉及机密性和完整性,该漏洞允许低权限攻击者通过窃取凭证进行权限提升,进而控制整个集群。