Skip to content
Threat Feed
high advisory

CVE-2026-17527: Kubernetes CDI Privilege Escalation and Data Exfiltration

A vulnerability in the Containerized Data Importer (CDI) for Kubernetes, identified as CVE-2026-17527, allows privilege escalation and data exfiltration through an improperly configured `cdi.kubevirt.io:view` ClusterRole, enabling attackers with partial access to clone and access data from any PersistentVolumeClaim in the cluster.

CVE-2026-17527 describes a high-severity vulnerability within the Containerized Data Importer (CDI) component of Kubernetes, impacting users with the cdi.kubevirt.io:view ClusterRole. This role, designed for read-only access to CDI resources, erroneously includes a create permission on the datavolumes/source subresource. An attacker who has been granted this view role, potentially cluster-wide via a ClusterRoleBinding, and also possesses edit or admin privileges within any single namespace, can exploit this flaw. The vulnerability allows them to clone the contents of any PersistentVolumeClaim (PVC) across the cluster into a namespace they control. This bypasses Kubernetes' inherent namespace isolation mechanisms and subverts the intended read-only nature of the view role, leading to unauthorized data exfiltration.

Attack Chain

  1. Initial Access / Privilege Acquisition: An attacker obtains Kubernetes credentials that grant them the cdi.kubevirt.io:view ClusterRole (potentially deployed cluster-wide) and also edit or admin access to any single namespace.
  2. Target Identification: The attacker identifies a PersistentVolumeClaim (PVC) within the Kubernetes cluster from which they intend to exfiltrate data. This PVC can reside in any namespace, regardless of the attacker's direct access to it.
  3. Authorization Bypass: The attacker leverages the improper create permission on the datavolumes/source subresource, which is inadvertently granted by the cdi.kubevirt.io:view ClusterRole, despite its intended read-only purpose.
  4. DataVolume Creation: The attacker crafts and submits a request to the Kubernetes API to create a new DataVolume in a namespace they control, specifying the identified target PVC as the source for a clone operation.
  5. Data Cloning: The Containerized Data Importer (CDI) system processes this DataVolume creation request. Due to the authorization bypass, CDI validates the attacker's create permission on datavolumes/source and proceeds to initiate a clone of the specified target PVC into the attacker-controlled namespace.
  6. Data Access and Exfiltration: Once the cloning process is complete, a new PersistentVolume (PV) and PVC are available within the attacker's controlled namespace. The attacker then accesses these cloned resources, gaining unauthorized read access to the sensitive data originally stored in the target PVC.
  7. Impact Realization: The attacker successfully bypasses Kubernetes namespace isolation and the intended read-only guarantees of the cdi.kubevirt.io:view role, achieving silent data exfiltration from arbitrary PVCs across the cluster.

Impact

Successful exploitation of CVE-2026-17527 leads to unauthorized data exfiltration from any PersistentVolumeClaim (PVC) within the Kubernetes cluster. This vulnerability allows an attacker to bypass critical namespace isolation mechanisms, which are fundamental to multi-tenant Kubernetes environments. The primary impact is the loss of data confidentiality, as sensitive information stored in PVCs can be accessed without authorization. Organizations using CDI in Kubernetes environments are at risk of significant data breaches if this flaw is exploited, as an attacker with limited access can escalate privileges to access a broader range of sensitive data than their assigned roles intend. The CVSS v3.1 Base Score for this vulnerability is 7.7, indicating a high severity.

Recommendation

  • Review and audit all Kubernetes ClusterRoleBinding configurations to identify any service accounts or users assigned the cdi.kubevirt.io:view ClusterRole.
  • Restrict ClusterRoleBinding of the cdi.kubevirt.io:view role to the minimum necessary entities, ideally removing any cluster-wide bindings.
  • Patch Containerized Data Importer (CDI) to the latest secure version that addresses CVE-2026-17527 immediately upon availability.
  • Implement Kubernetes audit logging to monitor for suspicious DataVolume creation or clone operations, especially those originating from users or service accounts with the cdi.kubevirt.io:view role.