⚠️ Critical RCE in Ingress-NGINX via Configuration Injection (CVE-2025-1974 and more)
此仓库包含针对 CVE-2025-1974 的概念验证(PoC)利用程序,这是 Kubernetes 的 Ingress-NGINX 控制器中的一个严重(CVSS 9.8)漏洞。该漏洞允许未经身份验证的攻击者通过使用 Validating Admission Controller 时不安全的配置注入实现远程代码执行。这是 2025 年 3 月 26 日披露并修复的五项漏洞中最严重的一个。
📌 影响:
• 受影响版本:Ingress-NGINX 控制器早于 v1.12.1 / v1.11.5 的版本
• 攻击面:
• 任何 Pod 网络中的工作负载均可利用 —— 无需凭据或管理员权限
• 攻击者可以通过诸如 configuration-snippet 等注解注入任意 NGINX 指令(例如 content_by_lua_block)
• 结合配置错误,攻击者可以窃取 Secrets 或实现完全集群权限控制
• 范围:
• Ingress-NGINX 默认通常可以访问所有集群 Secrets
• 典型云 VPC 或企业网络中的 Pod 可以访问准入控制器端点
• 受影响的集群包括启用了准入控制的 Ingress-NGINX 集群(许多设置中为默认配置)
🛡️ 缓解措施:
• 升级至 Ingress-NGINX v1.12.1 或 v1.11.5
• 禁用危险注解(configuration-snippet、server-snippet 等)
• 限制对 Validating Admission Webhook 的网络访问
• 应用严格的 RBAC 以防止未授权的 Ingress 创建
🧪 此 PoC 演示了攻击者如何利用该漏洞在 ingress 控制器 pod 内运行任意代码 —— 该 pod 通常可以访问内部服务和 secrets —— 从而在脆弱配置中升级为完全集群接管。
🚨 免责声明:此 PoC 仅用于教育和研究目的。未经明确许可,请勿使用。