CVE-2026-13208: Kubevirt: virt-handler-rhel9: kubevirt: virt-handler notify server trusts vmi identity from unauthenticated grpc request body

Published Jun 24, 2026
·
Updated

A flaw was found in KubeVirt's virt-handler domain notify server (pkg/virt-handler/notify-server/server.go). The gRPC handlers HandleDomainEvent (L54) and HandleK8SEvent (L96) derive the target VMI identity solely from the request body (DomainJSON informer key, EventNamespace/EventName) without validating it against the originating connection. Each virt-launcher connects via a per-VMI domain-notify-pipe.sock, but pipe.go performs a raw io.Copy byte pump with no peer identity tagging. No SOPEERCRED or per-connection authentication is present on the shared socket.

A compromised virt-launcher can connect to its own pipe socket and send HandleDomainEvent/HandleK8SEvent gRPC messages claiming to be any other VMI on the same node. virt-handler processes these as authoritative, updating the victim VMI's state in the Kubernetes API. This enables cross-tenant denial of service: forced shutdown/restart loops, lifecycle state corruption, and K8s Event forgery.

Upstream fix recommendation: Tag each pipe connection with the VMI UID at accept time (the pipe socket path already encodes it) and pass that identity through to the notify-server handlers; reject any DomainEvent/K8sEvent whose embedded namespace/name/UID does not match the connection's tagged identity.

References: - Vulnerable file: pkg/virt-handler/notify-server/server.go - Pipe handler: pkg/virt-handler/notify-server/pipe.go

Other sources

A flaw was found in KubeVirt's virt-handler domain notify server. The gRPC handlers for HandleDomainEvent and HandleK8SEvent derive the VMI identity (namespace/name) solely from the request body without validating it against the connection's origin. Each virt-launcher pod connects through a per-VMI pipe socket, but no identity tag is propagated from the pipe path to the server handlers. This allows a compromised virt-launcher process to send forged domain lifecycle events for any other VMI scheduled on the same node, causing virt-handler to erroneously update that VMI's state and disrupt its lifecycle management.

MITRE

Affected Software

3 affected components
Kubevirt virt-handler
Kubevirt Kubevirt Kubernetes
redhat Openshift Virtualization>=4<=4.22.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Update HandleDomainEvent (L54) and HandleK8SEvent (L96) to derive/verify the target VMI identity from the connection origin (pipe path encodes per-VMI domain-notify-pipe.sock) and reject any DomainEvent/K8sEvent forged with a different DomainJSON informer key / EventNamespace / EventName than the connection-tagged VMI identity.

    KubeVirt virt-handler domain notify server (pkg/virt-handler/notify-server/server.go) gRPC handler identity validation (HandleDomainEvent/HandleK8SEvent) = Reject events when request-body VMI identity (namespace/name and/or UID) does not match the VMI identity tagged from the originating pipe connection
  2. Configuration

    Modify pipe.go to tag each accepted pipe connection with the VMI UID at accept time (derived from the per-VMI domain-notify-pipe.sock path) and propagate that tagged identity to notify-server handlers so server handlers validate request-body identity against the connection origin.

    KubeVirt virt-handler notify pipe server (pkg/virt-handler/notify-server/pipe.go) Per-connection authentication/identity tagging = Tag each accepted pipe connection with the VMI UID encoded in the pipe socket path and pass it through to server handlers; no trust of unauthenticated request-body identity

Event History

Jun 24, 2026
Data Sourced
via Red Hat·03:04 PM
DescriptionSeverityAffected Software
CVE Published
via MITRE·08:39 PM
Data Sourced
via MITRE·08:39 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·09:16 PM
DescriptionSeverityWeaknessAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-13208?

CVE-2026-13208 has a medium severity level with a score of 6.5.

2

How do I fix CVE-2026-13208?

To fix CVE-2026-13208, ensure that your KubeVirt installation is updated to the latest version which addresses this vulnerability.

3

What is the impact of CVE-2026-13208?

CVE-2026-13208 could allow unauthorized access by manipulating gRPC request bodies, potentially leading to data exposure.

4

What software is affected by CVE-2026-13208?

CVE-2026-13208 affects KubeVirt's virt-handler component.

5

How does CVE-2026-13208 exploit gRPC requests?

CVE-2026-13208 exploits vulnerabilities by trusting VMI identity derived from unauthenticated gRPC request bodies.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203