CVE-2026-13434
ŚrednieCVSS 4.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 5 - wyżej niż 5% wszystkich znanych CVE
Streszczenie
W KubeVirt znaleziono podatność w generatorze adnotacji sieciowych. Brak walidacji wartości networkName pozwala tenantowi z uprawnieniami kubevirt.io:edit na wstrzyknięcie kodu JSON do adnotacji v1.multus-cni.io/default-network. Gdy włączona jest funkcja ExternalNetResourceInjection (domyślnie wyłączona), Multus może podłączyć pod do dowolnej sieci w dowolnej przestrzeni nazw.
Ocena ryzyka
Organizacja narażona jest na nieautoryzowany dostęp do sieci w innych przestrzeniach nazw oraz podszywanie się pod adresy IP i MAC. Może to prowadzić do naruszenia izolacji sieciowej i eskalacji uprawnień w środowisku wielodostępnym.
Rekomendacja
Należy wyłączyć funkcję ExternalNetResourceInjection, jeśli nie jest wymagana, oraz zaktualizować KubeVirt do wersji zawierającej poprawkę walidacji. Dla OpenShift Virtualization 4.21 i nowszych zastosować odpowiednie łatki bezpieczeństwa.
Inne podatności w KubeVirt
Zobacz wszystkie- CVE-2026-7374Krytyczne
W KubeVirt w komponencie virt-handler stwierdzono podatność polegającą na nieprawidłowej walidacji dowiązań symbolicznych podczas łączenia z konsolami maszyn wirtualnych. Uwierzytelniony użytkownik OpenShift z uprawnieniami edycji w pojedynczej przestrzeni nazw może zastąpić gniazdo konsoli dowiązaniem symbolicznym do gniazda CRI-O hosta, przejmując uprzywilejowane połączenie virt-handlera.
- CVE-2026-13622Wysokie
Podatność polegająca na podążaniu za dowiązaniami symbolicznymi w KubeVirt's virt-handler migration proxy. Podczas migracji na żywo, virt-handler łączy się z gniazdami Unix wewnątrz docelowego poda virt-launcher przez ścieżki /proc/<pid>/root/ bez ochrony przed dowiązaniami symbolicznymi. Atakujący z uprawnieniami do edycji przestrzeni nazw i wykonywania poleceń w podach może podmienić gniazdo proxy migracji na dowiązanie symboliczne do gniazda CRI-O na hoście, co umożliwia pełne przejęcie węzła.
- CVE-2026-13322Niskie
W KubeVirt znaleziono podatność w serwerze downward metrics virtio-serial. Serwer odczytuje żądania gościa za pomocą textproto.Reader.ReadLine(), który buforuje dane wejściowe bez ograniczenia długości lub limitu czasu, dopóki nie otrzyma znaku nowej linii. Użytkownik mający dostęp do maszyny wirtualnej z skonfigurowanym urządzeniem downward metrics virtio-serial może wysłać ciągły strumień bajtów, powodując nieograniczoną alokację pamięci w procesie virt-handler, aż do jego zabicia przez OOM.
- CVE-2026-13318Średnie
W KubeVirt znaleziono podatność SSRF w handlerze port-forward virt-api. Podczas przetwarzania żądania port-forward do instancji VMI, virt-api odczytuje docelowy adres IP z vmi.Status.Interfaces[0].IP i przekazuje go bezpośrednio do net.Dial() bez walidacji. Dla VMI używających nie-maskujących wiązań sieciowych (bridge lub secondary-only), ten adres IP jest raportowany przez agenta QEMU działającego wewnątrz VM i jest w pełni kontrolowany przez właściciela VM.
- CVE-2026-13218Średnie
W KubeVirt znaleziono lukę w obsłudze pamięci podręcznej sieci przez virt-handler. Funkcja WriteToCachedFile zapisuje dane do ścieżki w katalogu launcher bez ochrony przed dowiązaniami symbolicznymi, co pozwala użytkownikowi z dostępem do kontenera virt-launcher na nadpisanie dowolnego pliku hosta treścią JSON i zmianę jego właściciela.
- CVE-2026-13208Średnie
W KubeVirt znaleziono lukę w serwerze powiadomień domeny virt-handler. Procedury obsługi gRPC dla HandleDomainEvent i HandleK8SEvent pobierają tożsamość VMI (przestrzeń nazw/nazwa) wyłącznie z treści żądania, bez weryfikacji jej względem źródła połączenia. Każdy proces virt-launcher łączy się przez gniazdo potoku per-VMI, ale żaden znacznik tożsamości nie jest propagowany ze ścieżki potoku do procedur obsługi serwera.
- CVE-2026-13201Wysokie
W pakiecie safepath projektu KubeVirt, używanym przez komponent virt-handler, wykryto lukę w funkcji OpenAtNoFollow. Funkcja ta używa flag O_PATH|O_NOFOLLOW do uzyskania deskryptora pliku, ale późniejsze operacje rozwijają ścieżkę przez /proc/self/fd/N z użyciem wywołań systemowych podążających za dowiązaniami symbolicznymi. Gdy liść ścieżki jest dowiązaniem symbolicznym, jądro je dereferencjonuje, omijając zamierzoną ochronę przed podążaniem za dowiązaniami.
- CVE-2026-9804Wysokie
W KubeVirt w komponencie virt-exportserver wykryto podatność na path traversal. Atakujący z dostępem do przestrzeni nazw może umieścić dowiązanie symboliczne w eksportowanym PVC, wskazujące poza katalog główny montowania, co umożliwia odczyt dowolnych plików z systemu plików poda eksportera.
Oryginalny opis (angielski, źródło NVD)
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).

