Skip to main content

Kubernetes CVE-2025-13281

MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
2025-12-14 jordan@liggitt.net
5.8
CVSS 3.1 · Vendor: liggitt
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as privileged cluster user
  2. Exploit
    Define in-tree Portworx StorageClass with crafted endpoint
  3. Execution
    kube-controller-manager issues SSRF to host-network service
  4. Impact
    Leak data from loopback/link-local endpoint

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the cluster to use the in-tree Portworx volume provisioner via a Portworx StorageClass - this is a specific, non-default, and now-deprecated storage configuration; clusters not using in-tree Portworx are not affected. The attacker must also be an authorized, privileged user (PR:H) able to define or influence the StorageClass/provisioning parameters so the controller-manager issues the attacker-directed request. Exploitation is further limited by high attack complexity (AC:H) and by the half-blind nature of the SSRF, which yields only inferred/leaked information (confidentiality only) rather than write access or service disruption. No end-user interaction is needed (UI:N).

Impact

This is a medium-severity issue (CVSS 5.8) whose real-world priority is low-to-moderate despite the ability to reach control-plane host-network services. The CVSS vector itself tempers the network attack vector (AV:N) with two strong limiting factors: high attack complexity (AC:H) and high privileges required (PR:H), meaning only an already-authorized, privileged user who can define or control an in-tree Portworx StorageClass can trigger it. The scope change (S:C) and C:H/I:N/A:N profile correctly reflect a read-only, half-blind SSRF that crosses a trust boundary into the control plane's host network but cannot write or disrupt. No EPSS score, KEV listing, or public POC was provided in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation; the absence of EPSS data means widespread-exploitation probability cannot be quantified here. Signals are internally consistent - nothing conflicts - and all point to a privileged, config-dependent information-disclosure bug rather than a broadly exploitable remote flaw. This is a hardening/defense-in-depth priority (especially for multi-tenant clusters where cluster-admin is not fully trusted), not an emergency patch.

Exploit ScenarioDerived

In a cluster that uses the in-tree Portworx storage provisioner, a privileged but non-fully-trusted user (e.g. a tenant with rights to define StorageClasses or provision volumes) supplies a crafted Portworx endpoint value. The kube-controller-manager then issues a server-side request from the control plane's host network to that attacker-chosen target, and the half-blind response allows the user to infer or leak data from otherwise unreachable loopback or link-local services (such as cloud metadata or internal control-plane endpoints). No public exploit code was provided in the input.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 14, 2026

Kubernetes' kube-controller-manager contains a half-blind server-side request forgery that allows highly privileged users to leak information from control-plane host-network endpoints when the deprecated in-tree Portworx provisioner is used. Exploitation requires a non-default Portworx StorageClass and an authorized attacker (PR:H) who can influence provisioning parameters, with high attack complexity (AC:H) and impact limited to confidentiality (CVSS 5.8). No public exploit code or active exploitation has been identified at time of analysis.

RemediationAI

Vendor advisory and tracking issue are available; consult the Kubernetes security announcement (https://groups.google.com/g/kubernetes-security-announce/c/EORqZg0k1l4/m/TtD-q0v7AgAJ) and the GitHub issue (https://github.com/kubernetes/kubernetes/issues/135525) for patched versions. No specific fix version was provided in the input data. Until a patch is applied, migrate from the deprecated in-tree Portworx provisioner to the Portworx CSI driver, or disable the in-tree Portworx provisioner if it is not in use. As a compensating control, restrict RBAC so that only trusted administrators can create or modify StorageClasses that use the Portworx provisioner, and audit existing StorageClass objects for unexpected parameters. Note that disabling the in-tree provisioner will break existing Portworx-backed persistent volume claims, so plan a migration. Additionally, consider host firewall rules to limit the control-plane host's access to loopback/link-local services, though this may have broad side effects on other control-plane functions.

Affected Packages

go k8s.io/kubernetes fix: 1.32.10, 1.33.6, 1.34.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in go

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability is a server-side request forgery (CWE-918) in the kube-controller-manager component of Kubernetes, specifically within the in-tree Portworx volume provisioner. When a Portworx StorageClass is used, the controller-manager can be induced to make requests to attacker-specified URLs. Because the SSRF is half-blind, the attacker cannot directly read responses but can infer information through timing or error side channels, potentially leaking data from unprotected loopback or link-local services on the control-plane host network. The in-tree Portworx provisioner is deprecated in favor of the Portworx CSI driver, and clusters not using it are unaffected. The attack requires the ability to create or modify a StorageClass that triggers the provisioner (PR:H) and is complicated by the need to craft parameters that reach a vulnerable code path (AC:H). The CVSS vector (AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:N/A:N) indicates network exploitable, high complexity, privileged access, scope change, and confidentiality-only impact.

Know when Kubernetes gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (liggitt) PRIMARY 5.8 MEDIUM
AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:N/A:N
vuln.today AI 5.8 MEDIUM

Requires a privileged user controlling the in-tree Portworx StorageClass (PR:H) and a specific non-default storage config (AC:H); half-blind SSRF reaches host-network services (S:C, C:H) with no integrity or availability impact.

3.1 AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:N/A:N
4.0 AV:N/AC:H/AT:N/PR:H/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N

Primary rating from Vendor (liggitt).

CVSS VectorVendor: liggitt

Attack Vector
Network
Attack Complexity
High
Privileges Required
High
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

DescriptionCVE.org

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).

Threat Intelligence Overview

EPSS Score
0.4%
Top 69% exploitable
Prevalence
Medium
Kubernetes is ubiquitous, but the vulnerable in-tree Portworx StorageClass is an uncommon, deprecated configuration
Data Quality
3 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

29
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +29
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

CVE-2025-1974 CRITICAL POC
9.8 Mar 25

A critical vulnerability in Kubernetes ingress-nginx controller allows unauthenticated attackers with pod network access

CVE-2026-45321 CRITICAL POC
9.6 May 12

Credential-harvesting malware compromised 84 versions of 42 TanStack npm packages on 2026-05-11 via chained GitHub Actio

CVE-2025-1098 HIGH POC
8.8 Mar 25

Kubernetes ingress-nginx contains a configuration injection vulnerability via the mirror-target and mirror-host Ingress

CVE-2025-24514 HIGH POC
8.8 Mar 25

A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-url` Ingres

CVE-2025-1097 HIGH POC
8.8 Mar 25

A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-tls-match-c

CVE-2020-8554 MEDIUM POC
6.3 Jan 21

Kubernetes API server in all versions allow an attacker who is able to create a ClusterIP service and set the spec.exter

CVE-2023-3676 HIGH POC
8.8 Oct 31

A security issue was discovered in Kubernetes where a user that can create pods on Windows nodes may be able to escalate

CVE-2025-55190 CRITICAL POC
9.9 Sep 04

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Rated critical severity (CVSS 9.9), this vulne

CVE-2026-34976 CRITICAL POC
10.0 Apr 02

Unauthenticated remote attackers can trigger complete database overwrites, server-side file reads, and SSRF attacks agai

CVE-2018-18843 CRITICAL POC
10.0 Dec 04

The Kubernetes integration in GitLab Enterprise Edition 11.x before 11.2.8, 11.3.x before 11.3.9, and 11.4.x before 11.4

CVE-2026-54680 CRITICAL POC
9.9 Jul 29

Fluentd configuration injection in the kube-logging Logging operator before 6.6.0 allows a namespace-scoped user who can

CVE-2026-22039 CRITICAL POC
9.9 Jan 27

Kyverno Kubernetes policy engine prior to 1.x has a privilege escalation vulnerability (CVSS 9.9) allowing policy bypass

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy