Skip to main content

OpenShift Virtualization EUVDEUVD-2026-39796

| CVE-2026-13434 MEDIUM
Improper Input Validation (CWE-20)
2026-06-26 redhat GHSA-9fjc-whw6-cqfc
4.9
CVSS 3.1 · Vendor: redhat
Share

Severity by source

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

API is network-reachable (AV:N); non-default feature gate required raises complexity (AC:H); kubevirt.io:edit tenant role needed (PR:L); cross-namespace network impact changes scope (S:C); no availability impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
SUSE
MEDIUM
qualitative
Red Hat
4.9 MEDIUM
qualitative

Primary rating from Vendor (redhat).

CVSS VectorVendor: redhat

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

Lifecycle Timeline

1
Analysis Generated
Jun 26, 2026 - 17:29 vuln.today

DescriptionCVE.org

A flaw was found in KubeVirt's network annotation generator. When a tenant creates a VirtualMachineInstance with a Multus network configuration, the supplied networkName value is written verbatim into the launcher pod's v1.multus-cni.io/default-network annotation without format validation or sanitization. The only admission check rejects empty strings; no DNS-1123 format validation, JSON detection, or special character rejection is performed. When the ExternalNetResourceInjection Beta feature gate is enabled (off by default, cluster-admin only), the NAD lookup that would otherwise catch malformed names is skipped by design. A tenant with kubevirt.io:edit permissions can inject a JSON-formatted NetworkSelectionElement array specifying an arbitrary namespace, NAD name, static IP address, and MAC address. Multus on the node parses this JSON and attaches the launcher pod to the specified network attachment in any namespace, enabling cross-namespace network access and IP/MAC impersonation on network segments normally segregated from tenant workloads. The ExternalNetResourceInjection feature gate was introduced in KubeVirt v1.8.0 (first shipped in OpenShift Virtualization 4.21).

AnalysisAI

Network annotation injection in KubeVirt's VirtualMachineInstance API allows authenticated tenants to attach launcher pods to arbitrary network namespaces by writing unsanitized JSON into the Multus CNI default-network annotation. Exploitation is gated on the ExternalNetResourceInjection Beta feature gate being explicitly enabled by a cluster-admin (off by default, first available in OpenShift Virtualization 4.21), which intentionally bypasses the NAD namespace lookup that would otherwise reject malformed annotation values. A successful attack permits cross-namespace network attachment and IP/MAC address impersonation on segments normally segregated from tenant workloads; no public exploit has been identified at time of analysis.

Technical ContextAI

KubeVirt extends Kubernetes by running virtual machines inside launcher pods, with multi-network support delegated to Multus CNI. Multus reads network attachment selection from the pod annotation v1.multus-cni.io/default-network, which accepts either a bare NAD name or a JSON-formatted NetworkSelectionElement array specifying namespace, NAD name, static IP, and MAC. The network annotation generator copies the tenant-supplied networkName field verbatim into this annotation without DNS-1123 validation, JSON detection, or special-character rejection (CWE-20: Improper Input Validation). Ordinarily, KubeVirt performs a NetworkAttachmentDefinition lookup that would reject cross-namespace or malformed names before pod creation. When the ExternalNetResourceInjection Beta feature gate is enabled, that lookup is skipped by design, creating a path where Multus on the node directly parses the injected annotation and establishes the specified network attachment. The CPE cpe:2.3:a:red_hat:red_hat_openshift_virtualization_4:*:*:*:*:*:*:*:* identifies the affected product; the upstream KubeVirt v1.8.0 component introduced the vulnerable code path.

RemediationAI

Monitor the Red Hat advisory at https://access.redhat.com/security/cve/CVE-2026-13434 for a patched release; no specific fixed version was confirmed in available data at time of analysis, and the Bugzilla report at https://bugzilla.redhat.com/show_bug.cgi?id=2493576 should be tracked for patch availability. The most effective immediate compensating control is to ensure the ExternalNetResourceInjection Beta feature gate remains disabled (its default state) - clusters that have not explicitly enabled it are not exploitable via this path and require no further action. If the feature gate must remain enabled for operational workflows, restrict kubevirt.io:edit permissions to fully trusted, vetted tenants and audit all existing VirtualMachineInstance network annotations for unexpected JSON-formatted networkName values. Supplementary network-layer controls such as Kubernetes NetworkPolicies scoped to tenant namespaces and VLAN-level isolation between tenant and administrative network segments can limit the blast radius of cross-namespace attachment. Note that disabling the feature gate may break workloads that depend on external network resource injection behavior - validate in a staging environment before applying to production.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise High Performance Computing 15 SP7 Not-Affected
SUSE Linux Enterprise Micro 5.3 Not-Affected
SUSE Linux Enterprise Micro 5.4 Not-Affected
SUSE Linux Enterprise Micro 5.5 Not-Affected
SUSE Linux Enterprise Module for Containers 15 SP7 Not-Affected

Share

EUVD-2026-39796 vulnerability details – vuln.today

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