CVE-2026-72029
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 33 - wyżej niż 33% wszystkich znanych CVE
Streszczenie
W jądrze Linux w sterowniku iosm dla modemów WWAN wykryto podatność polegającą na braku walidacji przesunięć i długości dostarczanych przez modem w dekoderze MUX downlink. Atakujący modem może spowodować odczyt poza granicami bufora (out-of-bounds read) oraz zapętlenie się dekodera, co prowadzi do awarii systemu lub wycieku danych.
Ocena ryzyka
Ryzyko obejmuje możliwość zdalnego wywołania błędu jądra (crash) lub nieautoryzowanego odczytu pamięci przez podłączony modem, co może prowadzić do naruszenia integralności systemu lub wycieku wrażliwych danych.
Rekomendacja
Zaleca się natychmiastowe zaktualizowanie jądra Linux do wersji zawierającej poprawkę (commit dla net: wwan: iosm). Jeśli nie jest to możliwe, należy ograniczyć dostęp do interfejsów sieciowych iosm lub wyłączyć obsługę modemów WWAN do czasu zastosowania aktualizacji.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: net: wwan: iosm: bound device offsets in the MUX downlink decoder mux_dl_adb_decode() walks a chain of aggregated datagram tables using offsets and lengths taken from the modem. first_table_index, next_table_index, table_length, datagram_index and datagram_length are all device supplied le values. Only first_table_index was checked, and only for being non zero. The decoder then formed adth = block + adth_index and read the table header and the datagram entries with no bound against the received skb. A modem that reports an index or a length past the downlink buffer makes the decoder read out of bounds. The buffer is IPC_MEM_MAX_DL_MUX_LITE_BUF_SIZE and skb->len is at most that, so skb->len is the real limit, but none of these in band offsets were checked against it. The table chain is also followed with no forward progress check. The loop takes the next table from adth->next_table_index and stops only when that reaches zero. A modem can stage two tables that point at each other, so the loop never ends. It runs in softirq and clones the skb on every pass. Validate every device offset and length against skb->len before use. The block header must fit. Each table header, on entry and after every next_table_index, must lie inside the skb. The datagram table must fit. Each datagram index and length must stay inside the skb. The header padding must not exceed the datagram length so the receive length does not wrap. Require each next_table_index to move forward so the chain cannot cycle. This was reproduced under KASAN as a slab out of bounds read on a normal downlink receive once the iosm net device is up.

