Introduction
A single namespace edit role in an OpenShift cluster running KubeVirt is now enough to achieve full node and cluster compromise. CVE-2026-7374 is a symlink following flaw in KubeVirt's privileged virt-handler DaemonSet. It lets an attacker redirect a console socket connection to the host's CRI-O runtime socket, so a routine VM management operation becomes a path to cluster takeover.
KubeVirt is a CNCF project that runs traditional virtual machine workloads alongside containers on Kubernetes clusters. It is the upstream foundation for Red Hat OpenShift Virtualization, which makes it a core component in enterprise Kubernetes deployments where organizations run both VMs and containers on the same infrastructure. Any vulnerability in KubeVirt's privileged components directly affects Red Hat's enterprise customers and the wider OpenShift ecosystem.
Technical Information
Root Cause: CWE-59 Symlink Following in Socket Path Resolution
CVE-2026-7374 falls under CWE-59: Improper Link Resolution Before File Access. virt-handler does not check whether a VM console socket path is a regular file or a symbolic link before it connects. Because virt-handler runs as a privileged DaemonSet with hostPID on every worker node, every file operation it performs carries host-level permissions. When it follows a symlink an attacker has planted, it opens a privileged connection to an arbitrary Unix socket on the host without knowing it.
Symlink following is a familiar weakness class in the container ecosystem. It has historically been the most common category of container escape flaw, and the boundary between Kubernetes and the container runtime is a well-known attack surface for it.
The virt-handler Component
virt-handler is deployed as a DaemonSet, so one instance runs on every worker node in a KubeVirt-enabled cluster. Its jobs include managing virtual machine pods and providing console access to VMs. To do this, it runs with hostPID and elevated privileges, which gives it broad access to host-level resources. That makes it a high-value target, because any operation an attacker can trick virt-handler into performing runs with those elevated permissions.
Attack Flow
The exploit chain has five stages.
Stage 1: Initial Access. An authenticated OpenShift user with the standard edit role in a single namespace uses kubectl exec (or equivalent) to get a shell inside a virt-launcher pod. edit is a common, widely granted Kubernetes role that is not usually treated as a high-risk privilege.
Stage 2: Socket Replacement. Inside the virt-launcher pod, the attacker finds the VM console socket file and replaces it with a symbolic link. The link points to the host's CRI-O container runtime socket, typically at /run/crio/crio.sock. This is the step that turns the CWE-59 weakness into an exploit.
Stage 3: Privileged Connection Hijack. The next time virt-handler connects to the VM console socket as part of its normal operation, it follows the symlink without checking it. Because virt-handler runs with host-level privileges, the resulting connection to the CRI-O socket carries those elevated permissions.
Stage 4: Host Socket Access. Through the hijacked CRI-O socket connection, the attacker can issue container runtime commands as a privileged process. According to the Bugzilla report (2463728), the attacker can reach any Unix socket on the host, not only CRI-O, which widens the attack surface considerably.
Stage 5: Node and Cluster Compromise. With access to the CRI-O socket, the attacker can create privileged containers, access node resources, extract credentials, and take full control of the worker node. In Kubernetes environments, compromising one node often leads to compromise of the whole cluster, especially if the node hosts control-plane components or if cluster-wide credentials are readable from the node's filesystem.
CVSS Scoring Discrepancy
The scoring sources disagree on how severe this vulnerability is:
| Scoring Source | CVSS Score | Severity |
|---|---|---|
| Original Submission | 9.9 | Critical |
| Red Hat | 8.4 | High |
| NVD | Not yet assigned | Pending |
The Red Hat CVSS v3 score of 8.4 reflects a local attack vector, low attack complexity, low privileges required, and high impact on confidentiality, integrity, and availability. The gap between 8.4 and 9.9 likely comes from different judgments about scope change, meaning whether the impact extends beyond the vulnerable component (a single node) to the wider system (the entire cluster). Given the documented path from namespace edit access to full cluster control, organizations should treat this as critical severity until NVD completes its independent assessment.
Relationship to GHSA-2r4r-5x78-mvqf
This is the second symlink following flaw in virt-handler within six months. The earlier vulnerability, GHSA-2r4r-5x78-mvqf, was published on November 6, 2025 and had the same root cause: virt-handler does not verify whether the launcher-sock is a symlink or a regular file. In that case the impact was limited to changing ownership of arbitrary host files to an unprivileged user (UID 107), and it was rated Moderate with CVSS 5.0. Affected versions were KubeVirt 1.5.2 and earlier, plus 1.6.0, with fixes shipped in 1.5.3, 1.6.1, and 1.7.0.
CVE-2026-7374 exploits the same weakness, but the result is full cluster compromise rather than a change of file ownership. That suggests one of two things. Either the earlier fix was incomplete, closing only the file ownership attack path without hardening the wider socket connection logic, or a new variant has appeared that bypasses the earlier mitigation.
Affected Systems and Versions
Based on the available source materials, the vulnerability affects KubeVirt's virt-handler component running on OpenShift clusters. The earlier related vulnerability (GHSA-2r4r-5x78-mvqf) affected KubeVirt versions 1.5.2 and earlier, as well as version 1.6.0, with fixes in versions 1.5.3, 1.6.1, and 1.7.0. Because CVE-2026-7374 appears to be a new or expanded attack path against the same component, it is unclear whether those patched versions are fully protected against this specific CVE.
No Red Hat Security Advisory (RHSA) has been published for CVE-2026-7374 as of May 26, 2026, so Red Hat has not formally declared the exact affected version ranges for Red Hat OpenShift Virtualization. The existing RHSA-2026:7245 (issued April 15, 2026) addresses CVE-2026-33186 for OpenShift 4.21.10 but does not mention CVE-2026-7374.
Organizations running KubeVirt in any deployment model, upstream or through OpenShift Virtualization, should assume they may be affected until a specific advisory is published.
Vendor Security History
KubeVirt has approximately 15 CVEs on record according to CVEdetails, with impacts including code execution (1 vulnerability), privilege escalation (1 vulnerability), denial of service (2 vulnerabilities), and directory traversal (1 vulnerability). A separate aggregator, AIGCVE, lists 9 CVEs for the project.
The project completed a third-party security audit in 2025, organized through the CNCF and OSTIF as part of KubeVirt's application to graduate within the CNCF. The audit shows the project takes security seriously, but the repeated symlink following flaws in virt-handler indicate the audit may not have fully covered the filesystem interaction risks in this component.
Another recent vulnerability, CVE-2026-6383, was also found in the kubevirt-virt-handler image. It involves faulty RBAC evaluation logic in which the authorization mechanism truncates subresource names. Several security issues landing in the same privileged DaemonSet point to a pattern that both the upstream project and downstream consumers should examine closely.
The Red Hat OpenShift Container Platform had 18 security vulnerabilities recorded in 2025 according to stack.watch, with none recorded in 2026 before this CVE, though that count likely has not yet been updated to include CVE-2026-7374.
References
- Red Hat CVE Page for CVE-2026-7374
- NVD Entry for CVE-2026-7374
- Red Hat Bugzilla 2463728: KubeVirt virt-handler Privilege Escalation via Symlink Following
- GitHub Advisory GHSA-2r4r-5x78-mvqf: Earlier Symlink Following Flaw in virt-handler
- Red Hat CVE Page for CVE-2026-6383 (Related virt-handler RBAC Flaw)
- KubeVirt Project Homepage
- KubeVirt Security Audit Announcement (2025)
- CWE-59: Improper Link Resolution Before File Access
- CVEdetails: KubeVirt Products and Vulnerabilities
- OpenCVE: KubeVirt CVEs and Security Vulnerabilities
- Chainguard: kubevirt-virt-handler CVE Advisories
- RHSA-2026:7245 Security Advisory



