Katalog CVE

CVE-2026-72441

Niskie ryzyko· EPSS 14%
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.23%

Percentyl 14 - wyżej niż 14% wszystkich znanych CVE

Streszczenie

W jądrze Linux wykryto podatność powodującą wyciek niezainicjalizowanych danych ze stosu do przestrzeni użytkownika w funkcji dgram_recvmsg() dla protokołu IEEE 802.15.4. Problem wynika z niezerowania pola pan_id w strukturze adresu, gdy tryb adresowania to IEEE802154_ADDR_NONE, co prowadzi do ujawnienia zawartości stosu jądra.

Ocena ryzyka

Atakujący może wykorzystać tę podatność do odczytania fragmentów pamięci jądra, co może ujawnić wrażliwe dane (np. klucze, hasła) i naruszyć poufność systemu. Wymaga to jednak lokalnego dostępu i specjalnie spreparowanych ramek sieciowych.

Rekomendacja

Zaleca się natychmiastowe zaktualizowanie jądra Linux do wersji zawierającej poprawkę (memset zerujący strukturę adresu). Jeśli nie jest to możliwe, należy ograniczyć dostęp do interfejsów IEEE 802.15.4 tylko zaufanym procesom.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: ieee802154: fix kernel-infoleak in dgram_recvmsg() KMSAN reported a kernel-infoleak in move_addr_to_user(): BUG: KMSAN: kernel-infoleak in instrument_copy_to_user include/linux/instrumented.h:131 [inline] BUG: KMSAN: kernel-infoleak in _inline_copy_to_user include/linux/uaccess.h:205 [inline] BUG: KMSAN: kernel-infoleak in _copy_to_user+0xcc/0x120 lib/usercopy.c:26 instrument_copy_to_user include/linux/instrumented.h:131 [inline] _inline_copy_to_user include/linux/uaccess.h:205 [inline] _copy_to_user+0xcc/0x120 lib/usercopy.c:26 copy_to_user include/linux/uaccess.h:236 [inline] move_addr_to_user+0x2e7/0x440 net/socket.c:302 ____sys_recvmsg+0x232/0x610 net/socket.c:2925 ... Uninit was stored to memory at: ieee802154_addr_to_sa include/net/ieee802154_netdev.h:369 [inline] dgram_recvmsg+0xa09/0xbe0 net/ieee802154/socket.c:739 The issue occurs because the `pan_id` field of `struct ieee802154_addr` is left uninitialized when the address mode is `IEEE802154_ADDR_NONE`. The execution flow is as follows: 1. `__ieee802154_rx_handle_packet()` declares a local `struct ieee802154_hdr hdr` on the stack. 2. `ieee802154_hdr_pull()` calls `ieee802154_hdr_get_addr()` to parse the source and destination addresses into this structure. 3. If the address mode is `IEEE802154_ADDR_NONE`, `ieee802154_hdr_get_addr()` previously only set the `mode` field, leaving the `pan_id` field containing uninitialized stack memory. 4. This uninitialized `pan_id` is later copied into a `struct sockaddr_ieee802154` in `dgram_recvmsg()` via `ieee802154_addr_to_sa()`. 5. Finally, `move_addr_to_user()` copies the socket address structure to user space, leaking the uninitialized bytes. Fix this by using `memset` to zero out the address structure in `ieee802154_hdr_get_addr()` when the mode is `IEEE802154_ADDR_NONE`.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS