【处置手册】Kubernetes Ingress-nginx远程代码执行漏洞(CVE-2025-1974)

【处置手册】Kubernetes Ingress-nginx远程代码执行漏洞(CVE-2025-1974)

原创 NS-CERT 绿盟科技CERT 2025-03-31 17:11

通告编号:NS-2025-0016-1

2025-03-31

TAG:

Ingress-nginx、远程代码执行、CVE-2025-1974

漏洞危害:

攻击者利用此漏洞,可实现远程代码执行。 

版本: 1.1

1

漏洞概述

近日,绿盟科技
CERT
监测到
Kubernetes
发布安全公告,修复了
Kubernetes Ingress-nginx
远程代码执行漏洞
(CVE-2025-1974)
;由于
Kubernetes Pod
中部署的
Ingress
控制器无需认证即可通过网络访问,当
Admission webhook
对外开放时,未经身份验证的攻击者可以通过向
Ingress-nginx
发送特制的
AdmissionReview
请求,远程注入任意的
nginx
配置,从而在
Ingress-nginx
上执行任意代码。
CVSS
评分
9.8
,目前漏洞细节与
PoC
已公开,请相关用户尽快采取措施进行防护。

Ingress-nginx是Kubernetes项目提供的开源Ingress控制器,基于nginx实现,用于管理Kubernetes集群中的网络流量,功能强大、易于使用且适应性强。

绿盟科技已成功复现此漏洞:

参考链接:

https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025-1974

SEE MORE →****

2影响范围

受影响版本

  • Ingress-nginx <= 1.11.4

  • 1.12.0-beta.0 <= Ingress-nginx < 1.12.1

注:在默认安装配置中,Ingress控制器能够访问集群范围内的所有Secrets。

不受影响版本

  • Ingress-nginx >= 1.11.5

  • Ingress-nginx >= 1.12.1

3漏洞检测

3.1 人工检测

用户可先用以下命令确认k8s是否使用了ingress-nginx控制器:

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

再输入下列命令查看ingress-nginx的版本

kubectl -n ingress-nginx get pod <ingress-nginx-pod-name> -o jsonpath="{.spec.containers[*].image}"

若当前版本在受影响范围内,则可能存在安全风险。

3.2 工具检测

绿盟科技自动化渗透测试工具(EZ)已支持k8s ingress的指纹识别和CVE-2025-1974漏洞检测(注:企业版请联系绿盟销售人员获取)。

可使用下列命令进行产品指纹识别:

./ez webscan –disable-pocs all -u  https:192.168.1.41:4443/

可使用下列命令对单个或批量主机进行漏洞检测:

./ez webscan –pocs ingress -u  https:192.168.1.41:4443/

./ez webscan –pocs ingress -uf url.txt

image.png

工具下载链接:https://github.com/m-sec-org/EZ/releases

新用户请注册M-SEC社区(https://msec.nsfocus.com)申请证书进行使用:

image.png

注:社区版本将于近期发布上述功能

3.3 产品检测

绿盟科技远程安全评估系统(RSAS)已具备对此次漏洞的扫描检测能力,请有部署以上设备的用户升级至最新版本。


升级包版本号

升级包下载链接

RSAS V6系统插件包

V6.0R02F01.3910

https://update.nsfocus.com/update/listRsasDetail/v/vulsys

关于RSAS的升级配置指导,请参考如下链接:

https://mp.weixin.qq.com/s/SgOaCZeKrNn-4uR8Yj_C3Q

4暴露面风险排查

绿盟科技CTEM解决方案可以主动+被动方式进行k8s相关资产和CVE-2025-1974漏洞风险的发现和排查:

1、可支持直接匹配k8s的资产名称和版本:

2、可通过下发配置核查任务,检查ingress-nginx配置文件中的Admission Controller是否对外暴露:

3、可通过调用PoC进行漏洞扫描:

5漏洞防护

5.1 官方升级

目前官方已发布新版本修复此漏洞,请受影响的用户尽快升级防护,下载链接:https://github.com/kubernetes/ingress-nginx/releases 

5.2 产品防护

针对上述漏洞,绿盟科技网络入侵防护系统(IPS)与综合威胁探针(UTS)已发布规则升级包,请相关用户升级规则包至最新版,以形成安全产品防护与检测能力。安全防护产品规则编号如下:

安全防护产品

升级包版本号

升级包下载链接

规则编号

IPS

5.6.10.39457

https://update.nsfocus.com/update/listNewipsDetail/v/rule5.6.10

[28764]

5.6.11.39457

https://update.nsfocus.com/update/listNewipsDetail/v/rule5.6.11

2.0.0.39457

https://update.nsfocus.com/update/listNewipsDetail/v/rule5.6.11_v2

UTS

2.0.0.39457

https://update.nsfocus.com/update/listBsaUtsDetail/v/rule2.0.1

28764

5.6.10.39457

https://update.nsfocus.com/update/listBsaUtsDetail/v/rule2.0.0

产品规则升级的操作步骤详见如下链接:

IPS:https://mp.weixin.qq.com/s/DxQ3aaap8aujqZf-3VbNJg

5.3 临时防护措施

若相关用户暂时无法进行升级操作,也可以通过下列措施进行临时缓解。

1、对Admission Controller进行访问控制。

2、在不影响业务的情况下,关闭ingress-nginx的Validating Admission Controller功能

(1)使用Helm安装的ingress-nginx:

可以重新安装并设置Helm属性为controller.admissionWebhooks.enabled=false。

(2)手动安装的ingress-nginx:

删除名为ValidatingWebhook 的配置ingress-nginx-admission;编辑Deployment或Daemonset,从控制器容器的参数列表中删除ingress-nginx-controller–validating-webhook。

END

声明

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。            

绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。            

绿盟科技CERT


微信公众号

绿盟科技CERT公众号.jpg

长按识别二维码,关注网络安全威胁信息