CRITICAL🇬🇧 English

CVE-2024-57932

Linux Kernel GVE: divide-by-zero w obsłudze XDP xmit przy braku kolejek

CVSS 9.8v3.1pub. 2025-01-21upd. 2026-08-04

Podatność w sterowniku GVE (Google Virtual Ethernet) jądra Linux umożliwia wywołanie błędu divide-by-zero lub dereferencji wskaźnika NULL podczas obsługi wywołania zwrotnego NDO XDP XMIT. Oceniona jako krytyczna (CVSS 9.8), może prowadzić do destabilizacji systemu.

Pokaż oryginał (EN)

In the Linux kernel, the following vulnerability has been resolved: gve: guard XDP xmit NDO on existence of xdp queues In GVE, dedicated XDP queues only exist when an XDP program is installed and the interface is up. As such, the NDO XDP XMIT callback should return early if either of these conditions are false. In the case of no loaded XDP program, priv->num_xdp_queues=0 which can cause a divide-by-zero error, and in the case of interface down, num_xdp_queues remains untouched to persist XDP queue count for the next interface up, but the TX pointer itself would be NULL. The XDP xmit callback also needs to synchronize with a device transitioning from open to close. This synchronization will happen via the GVE_PRIV_FLAGS_NAPI_ENABLED bit along with a synchronize_net() call, which waits for any RCU critical sections at call-time to complete.

🤖 Analiza AI
Jak działa

Sterownik GVE tworzy dedykowane kolejki XDP wyłącznie wtedy, gdy zainstalowany jest program XDP i interfejs sieciowy jest aktywny. Wywołanie zwrotne NDO XDP XMIT nie sprawdzało tych warunków przed wykonaniem: gdy nie ma załadowanego programu XDP, wartość priv->num_xdp_queues wynosi 0, co powoduje błąd dzielenia przez zero (CWE-369). Gdy interfejs jest wyłączony, licznik kolejek XDP pozostaje niezmieniony, lecz wskaźnik TX przyjmuje wartość NULL, co może prowadzić do dereferencji NULL. Brakuje również synchronizacji z przejściem urządzenia ze stanu otwartego do zamkniętego.

Skutki

Atakujący lub proces mogący wywołać ścieżkę kodu XDP XMIT może doprowadzić do awarii (kernel panic) lub niestabilności systemu operacyjnego, co skutkuje odmową usługi (DoS) dla całego hosta.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami — poprawka wprowadza wczesne wyjście z wywołania zwrotnego NDO XDP XMIT w przypadku braku załadowanego programu XDP lub nieaktywnego interfejsu, a także synchronizację przez flagę GVE_PRIV_FLAGS_NAPI_ENABLED i wywołanie synchronize_net().

Kogo dotyczy

Jądro Linux z włączonym sterownikiem GVE (Google Virtual Ethernet); konkretne wersje wskazane w referencjach producenta (commity: 35f44eed5828, cbe9eb2c39d0, ff7c2dea9dd1).

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Linux Kernel

    OS
    Linux
    6.136.4 – 6.6.70 (bez)6.7 – 6.12.9 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2025-10585CRITICAL9.8⚠ KEVPL ✓ten sam produkt

Type confusion w V8 (Google Chrome) — zdalne uszkodzenie sterty

CVE-2025-34028CRITICAL9.3⚠ KEVPL ✓ten sam produkt

Commvault Command Center – nieuwierzytelniony RCE przez path traversal w ZIP

CVE-2022-47986CRITICAL9.8⚠ KEVPL ✓ten sam produkt

RCE przez YAML deserialization w IBM Aspera Faspex

CVE-2022-22954CRITICAL9.8⚠ KEVPL ✓ten sam produkt

RCE w VMware Workspace ONE Access i Identity Manager poprzez server-side template injection

CVE-2020-4006CRITICAL9.1⚠ KEVPL ✓ten sam produkt

Command Injection w VMware Workspace One Access i Identity Manager