CVE-2026-98371
NieznaneStreszczenie
W jądrze Linux w module xfrm/iptfs występuje błąd w obsłudze fragmentacji pakietów wewnętrznych. Gdy początek pakietu wewnętrznego zostanie podzielony między dwa pakiety zewnętrzne tak, że mniej niż 4 bajty trafią na koniec pierwszego, walidacja długości nagłówka IP jest pomijana, co prowadzi do przepełnienia bufora i paniki jądra (DoS).
Ocena ryzyka
Lokalny użytkownik bez uprawnień może wywołać panikę jądra poprzez userns+netns IPTFS SAs, a zdalny atakujący może to zrobić przeciwko bramom VPN IPTFS, gdy odszyfrowany pakiet zewnętrzny jest liniowy (np. AF_PACKET, tun/tap). Skutkuje to niedostępnością systemu (DoS).
Rekomendacja
Zaktualizuj jądro Linux do wersji zawierającej poprawkę, która wymaga, aby zadeklarowana długość pakietu wewnętrznego obejmowała co najmniej rozmiar nagłówka IP. Jeśli aktualizacja nie jest możliwa, ogranicz dostęp do interfejsów IPTFS i rozważ wyłączenie nieużywanych funkcji xfrm/iptfs.
Inne podatności w Linux kernel
Zobacz wszystkie- CVE-2026-98372Nieznane
W jądrze Linux wykryto podatność w module xfrm IP-TFS, gdzie funkcja iptfs_skb_reset_frag_walk() może odczytać pamięć poza stosem z powodu braku kontroli indeksu fragmentów. Specjalnie spreparowany pakiet AGGFRAG może wywołać odczyt poza zakresem, co prowadzi do awarii systemu lub potencjalnego wycieku informacji.
- CVE-2026-98370Nieznane
W jądrze Linux naprawiono podatność use-after-free w funkcji xfrm_state_netlink() podczas obsługi żądań ALLOCSPI. Funkcja xfrm_alloc_userspi() wywołuje alloc_compat() ponownie, ale przekazuje oryginalne żądanie skb i jego nagłówek, co dla żądań kompatybilnych powoduje interpretację 228-bajtowej struktury compat xfrm_userspi_info jako natywnego układu 232-bajtowego i odczyt czterech bajtów poza zadeklarowaną zawartością. Klon multicast żądania współdzieli skb_shared_info i może obserwować ten child, a xfrm_user_rcv_msg() zwalnia go po zakończeniu obsługi, co prowadzi do wyścigu i use-after-free.
- CVE-2026-98369Nieznane
W jądrze Linux naprawiono błąd w podsystemie xfrm, gdzie funkcja xfrm_trans_reinject() po konwersji z taskletu na workqueue działała w kontekście procesu bez blokady RCU. Powodowało to ostrzeżenia o nieprawidłowym użyciu RCU oraz potencjalne problemy z ważnością wskaźników dst i urządzeń sieciowych dla pakietów przekazywanych przez kolejkę roboczą.
- CVE-2026-98368Nieznane
W jądrze Linux wykryto podatność w implementacji ESP (IPsec), gdzie na ścieżce wyjściowej poza miejscem (out-of-place) modyfikowano tablicę fragmentów skb bez wcześniejszego obniżenia poziomu zarządzania fragmentami zerocopy (SKBFL_MANAGED_FRAG_REFS). Prowadzi to do naruszenia zasad zarządzania fragmentami, co może skutkować użyciem po zwolnieniu (use-after-free) stron zerocopy oraz wyciekiem pamięci.
- CVE-2026-98367Nieznane
W jądrze Linux naprawiono podatność w sterowniku RDMA/siw w funkcji siw_accept(). Jeśli siw_qp_modify() zakończy się niepowodzeniem, stan QP jest zwalniany przed oczyszczeniem ścieżki błędu, co pozwala współbieżnemu wywołaniu ibv_modify_qp() na przejście QP do stanu ERROR i zwolnienie struktury cep, prowadząc do use-after-free. Poprawka polega na wyczyszczeniu qp->cep i zwolnieniu referencji asocjacji pod trzymanym zamkiem zapisu.
- CVE-2026-98366Nieznane
W jądrze Linuxa w podsystemie RDMA/rxe wykryto podatność polegającą na tym, że funkcja rxe_rereg_user_mr() najpierw zmienia wskaźnik PD (protection domain), a dopiero potem waliduje flagi dostępu. Jeśli walidacja się nie powiedzie, obiekt MR pozostaje w niespójnym stanie, co prowadzi do użycia po zwolnieniu (use-after-free) pamięci PD.
- CVE-2026-98365Nieznane
W jądrze Linux w podsystemie RDMA/rxe funkcja mr_check_range() zawiera podatność na przepełnienie liczb całkowitych, co pozwala zdalnemu nieuwierzytelnionemu klientowi na ominięcie walidacji zakresu pamięci i wywołanie odczytu/zapisu poza granicami, prowadząc do awarii jądra. Poprawka przepisuje sprawdzenie w bezpiecznej formie, zwracając błąd -EINVAL dla spreparowanych żądań.
- CVE-2026-98364Nieznane
W jądrze Linux w podsystemie xfrm podczas tworzenia pakietów (bundle) brakuje trzymania referencji do net_device, co prowadzi do użycia po zwolnieniu (use-after-free) przy równoczesnym usuwaniu interfejsu. Poprawka polega na czytaniu dst->dev przez dst_dev_rcu() i utrzymywaniu sekcji krytycznej RCU do czasu przejęcia referencji przez xfrm_fill_dst().
- CVE-2026-98363Nieznane
W jądrze Linux w podsystemie firmware arm_scpi funkcja scpi_dvfs_get_info() nie sprawdza górnego limitu liczby OPP (operating performance points) odczytywanych z firmware SCP, co może prowadzić do odczytu poza tablicą i błędnego rozmiaru alokowanej tabeli OPP. Poprawka odrzuca zarówno zerową, jak i zbyt dużą liczbę OPP, zwracając -EINVAL.
- CVE-2026-98362Nieznane
W jądrze Linux w podsystemie clk scpi funkcja scpi_dvfs_recalc_rate() nie sprawdza górnego limitu indeksu DVFS zwracanego przez dvfs_get_idx(), co może prowadzić do odczytu poza tablicą i traktowania śmieci jako częstotliwości zegara. Poprawka traktuje indeksy większe lub równe liczbie OPP jako nieprawidłowe i zwraca 0.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: xfrm: iptfs: fix runt reassembly panic from short inner tot_len When the start of an inner packet is split across two outer packets such that fewer than 4 bytes land at the end of the first one, __input_process_payload() saves those bytes as a runt and skips the iplen/iphlen validation performed for in-place packets. When the continuation packet arrives, iptfs_reassem_cont() only requires the declared inner length to be >= sizeof(ra_runt) (6) before allocating the reassembly skb with that attacker-controlled length. However, __iptfs_iphlen() always returns the fixed minimum IP header size (20 for IPv4, 40 for IPv6), so for an inner IPv4 tot_len in [6, 19] the header-completion copy writes past the declared packet length, and the subsequent "ipremain -= copylen" underflows to ~4GB, leaving the payload copy length bounded only by blkoff (up to 64KB). At runtime the skb_put() tailroom check turns this into skb_over_panic(), i.e. an unprivileged kernel panic (DoS), reachable locally via userns+netns IPTFS SAs and remotely against IPTFS VPN gateways when the decrypted outer skb is linear (e.g. AF_PACKET taps, tun/tap delivery). Align the runt path with the normal path by requiring the declared inner length to cover at least the IP header size. This also subsumes the previous >= sizeof(ra_runt) check, since the minimum IP header is always larger than the runt buffer. This issue was found by the autokbug dynamic kernel fuzzer at Tencent Yunding Lab.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

