中文

打破舱壁:深入分析 Kubernetes 运算器中的跨命名空间引用漏洞

密码学与安全 2025-12-18 v3

摘要

Kubernetes 运算器是一类自动化工具,用于在 Kubernetes 集群中管理应用程序生命周期,扩展 Kubernetes 的功能,减轻人类工程师的运维负担。尽管运算器显著简化了 DevOps 工作流程,但它们引入了新的安全风险。特别是,Kubernetes enforces 命名空间隔离以分离工作负载并限制用户访问,确保用户只能与其授权命名空间内的资源进行交互。然而,Kubernetes 运算器往往需要获得提升的权限并可能跨多个命名空间 interact with 资源。这引入了一种新型漏洞——跨命名空间引用漏洞。其根源在于声明的资源作用范围与实现的运算器逻辑作用范围之间的不匹配,导致 Kubernetes 无法正确隔离命名空间。利用此漏洞,拥有单个授权命名空间有限访问权限的攻击者可绕过命名空间隔离,进而对其他未授权命名空间执行操作,导致特权提升及进一步影响。鉴于本文是首次系统性调查 Kubernetes 运算器攻击,我们提出了两种策略,演示了攻击者如何绕过命名空间隔离。通过大规模测量,我们发现活跃的运算器中有超过 14% 可能存在漏洞。我们的发现已报告给相关开发者,提交时确认 8 项并公布 7 个 CVE,涉及厂商包括 Red Hat 和 NVIDIA,凸显了 Kubernetes 运算器安全实践的紧迫性。为缓解此问题,我们开源了静态分析套件并提出了具体缓解措施,以惠及整个生态系统。

关键词

引用

@article{arxiv.2507.03387,
  title  = {Breaking the Bulkhead: Demystifying Cross-Namespace Reference Vulnerabilities in Kubernetes Operators},
  author = {Andong Chen and Ziyi Guo and Zhaoxuan Jin and Zhenyuan Li and Yan Chen},
  journal= {arXiv preprint arXiv:2507.03387},
  year   = {2025}
}

备注

18 pages. Accepted by Network and Distributed System Security (NDSS) Symposium 2026. Some information has been omitted from this preprint version due to ethical considerations. The final published version differs from this version