Kubernetes Ingress-Nginx 高严重性漏洞 CVE-2024-7646:注解验证绕过分析

本文详细解析了Kubernetes Ingress-Nginx组件中编号为CVE-2024-7646的高危安全漏洞。该漏洞允许拥有Ingress对象创建权限的攻击者绕过注解验证,注入任意命令并获取控制器凭证,从而可能导致集群内所有密钥泄露。文章涵盖了漏洞影响、受影响的版本、修复版本以及检测与缓解措施。

CVE-2024-7646: Ingress-nginx 注解验证绕过

CVSS 评级: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

在 ingress-nginx 中发现一个安全问题,拥有创建 Ingress 对象(属于 networking.k8s.io 或 extensions API 组)权限的攻击者可以绕过注解验证,注入任意命令并获取 ingress-nginx 控制器的凭证。在默认配置下,该凭证拥有访问集群中所有密钥的权限。

此问题被评为 高危 (8.8),CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H,并分配了编号 CVE-2024-7646

我是否受到影响?

此漏洞影响 ingress-nginx。如果你的集群上没有安装 ingress-nginx,则不受影响。你可以通过运行 kubectl get po -A 并查找 ingress-nginx-controller 来检查。

允许非管理员用户创建 Ingress 对象的多租户环境受此问题的影响最大。

受影响的版本

  • ingress-nginx controller < v1.11.2
  • ingress-nginx controller < v1.10.4

如何缓解此漏洞?

可以通过升级到已修复的版本来缓解此问题。

已修复的版本

  • ingress-nginx controller v1.11.2 - 通过 kubernetes/ingress-nginx#11719 和 kubernetes/ingress-nginx#11721 修复
  • ingress-nginx controller v1.10.4 - 通过 kubernetes/ingress-nginx#11718 和 kubernetes/ingress-nginx#11722 修复

检测

检查你的 Kubernetes 审计日志,查找使用包含回车符 (\r) 的注解(例如 nginx.ingress.kubernetes.io/auth-tls-verify-client)创建的 Ingress 对象。

如果你发现此漏洞已被利用的证据,请联系 security@kubernetes.io

更多详情

#126744

致谢

此漏洞由 André Storfjord Kristiansen (@dev-bio) 报告。

问题由修复团队修复和协调:

  • André Storfjord Kristiansen @dev-bio
  • Jintao Zhang @tao12345666333
  • Marco Ebert @Gacko
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计