CVE-2025-21707
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 44 - wyżej niż 44% wszystkich znanych CVE
Streszczenie
W jądrze Linux w implementacji MPTCP wykryto podatność polegającą na nieprawidłowym zarządzaniu stanem opcji podrzędnych. Zerowanie maski bitowej przed parsowaniem nie zapewnia spójności stanu, co prowadzi do użycia niezainicjalizowanych pól bitowych i może skutkować błędem KMSAN.
Ocena ryzyka
Podatność może prowadzić do nieprzewidywalnego zachowania systemu, w tym do awarii jądra (kernel panic) lub potencjalnego naruszenia integralności danych w połączeniach MPTCP.
Rekomendacja
Należy niezwłocznie zaktualizować jądro Linux do wersji zawierającej poprawkę konsolidującą stan opcji podrzędnych MPTCP.
Inne podatności w Linux kernel
Zobacz wszystkie- CVE-2026-80919Nieznane
W jądrze Linux w sterowniku amdgpu wykryto podatność polegającą na rekurencyjnym blokowaniu mutexu w funkcji amdgpu_devcoredump_format(). Podczas zrzutu zawartości IB z zawieszonego zadania dochodzi do podwójnego zablokowania tego samego obiektu synchronizującego, co może prowadzić do zakleszczenia systemu. Problem został naprawiony przez przeniesienie operacji do osobnej funkcji używającej jednego kontekstu drm_exec.
- CVE-2026-80915Nieznane
W jądrze Linux w sterowniku drm/xe naprawiono ścieżki alokacji DPT. Usunięto mechanizm awaryjnego przełączania z pamięci VRAM na pamięć systemową, ponieważ nie działał poprawnie i powodował czarny ekran z błędami potoku. Dodatkowo uniknięto używania pamięci stolen ze względu na opóźnienia i ryzyko losowych zawieszeń systemu pod obciążeniem.
- CVE-2026-80886Nieznane
W jądrze Linux naprawiono podatność w sterowniku szeregowym msm, polegającą na wyłączeniu DMA dla konsoli UART. Jednoczesne zapisy z przestrzeni użytkownika i jądra mogą powodować wyścig, prowadzący do nieskończonej pętli drukowania tych samych komunikatów. Poprawka wyłącza DMA dla konsoli UART, aby zapewnić niezawodną ścieżkę wyjścia.
- CVE-2026-80885Nieznane
W jądrze Linux naprawiono problem w AFS dotyczący nieanulowanego handlera komunikatów OOB rxrpc. Poprawka anuluje przetwarzanie komunikatów OOB (zwykle w odpowiedzi na wyzwania bezpieczeństwa) oraz przenosi to przetwarzanie do kolejki afs_wq, aby było ono oczekiwane. Handler OOB zwraca teraz, jeśli przestrzeń nazw sieci nie jest już aktywna.
- CVE-2026-80882Nieznane
W jądrze Linux naprawiono problem w sterowniku kryptograficznym Tegra, polegający na zwracaniu błędu ENOMEM, gdy alokacja bufora wejściowego nie powiedzie się w funkcji tegra_ccm_do_one_req. Poprawka zapewnia ustawienie wartości błędu ENOMEM w przypadku niepowodzenia alokacji.
- CVE-2026-80881Nieznane
W jądrze Linux naprawiono problem w systemie plików OCFS2 dotyczący zarządzania buforami głowic w funkcji ocfs2_read_blocks(). Poprawka wyjaśnia, że wywołujący nie powinien zakładać, iż bufor głowicy zwrócony przez sb_getblk() jest wyłącznie własnością, a put_bh() zawsze zmniejsza licznik b_count z 1 do 0. Aby uniknąć sytuacji, w której bufor pozostaje wstrzymany i może być zwrócony z ustawionym bitem BH_Uptodate mimo wcześniejszego błędu walidacji, bit BH_Uptodate jest teraz czyszczony natychmiast po wykryciu niespójności danych przez funkcję validate().
- CVE-2026-80880Nieznane
W jądrze Linux w sterowniku IB/mlx5 występuje podatność związana z niejawnym ODP i operacją rereg_mr. Ze względu na dziecięce klucze mkey w konfiguracji niejawnego ODP nie można zmienić niczego w miejscu dla klucza nadrzędnego, dlatego cała struktura musi zostać przebudowana. Dodatkowo usunięto przypadek wyścigu związanego z dostępem do mr->pd przez dziecięce klucze.
- CVE-2026-80879Nieznane
W jądrze Linux wykryto cykliczną zależność blokad w systemie plików OCFS2 podczas operacji zapisu z bezpośrednim dostępem do pamięci (DIO). Problem dotyczy funkcji ocfs2_dio_end_io_write, która może prowadzić do zakleszczenia (deadlock) w wyniku nieprawidłowej kolejności blokowania zasobów systemowych (INODE_ALLOC, EXTENT_ALLOC, ORPHAN_DIR). Poprawka polega na zwolnieniu kontekstów alokacji przed uzyskaniem blokady ORPHAN_DIR.
- CVE-2026-80877Nieznane
W jądrze Linux w systemie plików AFS występuje wyciek pamięci związany z listą vllist w funkcji afs_update_cell(). Gdy nowa lista jest pusta (nr_servers == 0), stara lista nie jest zastępowana, co prowadzi do wycieku nowej listy.
- CVE-2026-80876Nieznane
W jądrze Linux wykryto podatność w mechanizmie ring-buffer (bufor pierścieniowy) używanym przez ftrace. Przy włączonej opcji RB_FORCE_8BYTE_ALIGNMENT (np. na architekturze riscv64 z CONFIG_HAVE_64BIT_ALIGNED_ACCESS) funkcja ring_buffer_event_length() nieprawidłowo oblicza długość zdarzeń dla małych zdarzeń, zawyżając raportowaną długość danych o 4 bajty. Problem objawia się niespójnymi wynikami w testach ftrace (trace_marker_raw).
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: mptcp: consolidate suboption status MPTCP maintains the received sub-options status is the bitmask carrying the received suboptions and in several bitfields carrying per suboption additional info. Zeroing the bitmask before parsing is not enough to ensure a consistent status, and the MPTCP code has to additionally clear some bitfiled depending on the actually parsed suboption. The above schema is fragile, and syzbot managed to trigger a path where a relevant bitfield is not cleared/initialized: BUG: KMSAN: uninit-value in __mptcp_expand_seq net/mptcp/options.c:1030 [inline] BUG: KMSAN: uninit-value in mptcp_expand_seq net/mptcp/protocol.h:864 [inline] BUG: KMSAN: uninit-value in ack_update_msk net/mptcp/options.c:1060 [inline] BUG: KMSAN: uninit-value in mptcp_incoming_options+0x2036/0x3d30 net/mptcp/options.c:1209 __mptcp_expand_seq net/mptcp/options.c:1030 [inline] mptcp_expand_seq net/mptcp/protocol.h:864 [inline] ack_update_msk net/mptcp/options.c:1060 [inline] mptcp_incoming_options+0x2036/0x3d30 net/mptcp/options.c:1209 tcp_data_queue+0xb4/0x7be0 net/ipv4/tcp_input.c:5233 tcp_rcv_established+0x1061/0x2510 net/ipv4/tcp_input.c:6264 tcp_v4_do_rcv+0x7f3/0x11a0 net/ipv4/tcp_ipv4.c:1916 tcp_v4_rcv+0x51df/0x5750 net/ipv4/tcp_ipv4.c:2351 ip_protocol_deliver_rcu+0x2a3/0x13d0 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x336/0x500 net/ipv4/ip_input.c:233 NF_HOOK include/linux/netfilter.h:314 [inline] ip_local_deliver+0x21f/0x490 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:460 [inline] ip_rcv_finish+0x4a2/0x520 net/ipv4/ip_input.c:447 NF_HOOK include/linux/netfilter.h:314 [inline] ip_rcv+0xcd/0x380 net/ipv4/ip_input.c:567 __netif_receive_skb_one_core net/core/dev.c:5704 [inline] __netif_receive_skb+0x319/0xa00 net/core/dev.c:5817 process_backlog+0x4ad/0xa50 net/core/dev.c:6149 __napi_poll+0xe7/0x980 net/core/dev.c:6902 napi_poll net/core/dev.c:6971 [inline] net_rx_action+0xa5a/0x19b0 net/core/dev.c:7093 handle_softirqs+0x1a0/0x7c0 kernel/softirq.c:561 __do_softirq+0x14/0x1a kernel/softirq.c:595 do_softirq+0x9a/0x100 kernel/softirq.c:462 __local_bh_enable_ip+0x9f/0xb0 kernel/softirq.c:389 local_bh_enable include/linux/bottom_half.h:33 [inline] rcu_read_unlock_bh include/linux/rcupdate.h:919 [inline] __dev_queue_xmit+0x2758/0x57d0 net/core/dev.c:4493 dev_queue_xmit include/linux/netdevice.h:3168 [inline] neigh_hh_output include/net/neighbour.h:523 [inline] neigh_output include/net/neighbour.h:537 [inline] ip_finish_output2+0x187c/0x1b70 net/ipv4/ip_output.c:236 __ip_finish_output+0x287/0x810 ip_finish_output+0x4b/0x600 net/ipv4/ip_output.c:324 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x15f/0x3f0 net/ipv4/ip_output.c:434 dst_output include/net/dst.h:450 [inline] ip_local_out net/ipv4/ip_output.c:130 [inline] __ip_queue_xmit+0x1f2a/0x20d0 net/ipv4/ip_output.c:536 ip_queue_xmit+0x60/0x80 net/ipv4/ip_output.c:550 __tcp_transmit_skb+0x3cea/0x4900 net/ipv4/tcp_output.c:1468 tcp_transmit_skb net/ipv4/tcp_output.c:1486 [inline] tcp_write_xmit+0x3b90/0x9070 net/ipv4/tcp_output.c:2829 __tcp_push_pending_frames+0xc4/0x380 net/ipv4/tcp_output.c:3012 tcp_send_fin+0x9f6/0xf50 net/ipv4/tcp_output.c:3618 __tcp_close+0x140c/0x1550 net/ipv4/tcp.c:3130 __mptcp_close_ssk+0x74e/0x16f0 net/mptcp/protocol.c:2496 mptcp_close_ssk+0x26b/0x2c0 net/mptcp/protocol.c:2550 mptcp_pm_nl_rm_addr_or_subflow+0x635/0xd10 net/mptcp/pm_netlink.c:889 mptcp_pm_nl_rm_subflow_received net/mptcp/pm_netlink.c:924 [inline] mptcp_pm_flush_addrs_and_subflows net/mptcp/pm_netlink.c:1688 [inline] mptcp_nl_flush_addrs_list net/mptcp/pm_netlink.c:1709 [inline] mptcp_pm_nl_flush_addrs_doit+0xe10/0x1630 net/mptcp/pm_netlink.c:1750 genl_family_rcv_msg_doit net/netlink/genetlink.c:1115 [inline] ---truncated---
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

