首页
/ RKE2 Ingress-Nginx控制器CVE-2025-1974问题分析与应对策略

RKE2 Ingress-Nginx控制器CVE-2025-1974问题分析与应对策略

2025-07-09 18:24:09作者:滕妙奇

问题背景

近期Kubernetes社区披露了一个编号为CVE-2025-1974的安全问题,该问题影响ingress-nginx控制器的Validating Admission Controller功能。作为RKE2集群的核心组件之一,rke2-ingress-nginx同样受到此问题影响。

问题影响分析

该问题存在于ingress-nginx的准入控制webhook中,允许攻击者通过Pod网络利用配置注入问题。具体而言:

  1. 问题影响版本:所有使用ingress-nginx控制器且启用了Validating Admission Controller功能的RKE2集群
  2. 攻击面:需要能够访问Pod网络或服务网络的攻击者才能利用此问题
  3. 风险等级:中高风险,特别是对于多租户集群或运行不可信工作负载的环境

问题验证方法

管理员可以通过以下命令检查集群是否运行了受影响的ingress-nginx控制器:

kubectl get pods --all-namespaces --selector app.kubernetes.io/name=rke2-ingress-nginx

临时缓解措施

在官方修复版本发布前,建议采取以下临时解决方案:

方案一:禁用准入控制webhook

创建或修改HelmChartConfig资源来禁用webhook功能:

apiVersion: helm.cattle.io/v1
kind: HelmChartConfig
metadata:
  name: rke2-ingress-nginx
  namespace: kube-system
spec:
  valuesContent: |-
    controller:
      admissionWebhooks:
        enabled: false
      extraArgs:
        enable-annotation-validation: true

方案二:应用网络策略

通过NetworkPolicy限制对webhook端口的访问,仅允许必要的通信。

注意事项

  1. 禁用webhook后,ingress资源的创建和修改仍可进行,但将跳过验证步骤
  2. 对于Rancher管理的集群,可以通过chart_values配置进行相同修改
  3. 建议在所有控制平面节点上应用配置变更以确保一致性

官方修复进展

Rancher团队已确认:

  1. 修复版本正在测试中,将包含在即将发布的RKE2版本中
  2. 修复版本将升级到ingress-nginx的安全版本(v1.11.5或v1.12.1)
  3. 用户应关注官方发布公告,及时升级到修复版本

最佳实践建议

  1. 定期检查集群组件的安全公告
  2. 建立问题响应流程,确保及时应用安全补丁
  3. 在生产环境中考虑使用网络策略限制Pod间通信
  4. 保持RKE2版本更新,遵循官方升级建议

该问题的修复体现了RKE2项目对安全问题的快速响应能力,管理员应按照建议及时采取措施保护集群安全。

登录后查看全文
热门项目推荐
相关项目推荐