Kubernetes Ingress NGINX 控制器曝出严重未认证远程代码执行漏洞

Wiz Research 发现 Kubernetes Ingress NGINX 控制器存在多个严重未认证远程代码执行漏洞,攻击者可无需认证执行任意命令,获取集群密钥导致完全集群沦陷。漏洞涉及配置注入和权限绕过,建议立即升级至修复版本并加强访问控制。

Kubernetes Ingress NGINX 控制器严重未认证远程代码执行漏洞

摘要

Wiz Research 在 Kubernetes 的 Ingress NGINX 控制器中发现了多个严重的未认证远程代码执行(RCE)漏洞,统称为 IngressNightmare。这些漏洞使攻击者无需认证即可在 Ingress NGINX 控制器的 Pod 中执行任意命令。因此,攻击者可能未经授权访问 Kubernetes 集群中所有命名空间存储的密钥,最终导致完全集群沦陷。利用这些漏洞会带来严重的安全风险,包括环境内的横向移动和数据泄露。已识别的漏洞包括:

  • CVE-2025-1097:Ingress 对象验证不安全,允许远程命令注入。
  • CVE-2025-1098:用户提供输入的处理不安全,导致任意命令执行。
  • CVE-2025-24514:恶意 Ingress 对象允许任意 NGINX 配置注入。
  • CVE-2025-1974:安全控制绕过,导致未经授权的命令执行。

受影响系统和/或应用

Ingress NGINX 控制器版本 1.12.1 和 1.11.5 之前均受影响。

技术细节

每个已识别的漏洞对 Kubernetes 环境构成独特风险:

  • CVE-2025-1097:通过未清理的 auth-tls-match-cn 注解进行 Ingress NGINX 控制器配置注入。该漏洞源于对 nginx.ingress.kubernetes.io/auth-tls-match-cn 注解的不当处理。控制器未能充分清理此输入,允许攻击者注入任意 NGINX 配置。通过制作带有特殊格式 auth-tls-match-cn 注解的恶意 Ingress 对象,攻击者可以操纵 NGINX 配置以在 Ingress 控制器的 Pod 中执行未经授权的命令。

  • CVE-2025-1098:通过未清理的 Mirror 注解进行 Ingress NGINX 控制器配置注入。此问题是由于 nginx.ingress.kubernetes.io/mirror-targetnginx.ingress.kubernetes.io/mirror-host 注解中的输入验证不足。攻击者可以通过这些注解注入恶意配置,导致在 NGINX 工作进程中执行任意命令。这可能导致未经授权访问 Pod,并可能访问集群范围的密钥。

  • CVE-2025-24514:通过未清理的 Auth-URL 注解进行 Ingress NGINX 控制器配置注入。该漏洞涉及 nginx.ingress.kubernetes.io/auth-url 注解,该注解在纳入 NGINX 配置时未得到适当清理。攻击者可以制作带有特殊格式 auth-url 注解的恶意 Ingress 对象以注入任意 NGINX 指令。此注入可能导致在 Ingress 控制器的 Pod 中执行未经授权的命令。

  • CVE-2025-1974:Ingress NGINX 准入控制器远程代码执行。此严重漏洞允许具有 Pod 网络访问权限的未认证攻击者在 Ingress-NGINX 控制器中实现任意代码执行。利用此漏洞可能导致控制器可访问的密钥泄露,可能引发完全集群接管。

缓解与建议

  • 立即升级:升级到 Ingress NGINX 控制器版本 1.12.1 或 1.11.5 或更高版本。

  • 限制访问:确保准入 Webhook 端点未外部暴露。实施严格的网络策略以限制对准入控制器的访问,仅允许 Kubernetes API 服务器与其通信。

  • 临时禁用:如果无法立即升级,考虑临时禁用准入控制器组件:

    • 对于 Helm 安装:使用 controller.admissionWebhooks.enabled=false 重新安装。
    • 对于手动安装:删除名为 ingress-nginx-admission 的 ValidatingWebhookConfiguration,并从 Ingress-NGINX 控制器的 Deployment 或 DaemonSet 的容器中移除 –validating-webhook 参数。
    • 注意:升级后记得重新启用验证准入控制器,因为它为您的 Ingress 配置提供必要的保障。
  • 监控与审计:定期监控日志和网络流量以检测异常活动或未经授权的 Ingress 对象创建。特别观察:

    • Ingress NGINX 控制器 Pod 内的异常进程执行。
    • 控制器 Pod 发起的意外出站连接。
    • 包含意外 Ingress 对象创建或修改的日志条目。

网络融合中心的行动

CFC 将继续监控情况,并在需要时发送咨询更新。需要立即采取行动,通过应用补丁、限制访问和加强安全监控来缓解潜在利用。组织应优先考虑这些措施,以保护其云环境免受潜在威胁。订阅我们漏洞扫描服务的客户将在扫描提供商提供相关插件后,立即收到扫描范围内发现的严重漏洞的相关结果。

参考

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计