Bug 2507413 (CVE-2026-17527)

Summary: CVE-2026-17527 virt-cdi-operator: containerized-data-importer: cdi.kubevirt.io:view aggregated ClusterRole grants create on datavolumes/source, allowing unauthorized PVC clone
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security <prodsec-ir-bot>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: dkeler, suppawar, thason
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
In containerized-data-importer (CDI), the aggregated cdi.kubevirt.io:view ClusterRole, intended to provide read-only access to CDI resources, includes a rule granting create on the datavolumes/source subresource. CDI's DataVolume clone authorization accepts this permission as sufficient to authorize cloning the contents of any PVC the caller can name, without requiring write access to the source namespace. A user or service account bound to the view role, commonly granted cluster-wide via ClusterRoleBinding, who also has ordinary write access (edit/admin) to any single namespace, can use this to exfiltrate the contents of any PVC in the cluster into a namespace they control, bypassing namespace isolation and the read-only guarantee of the view role.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description OSIDB Bzimport 2026-07-27 08:52:58 UTC
CDI's aggregated read-only ClusterRole (cdi.kubevirt.io:view)  explicitly grants create on the datavolumes/source subresource. CDI's clone authorization logic treats this permission alone as sufficient to authorize cloning any named PVC's data into a new DataVolume, regardless of whether the caller has any other access to that PVC or its namespace. Any principal bound to view (commonly done via ClusterRoleBinding, and unavoidable in practice since CDI ships this role labeled for aggregation into Kubernetes' built-in view role) who also holds ordinary write access (edit/admin) in any namespace can clone any PVC in the cluster, bypassing the read-only intent of view.