CVE-2026-52919
WysokieCVSS 7.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 2 - wyżej niż 2% wszystkich znanych CVE
Streszczenie
W jądrze Linux w module batman-adv wykryto podatność polegającą na niedomiarze licznika w mechanizmie tp_meter podczas zamykania sesji. Gdy wiele ścieżek (np. timeout, anulowanie przez użytkownika, normalne zakończenie) wywołuje funkcję batadv_tp_sender_shutdown(), licznik atomowy 'sending' może spaść poniżej zera, co prowadzi do nieskończonej pętli wątku nadawcy. Powoduje to użycie po zwolnieniu pamięci (use-after-free) przy usuwaniu interfejsu.
Ocena ryzyka
Organizacja narażona jest na awarię systemu lub potencjalne przejęcie kontroli nad jądrem przez atakującego, który może wywołać warunek wyścigu podczas zamykania sesji pomiaru przepustowości w sieci mesh batman-adv.
Rekomendacja
Należy niezwłocznie zaktualizować jądro Linux do wersji zawierającej poprawkę używającą atomic_xchg() do bezpiecznego przejścia licznika z 1 na 0. Sprawdź dostępność łatki w dystrybucji i zastosuj ją priorytetowo na systemach z modułem batman-adv.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: batman-adv: fix tp_meter counter underflow during shutdown batadv_tp_sender_shutdown() unconditionally decrements the "sending" atomic counter. If multiple paths (e.g. timeout, user cancel, and normal finish) call this function, the counter can underflow to -1. Since the sender logic treats any non-zero value as "still sending", a negative value causes the sender kthread to loop indefinitely. This leads to a use-after-free when the interface is removed while the zombie thread is still active. Fix this by using atomic_xchg() to ensure the counter only transitions from 1 to 0 once. [sven: added missing change in batadv_tp_send]

