CVE-2025-13281CVE-2025-13281是Kubernetes kube-controller-manager中存在的一个半盲服务器端请求伪造(SSRF)漏洞。当kube-controller-manager处理使用in-tree Portworx StorageClass的PersistentVolumeClaim请求时,攻击者可以利用此漏洞向控制平面主机网络内的任意端点发送请求,从而泄露敏感信息。该漏洞的严重程度为中等,CVSS评分为5.8,主要影响机密性。攻击者需要具备较高权限(经过认证的集群用户)才能利用此漏洞,但无需用户交互。由于是半盲SSRF,攻击者可能无法直接获取响应内容,但可以通过时间差异或错误信息推断目标服务状态。此漏洞特别危险,因为它允许访问通常受保护的服务,如链路本地地址(169.254.0.0/16)、回环地址(127.0.0.0/8)以及Kubernetes控制平面内部的敏感服务。攻击者可以利用泄露的信息进行进一步的攻击,如横向移动或获取集群敏感数据。此漏洞由[email protected]发现并报告,于2025年12月14日公开披露。
该漏洞源于kube-controller-manager在处理Portworx StorageClass时的不安全请求处理机制。具体来说,当用户创建使用Portworx StorageClass的PersistentVolumeClaim时,kube-controller-manager会尝试与Portworx存储服务通信以验证或配置存储卷。在这个过程中,kube-controller-manager会发起HTTP请求到用户指定的端点,攻击者可以通过构造恶意的StorageClass配置或PersistentVolumeClaim参数,使kube-controller-manager向攻击者控制的内网地址发送请求。
攻击利用的关键点包括:
1. kube-controller-manager具有访问控制平面主机网络的权限
2. in-tree Portworx StorageClass实现中存在输入验证不足的问题
3. 攻击者可以通过StorageClass的parameters参数指定任意的服务端点
4. 由于是半盲SSRF,攻击者可能通过响应时间或错误信息推断目标服务状态
利用此漏洞的攻击者可以探测和访问:
- Kubernetes API Server的回环端口(127.0.0.1)
- kubelet API端点
- etcd服务端口
- 云提供商的元数据服务(如169.254.169.254)
- 其他运行在控制平面节点上的敏感服务
修复方案需要在kube-controller-manager中实现对Portworx StorageClass请求目标的严格验证,限制只能访问预定义的合法端点,并添加网络隔离措施防止对内部服务的访问。