CVE-2026-40197
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 32 - wyżej niż 32% wszystkich znanych CVE
Streszczenie
W Incus przed wersją 7.0.0 brak walidacji w logice importu wolumenów pamięci masowej pozwala uwierzytelnionemu użytkownikowi z dostępem do tej funkcji na zawieszenie demona Incus. Podsystem importu kopii zapasowych wolumenów niestandardowych zawiera dereferencję wskaźnika nil podczas importu: pętla importu migawek iteruje po elementach srcBackup.Config.VolumeSnapshots i zakłada, że każdy element jest zainicjalizowany, po czym odwołuje się do pól Name, Config, Description, CreatedAt i ExpiresAt bez walidacji. Ponieważ unmarshaler YAML akceptuje jawne elementy null w tablicy z index.yaml kontrolowanego przez atakującego i konwertuje je na wskaźniki nil, atakujący może dostarczyć archiwum z wpisem null w tablicy volume_snapshots, powodując dereferencję wskaźnika nil i zakończenie demona. Podatność naprawiono w wersji 7.0.0.
Ocena ryzyka
Powtarzające się wykorzystanie może utrzymywać Incus offline, powodując odmowę usługi na dotkniętym węźle. Ryzyko dotyczy organizacji z uwierzytelnionymi użytkownikami mającymi dostęp do funkcji wolumenów pamięci masowej.
Rekomendacja
Zaktualizuj Incus do wersji 7.0.0 lub nowszej. Ogranicz dostęp do funkcji importu wolumenów pamięci masowej do zaufanych użytkowników.
Inne podatności w Incus
Zobacz wszystkie- CVE-2026-23954Wysokie
Incus w wersjach 6.21.0 i niższych umożliwia użytkownikowi z możliwością uruchomienia kontenera z niestandardowym obrazem (np. członkowi grupy 'incus') wykorzystanie przechodzenia po katalogach lub dowiązań symbolicznych w funkcji szablonów do odczytu i zapisu dowolnych plików na hoście, co prowadzi do wykonania dowolnych komend na hoście. Poprawka planowana jest w wersjach 6.0.6 i 6.21.0.
- CVE-2026-23953Wysokie
Incus w wersjach 6.20.0 i niższych umożliwia użytkownikowi z możliwością uruchomienia kontenera z niestandardową konfiguracją YAML (np. członkowi grupy 'incus') utworzenie zmiennej środowiskowej zawierającej znaki nowej linii, co może być wykorzystane do dodania dodatkowych elementów konfiguracji w lxc.conf kontenera. Może to pozwolić na dodanie dowolnych haków cyklu życia, prowadząc do wykonania dowolnych komend na hoście. Poprawka planowana jest w wersjach 6.0.6 i 6.21.0.
- CVE-2026-115377Krytyczne
Incus przed 6.0.7, 6.1.0 przed 7.0.2 oraz 7.1.0 przed 7.5.0 zawiera podatność na dowolny zapis plików, która pozwala złośliwym źródłom migracji zapisywać pliki hosta poprzez umieszczanie dowiązań symbolicznych w transferowanych wolumenach. Atakujący może spreparować strumienie rsync lub btrfs receive z dowiązaniem takim jak rootfs wskazującym na katalog główny hosta, zapisując pliki jako root i prowadząc do pełnego przejęcia hosta.
- CVE-2026-115375Krytyczne
Incus 7.0.0 przed 7.0.2 oraz 7.1.0 przed 7.5.0 zawiera podatność na path traversal, która pozwala klientom mogącym tworzyć instancje zapisywać pliki na hoście. Wada wynika z niezwalidowanych nazw zależnych wolumenów niestandardowych w plikach index.yaml kopii zapasowych instancji. Atakujący może zaimportować spreparowaną kopię zapasową z sekwencjami ../ w nazwach zależnych wolumenów, aby utworzyć katalogi należące do roota z kontrolowaną zawartością, prowadząc do pełnego przejęcia hosta.
- CVE-2026-63343Krytyczne
Incus przed wersją 7.3.0 zawiera podatność, w której złośliwy obraz zawierający dowiązanie symboliczne `metadata.yaml` wskazujące na dowolną ścieżkę hosta pozwala uwierzytelnionemu użytkownikowi Incus na odczyt lub nadpisanie dowolnego pliku na hoście jako root przez API metadanych instancji. Ścieżki `exec-output` i `templates/` zostały załatane wcześniej, ale `metadata.yaml` nie został objęty poprawką i pozostaje podatny.
- CVE-2026-63125Krytyczne
Incus przed wersją 7.3.0 pozwala nieuprzywilejowanemu użytkownikowi ograniczonemu do projektu (niebędącemu administratorem TLS/RBAC z uprawnieniami `can_create_images` i `can_create_instances`) na wykonanie dowolnego kodu jako root na hoście. Złośliwy obraz zawiera `backup.yaml` jako dowiązanie symboliczne do pliku hosta. Gdy root daemon zapisuje plik kopii zapasowej instancji, podąża za dowiązaniem symbolicznym.
- CVE-2026-62941Krytyczne
Incus przed wersją 7.3.0 ma podatność, w której podczas kopiowania instancji między projektami sprawdzenie ograniczeń projektu (`AllowInstanceCreation`) jest wykonywane PRZED scaleniem konfiguracji źródłowej instancji z żądaniem. Niebezpieczne klucze konfiguracji (takie jak `security.privileged`, `raw.lxc`, `raw.apparmor`) ze źródłowej instancji są scalane PO przejściu kontroli, omijając wszystkie ograniczenia projektu w projekcie docelowym.
- CVE-2026-62940Krytyczne
Incus przed wersją 7.3.0 ma podatność, w której podczas migracji instancji do innego członka klastra, nadpisania konfiguracji dostarczone przez użytkownika (w tym klucze krytyczne dla bezpieczeństwa, takie jak `security.privileged` i `raw.lxc`) są stosowane bez egzekwowania jakichkolwiek ograniczeń projektu, co pozwala użytkownikowi z ograniczonego projektu na eskalację do uprzywilejowanego kontenera i ucieczkę do hosta.
- CVE-2026-62867Krytyczne
Incus przed wersją 7.3.0 ma podatność, w której nieprawidłowa walidacja dostarczonego przez użytkownika `block.create_options` w konfiguracji woluminu magazynu prowadzi do wstrzyknięcia argumentów w konstruowanej linii poleceń tworzenia systemu plików. Pozwala to użytkownikowi z ograniczeniem do projektu na wstrzyknięcie dowolnych argumentów do binarnego wykonywanego jako root.
- CVE-2026-48769Krytyczne
Incus przed wersją 7.2.0 ma podatność polegającą na dowolnym zapisie pliku w kliencie Incus, gdy złośliwy serwer obrazów zwraca spreparowany nagłówek `Incus-Image-Hash`. Może to prowadzić do wykonania dowolnych poleceń jako root na serwerze.
Oryginalny opis (angielski, źródło NVD)
Incus is a system container and virtual machine manager. In versions before 7.0.0, missing validation logic in the storage volume import logic allows an authenticated user with access to the storage volume feature to cause the Incus daemon to crash. The custom volume backup import subsystem contains a nil-pointer dereference vulnerability during import operations. In the snapshot import loop, the daemon iterates over entries from `srcBackup.Config.VolumeSnapshots` and assumes that each slice element is initialized, then dereferences fields such as `Name`, `Config`, `Description`, `CreatedAt`, and `ExpiresAt` without first validating the element itself. Because the yaml unmarshaler accepts explicit null array elements from an attacker-controlled index.yaml and converts them into nil pointers inside the slice, an attacker can supply a backup archive containing a null entry in the volume_snapshots array. This causes a nil-pointer dereference during custom volume import and terminates the daemon, resulting in denial of service on the affected node. Repeated use of this issue can be used to keep Incus offline, causing a denial of service. This issue is fixed in version 7.0.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

