CVE-2025-64434
📋 TL;DR
This vulnerability in KubeVirt allows an attacker who compromises a virt-handler instance to impersonate virt-api using shared credentials, enabling privileged operations against other virt-handler instances. This could compromise the integrity and availability of managed VMs. Affected users are those running KubeVirt versions prior to 1.5.3 or 1.6.1.
💻 Affected Systems
- KubeVirt
📦 What is this software?
Kubevirt by Kubevirt
Kubevirt by Kubevirt
⚠️ Risk & Real-World Impact
Worst Case
Complete compromise of all virt-handler instances leading to VM takeover, data exfiltration, and denial of service across the Kubernetes cluster.
Likely Case
Targeted compromise of specific virt-handler instances allowing VM manipulation, configuration changes, and potential lateral movement within the cluster.
If Mitigated
Limited impact due to network segmentation, strong authentication controls, and monitoring that detects anomalous virt-handler communications.
🎯 Exploit Status
Exploitation requires initial compromise of a virt-handler instance plus knowledge of KubeVirt internals. No public exploit code has been identified.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.5.3 or 1.6.1
Vendor Advisory: https://github.com/kubevirt/kubevirt/security/advisories/GHSA-ggp9-c99x-54gp
Restart Required: Yes
Instructions:
1. Update KubeVirt to version 1.5.3 or 1.6.1 using kubectl apply with the updated manifests. 2. Restart all virt-handler pods to ensure the fix is applied. 3. Verify all components are running the patched version.
🔧 Temporary Workarounds
Network segmentation
linuxRestrict network communication between virt-handler instances using Kubernetes Network Policies
kubectl apply -f network-policy.yaml
Enhanced monitoring
allImplement monitoring for anomalous virt-handler to virt-handler communications
🧯 If You Can't Patch
- Implement strict network segmentation between virt-handler instances using Kubernetes Network Policies
- Enhance monitoring and alerting for any virt-handler communications that bypass normal virt-api patterns
🔍 How to Verify
Check if Vulnerable:
Check KubeVirt version: kubectl get kubevirt.kubevirt.io/kubevirt -n kubevirt -o jsonpath='{.status.observedKubeVirtVersion}'
Check Version:
kubectl get kubevirt.kubevirt.io/kubevirt -n kubevirt -o jsonpath='{.status.observedKubeVirtVersion}'
Verify Fix Applied:
Verify version is 1.5.3 or higher (if on 1.5.x) or 1.6.1 or higher (if on 1.6.x). Check virt-handler pod logs for proper certificate verification.
📡 Detection & Monitoring
Log Indicators:
- Unexpected virt-handler to virt-handler communications
- Certificate verification failures in virt-handler logs
- Privileged operations originating from unexpected sources
Network Indicators:
- Direct virt-handler to virt-handler TLS connections bypassing virt-api
- Unusual port activity between virt-handler pods
SIEM Query:
source="virt-handler" AND (event="certificate_verification_failure" OR dest_ip IN virt_handler_ips)
🔗 References
- https://github.com/kubevirt/kubevirt/commit/231dc69723f331dc02f65a31ab4c3d6869f40d6a
- https://github.com/kubevirt/kubevirt/commit/af2f08a9a186eccc650f87c30ab3e07b669e8b5b
- https://github.com/kubevirt/kubevirt/commit/b9773bc588e6e18ece896a2dad5336ef7a653074
- https://github.com/kubevirt/kubevirt/security/advisories/GHSA-ggp9-c99x-54gp