CVE-2017-14316
WysokieStreszczenie
W Xen w wersjach do 4.9.x odkryto problem z weryfikacją parametrów. Funkcja `alloc_heap_pages` pozwala na określenie pierwszego węzła NUMA do alokacji, jednak nieprawidłowo obsługuje przypadek, gdy `node >= MAX_NUMNODES`, co prowadzi do dostępu poza granice wewnętrznej tablicy.
Ocena ryzyka
Wykorzystanie tej podatności może prowadzić do nieautoryzowanego dostępu do pamięci, co stwarza ryzyko destabilizacji systemu oraz potencjalnego wycieku danych.
Rekomendacja
Zaleca się aktualizację do najnowszej wersji Xen, która naprawia ten problem, oraz przeglądanie i ograniczanie dostępu do funkcji alokacji pamięci.
Inne podatności w Xen
Zobacz wszystkie- CVE-2026-62436Średnie
Podczas przełączania z Grant Table v2 na v1 w Xen, kod trzymający blokadę tabeli grantów, ale tymczasowo ją zwalniający i ponownie przejmujący, błędnie zakłada, że właściwości tabeli nie zmienią się w czasie, gdy blokada nie jest trzymana. Prowadzi to do problemów z ramkami statusu, które znikają przy przejściu z v2 na v1.
- CVE-2026-62435Średnie
Podczas przełączania z Grant Table v1 na v2 w Xen, kod trzymający blokadę tabeli grantów, ale tymczasowo ją zwalniający i ponownie przejmujący, błędnie zakłada, że właściwości tabeli nie zmienią się w czasie, gdy blokada nie jest trzymana. Prowadzi to do zmniejszenia liczby prawidłowych referencji grantów.
- CVE-2026-62434Średnie
Gość z włączoną funkcją Populated on Demand (PoD) może próbować odzyskiwać strony, które nie są zwykłą pamięcią RAM gościa. Może to prowadzić do uszkodzenia zarządzania pamięcią w Xen.
- CVE-2026-62432Wysokie
Hiperwywołanie EVTCHNOP_expand_array sprawdza, czy zdarzenia FIFO są włączone, ale bez odpowiedniego blokowania. Może to prowadzić do wyścigu z EVTCHNOP_reset, skutkującego dereferencją wskaźnika NULL.
- CVE-2026-62431Wysokie
Logika obsługi okresowych timerów Viridian STIMER wykonuje dzielenie przez wartość kontrolowaną przez użytkownika, która może być ustawiona na zero, powodując błąd #DE (dzielenie przez zero).
- CVE-2026-62430Wysokie
Dostęp do pamięci CMOS odbywa się za pomocą pary portów IO. Xen musi buforować wybrany przez gościa indeks, ale jedno z użyć tego indeksu nie miało odpowiedniego blokowania, co pozwala gościowi na zmianę indeksu po jego sprawdzeniu, prowadząc do odczytu poza zakresem tablicy.
- CVE-2026-62429Średnie
Dostęp do danych konfiguracyjnych vNUMA gościa jest możliwy nawet po rozpoczęciu niszczenia domeny. Czyszczenie tych informacji konfiguracyjnych nie jest zsynchronizowane z ich pobieraniem przez model urządzenia sterujący gościem.
- CVE-2026-62428Wysokie
Podczas przetwarzania operacji grant-copy, sprawdzane są uprawnienia i wykonywana kopia. Gdy grant jest już używany („pinned”), sprawdzenie uprawnień może być wykonane na innej stronie niż ta faktycznie używana w kopii, co prowadzi do niespójności.
- CVE-2026-62427Wysokie
Operacje platform-op używają globalnego blokady, ale sposób jej uzyskiwania nie zapewnia sprawiedliwości, a przy użyciu XSM/Flask blokada jest przejmowana przed sprawdzeniem uprawnień. To jest problem platform-op.
- CVE-2026-62426Wysokie
Operacje sysctl używają globalnego blokady, ale sposób jej uzyskiwania nie zapewnia sprawiedliwości, a przy użyciu XSM/Flask blokada jest przejmowana przed sprawdzeniem uprawnień. To jest problem sysctl.
Oryginalny opis (angielski, źródło NVD)
A parameter verification issue was discovered in Xen through 4.9.x. The function `alloc_heap_pages` allows callers to specify the first NUMA node that should be used for allocations through the `memflags` parameter; the node is extracted using the `MEMF_get_node` macro. While the function checks to see if the special constant `NUMA_NO_NODE` is specified, it otherwise does not handle the case where `node >= MAX_NUMNODES`. This allows an out-of-bounds access to an internal array.

