Kubernetes 安全警报:“Ingress-Nginx” 注入漏洞可能导致整个集群机密泄露
ngress-Nginx 高危漏洞
研究人员在 Kubernetes 常用的 Ingress 控制器 ingress-nginx 中发现了一个严重安全漏洞。
该漏洞编号为 CVE-2026-3288,CVSS 评分为 8.8(高危)。
漏洞主要与 Ingress 注解(annotation)处理机制有关。攻击者可能利用这个问题突破原本的隔离环境,从而获取整个 Kubernetes 集群中的敏感数据。
漏洞原理
问题出现在 nginx.ingress.kubernetes.io/rewrite-target 这个 Ingress 注解上。
安全研究人员发现,攻击者可以构造恶意内容,通过这个注解 向底层 Nginx 配置注入恶意指令。
一旦成功,攻击者就能影响运行在集群里的 Ingress-NGINX Controller 进程。
简单理解:
原本用于修改 URL 路径的配置参数,被攻击者利用来偷偷插入恶意配置。
可能造成的影响
如果攻击成功,后果可能非常严重:
1️⃣ 任意代码执行
攻击者可以在 Ingress-NGINX 控制器的运行环境中执行任意代码。
2️⃣ 大规模数据泄露
很多默认部署的 ingress-nginx 控制器 拥有整个 Kubernetes 集群的访问权限。
因此攻击者可能读取整个集群中的 Secrets(密钥、API Token、数据库密码等)。
换句话说:
攻击者可能拿到整个 Kubernetes 集群里的所有敏感凭据。
如何检查是否使用了该组件
如果不确定你的集群是否运行 ingress-nginx,可以执行:
1 | kubectl get pods --all-namespaces --selector app.kubernetes.io/name=ingress-nginx |
如果返回结果中有 Pod,则说明集群正在使用 ingress-nginx 控制器。
受影响版本
以下版本存在漏洞:
- ingress-nginx 1.13.8 之前
- ingress-nginx 1.14.4 之前
- ingress-nginx 1.15.0 之前
管理员应立即检查
运维人员应该检查现有的 Ingress 配置,重点查看:
rules.http.paths.path字段- 是否存在 异常或可疑的数据
如果发现异常配置,可能意味着有人尝试利用该漏洞。
修复方案(推荐)
最有效的解决方法是 升级到已修复的版本:
- 1.13.8
- 1.14.4
- 1.15.0 及以上版本
临时缓解措施
如果暂时无法升级,可以采用以下方式降低风险:
- 通过 Admission Controller(准入控制策略)
- 禁止使用
rewrite-target注解
直到完成版本升级并打上补丁。
本文为译文,请以原文为准。文章来源: https://securityonline.info/kubernetes-security-alert-ingress-nginx-injection-flaw-risks-cluster-wide-secret-exposure/