Every CVE Search/ Get API key

CVE-2026-13622

Kubevirt: virt-handler-rhel9: kubevirt: virt-handler migration proxy follows symlinks allowing container escape to host

8.8 HighFix available

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During live migration, virt-handler dials Unix sockets inside the target virt-launcher pod via /proc/<pid>/root/ paths using net.Dial() without symlink protection. These socket paths reside in qemu-owned directories writable by the virt-launcher user. An attacker with namespace edit and pods/exec permissions can replace a migration proxy socket with a symlink to the host CRI-O socket. Because virt-handler runs as root in the host mount namespace, absolute symlink targets resolve against the host filesystem, and the bidirectional io.Copy proxy relays attacker-controlled bytes to the container runtime, enabling full node compromise.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

0.20%Up 0.1 points since Aug 13, 2026
90%50%10%1%

What each source reports

CVE List Score used 8.8

Kubevirt: virt-handler-rhel9: kubevirt: virt-handler migration proxy follows symlinks allowing container escape to host

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During live migration, virt-handler dials Unix sockets inside the target virt-launcher pod via /proc/<pid>/root/ paths using net.Dial() without symlink protection. These socket paths reside in qemu-owned directories writable by the virt-launcher user. An attacker with namespace edit and pods/exec permissions can replace a migration proxy socket with a symlink to the host CRI-O socket. Because virt-handler runs as root in the host mount namespace, absolute symlink targets resolve against the host filesystem, and the bidirectional io.Copy proxy relays attacker-controlled bytes to the container runtime, enabling full node compromise.

Record
CVE-2026-13622
CVSS 3.1
8.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Weakness
CWE-22
Updated
2026-11-02
EUVDEUVD-2026-57615 8.8

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During live migration, virt-handler dials Unix sockets inside the target virt-launcher pod via /proc/<pid>/root/ paths using net.Dial() without symlink protection. These socket paths reside in qemu-owned directories writable by the virt-launcher user. An attacker with namespace edit and pods/exec permissions can replace a migration proxy socket with a symlink to the host CRI-O socket. Because virt-handler runs as root in the host mount namespace, absolute symlink targets resolve against the host filesystem, and the bidirectional io.Copy proxy relays attacker-controlled bytes to the container runtime, enabling full node compromise.

Record
EUVD-2026-57615
CVSS 3.1
8.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Updated
2026-11-02
GitHub AdvisoriesGHSA-4336-pf6g-hp94 8.8

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During...

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During live migration, virt-handler dials Unix sockets inside the target virt-launcher pod via /proc/<pid>/root/ paths using net.Dial() without symlink protection. These socket paths reside in qemu-owned directories writable by the virt-launcher user. An attacker with namespace edit and pods/exec permissions can replace a migration proxy socket with a symlink to the host CRI-O socket. Because virt-handler runs as root in the host mount namespace, absolute symlink targets resolve against the host filesystem, and the bidirectional io.Copy proxy relays attacker-controlled bytes to the container runtime, enabling full node compromise.

Record
GHSA-4336-pf6g-hp94
CVSS 3.1
8.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Weakness
CWE-22
Updated
2026-11-02
NVD 8.8

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During live migration, virt-handler dials Unix sockets inside the target virt-launcher pod via /proc/<pid>/root/ paths using net.Dial() without symlink protection. These socket paths reside in qemu-owned directories writable by the virt-launcher user. An attacker with namespace edit and pods/exec permissions can replace a migration proxy socket with a symlink to the host CRI-O socket. Because virt-handler runs as root in the host mount namespace, absolute symlink targets resolve against the host filesystem, and the bidirectional io.Copy proxy relays attacker-controlled bytes to the container runtime, enabling full node compromise.

Record
CVE-2026-13622
CVSS 3.1
8.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Weakness
CWE-22
Updated
2026-11-02
OSVAZL-111641 No score

CVE-2026-13622 affecting package kubevirt-openvmm 1.9.0-1

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During live migration, virt-handler dials Unix sockets inside the target virt-launcher pod via /proc/<pid>/root/ paths using net.Dial() without symlink protection. These socket paths reside in qemu-owned directories writable by the virt-launcher user. An attacker with namespace edit and pods/exec permissions can replace a migration proxy socket with a symlink to the host CRI-O socket. Because virt-handler runs as root in the host mount namespace, absolute symlink targets resolve against the host filesystem, and the bidirectional io.Copy proxy relays attacker-controlled bytes to the container runtime, enabling full node compromise.

Record
AZL-111641
Updated
2026-11-05
OSVAZL-95943 No score

CVE-2026-13622 affecting package kubevirt for versions less than 1.8.4-4

A symlink following vulnerability was found in KubeVirt's virt-handler migration proxy. During live migration, virt-handler dials Unix sockets inside the target virt-launcher pod via /proc/<pid>/root/ paths using net.Dial() without symlink protection. These socket paths reside in qemu-owned directories writable by the virt-launcher user. An attacker with namespace edit and pods/exec permissions can replace a migration proxy socket with a symlink to the host CRI-O socket. Because virt-handler runs as root in the host mount namespace, absolute symlink targets resolve against the host filesystem, and the bidirectional io.Copy proxy relays attacker-controlled bytes to the container runtime, enabling full node compromise.

Record
AZL-95943
Updated
2026-11-05
Show 6 moreShow less
OSVopenSUSE-SU-2026:11752-1 No score

kubevirt1.9-container-disk-1.9.0-3.1 on GA media

These are all security issues fixed in the kubevirt1.9-container-disk-1.9.0-3.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:11752-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:12227-1 No score

kubevirt1.8-container-disk-1.8.4-6.1 on GA media

These are all security issues fixed in the kubevirt1.8-container-disk-1.8.4-6.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:12227-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:21590-1 No score

Security update for kubevirt1.8

This update for kubevirt1.8 fixes the following issues:

Update to version 1.8.4.

Security issues fixed:

  • CVE-2026-13201: virt-handler-rhel9: kubevirt: safepath OpenAtNoFollow symlink following via /proc/self/fd allows host file metadata modification (bsc#1269093).
  • CVE-2026-13622: virt-handler migration proxy follows symlinks and allows container escape to host (bsc#1272840).
  • CVE-2026-25680, CVE-2026-25681, CVE-2026-27136, CVE-2026-42502, CVE-2026-42506: golang.org/x/net/html: multiple issues when parsing HTML files (bsc#1267120).
  • CVE-2026-33814: golang.org/x/net/http2: processing of HTTP/2 SETTINGS frames with a crafted SETTINGS_MAX_FRAME_SIZE can lead to an infinite loop and a denial of service (bsc#1265736).
  • CVE-2026-35469: github.com/moby/spdystream: improper validation of attacker-controlled input in the SPDY/3 frame parser allows for a denial of service via crafted SPDY frames (bsc#1262265).
  • CVE-2026-39821: golang.org/x/net/idna: failure to reject ASCII-only Punycode-encoded labels allows for validation bypass and privilege escalation (bsc#1266575).
  • CVE-2026-39827, CVE-2026-39828, CVE-2026-39829, CVE-2026-39830, CVE-2026-39831, CVE-2026-39832, CVE-2026-39833, CVE-2026-39834, CVE-2026-39835, CVE-2026-42508, CVE-2026-46595, CVE-2026-46597, CVE-2026-46598: golang.org/x/crypto/ssh: multiple issues in x/crypto/ssh (bsc#1266151).
  • CVE-2026-46600: parsing of invalid SVCB or HTTPS RR when the size of a parameter value overflows the message buffer can lead to panic (bsc#1273606).
  • CVE-2026-56852: improper handling of truncated/invalid UTF-8 input can lead to an infinite loop (bsc#1272011).

Other updates and bugfixes:

  • Fix the release manifests' image references (bsc#1272604).
  • Add a libguestfs-tools subpackage.
  • Build with Go >= 1.25 (required by golang.org/x/net 0.55).
  • Version 1.8.4:
    • node-labeller: use new libvirt flags for full feature expansion.
    • Fix gRPC connection leak in GetLauncherClient; clean up ghost launcher record on connection setup failure.
    • api: validate VMI VSOCK CID and checksum status fields as uint32.
    • virt-operator: refine canary flow to fully support out-of-band changes.
    • New virt-api/virt-handler/virt-operator ready and down metrics, alerts and recording rules.
  • Refresh disks-images-provider.yaml to the v1.8.4 image tag.
Record
openSUSE-SU-2026:21590-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:22180-1 No score

Security update for kubevirt1.9

This update for kubevirt1.9 fixes the following issues:

  • CVE-2026-13622: virt-handler migration proxy follows symlinks allowing container escape to host (bsc#1272840).
  • CVE-2026-78659: golang.org/x/net/http2: HTTP/2 server memory exhaustion due to Trailer headers (bsc#1286984).
  • CVE-2026-78660: golang.org/x/net/http2: HTTP/2 transport accepts malformed framing-related headers (bsc#1287039).
  • CVE-2026-78663: golang.org/x/net/http2: double flow control refund on HTTP/2 server streams (bsc#1287143).
  • CVE-2026-78669: golang.org/x/net/http2: excessive CPU consumption from repeated initial window changes (bsc#1285255).
  • CVE-2026-97032: golang.org/x/net/http2: HTTP/2 server crash due to HPACK encoder race (bsc#1287446).

Update to version 1.9.1:

Record
openSUSE-SU-2026:22180-1
Updated
2026-11-02
OSVSUSE-SU-2026:3604-1 No score

Security update for kubevirt

This update for kubevirt fixes the following issue:

  • CVE-2026-13622: virt-handler migration proxy follows symlinks, allowing container escape to host (bsc#1272840).
Record
SUSE-SU-2026:3604-1
Updated
2026-11-02
OSVSUSE-SU-2026:3630-1 No score

Security update for kubevirt-1.6, virt-api-container-1.6, virt-controller-container-1.6, virt-exportproxy-container-1.6, virt-exportserver-container-1.6, virt-handler-container-1.6, virt-launcher-container-1.6, virt-libguestfs-tools-container-1.6, virt-operator-container-1.6, virt-pr-helper-container-1.6, virt-synchronization-controller-container-1.6

This update for kubevirt-1.6, virt-api-container-1.6, virt-controller-container-1.6, virt-exportproxy-container-1.6, virt-exportserver-container-1.6, virt-handler-container-1.6, virt-launcher-container-1.6, virt-libguestfs-tools-container-1.6, virt-operator-container-1.6, virt-pr-helper-container-1.6, virt-synchronization-controller-container-1.6 fixes the following issues:

  • CVE-2025-47911: golang.org/x/net/html: algorithms that have quadratic complexity when parsing HTML documents allow for denial of service (bsc#1251420).
  • CVE-2025-47914: golang.org/x/crypto/ssh/agent: no validation of message size when processing new identity requests can cause a panic due to an out-of-bounds read (bsc#1254014).
  • CVE-2025-58181: golang.org/x/crypto/ssh: no validation of number of mechanisms in GSSAPI authentication requests can cause unbounded memory consumption (bsc#1253935).
  • CVE-2025-58190: golang.org/x/net/html: excessive memory consumption by html.ParseFragment when processing specially crafted input can lead to a denial of service (bsc#1251615).
  • CVE-2026-13201: virt-handler-rhel9: kubevirt: safepath OpenAtNoFollow symlink following via /proc/self/fd allows host file metadata modification (bsc#1269093).
  • CVE-2026-13622: virt-handler migration proxy follows symlinks and allows container escape to host (bsc#1272840).
  • CVE-2026-25680,CVE-2026-25681,CVE-2026-27136,CVE-2026-42502,CVE-2026-42506: golang.org/x/net/html: multiple issues when parsing HTML files (bsc#1267120).
  • CVE-2026-33814: golang.org/x/net/http2: processing of HTTP/2 SETTINGS frames with a crafted SETTINGS_MAX_FRAME_SIZE can lead to an infinite loop and a denial of service (bsc#1265736).
  • CVE-2026-35469: github.com/moby/spdystream: improper validation of attacker-controlled input in the SPDY/3 frame parser allows for a denial of service via crafted SPDY frames (bsc#1262265).
  • CVE-2026-39821: golang.org/x/net/idna: failure to reject ASCII-only Punycode-encoded labels allows for validation bypass and privilege escalation (bsc#1266575).
  • CVE-2026-46600: parsing of invalid SVCB or HTTPS RR when the size of a parameter value overflows the message buffer can lead to panic (bsc#1273606).
  • CVE-2026-56852: improper handling of truncated/invalid UTF-8 input can lead to an infinite loop (bsc#1272000).

Other updates and bugfixes:

  • Fixed printf-style calls with non-constant format strings (cmd/virt-chroot, tests/) that fail go1.25's vet (toolchain required by the x/net 0.55.0 re-vendor); rewritten with no behavior change.
  • Build with Go >= 1.25 (required by golang.org/x/net 0.55).
Record
SUSE-SU-2026:3630-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
kubevirt-openvmm
Azure Linux:3
through 1.9.0-1 None known
kubevirt
Azure Linux:3
before 1.8.4-4
1.8.4-4
kubevirt
SUSE:Linux Enterprise Module for Containers 15 SP7
before 1.7.4-150700.3.36.1
1.7.4-150700.3.36.1
kubevirt-1.6
SUSE:Linux Enterprise Module for Containers 15 SP7
From an advisory covering 16 CVEs
before 1.6.6-150700.15.17.1
1.6.6-150700.15.17.1
kubevirt1.9
openSUSE:Tumbleweed
From an advisory covering 5 CVEs
before 1.9.0-3.1
1.9.0-3.1
kubevirt1.8
openSUSE:Tumbleweed
before 1.8.4-6.1
1.8.4-6.1
kubevirt1.8
openSUSE:Leap 16.0
From an advisory covering 25 CVEs
before 1.8.4-160000.1.1
1.8.4-160000.1.1
kubevirt1.9
openSUSE:Leap 16.0
From an advisory covering 6 CVEs
before 1.9.1-160000.1.1
1.9.1-160000.1.1

History

History
RecordedChangedSources
affected
factsOSV
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-13622 is a high vulnerability (CVSS 8.8) in Red Hat Container Native Virtualization 4.12, published August 12, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.20%, the 10th percentile. Fixed in kubevirt 1.8.4-4.

References

Show 69 moreShow less
MoveEnter Open