CVE-2026-89702
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 6 - wyżej niż 6% wszystkich znanych CVE
Streszczenie
W jądrze Linux naprawiono podatność w podsystemie nfsd dotyczącą punktów śledzenia nfsd_fh_verify i nfsd_fh_verify_err. Slot adresu serwera w buforze trace był rozmiarowany według xpt_remotelen, ale wypełniany danymi o długości xpt_locallen, co przy xpt_locallen większym niż xpt_remotelen powodowało zapis poza zarezerwowanym miejscem w buforze pierścieniowym. Problem jest osiągalny dla żądań NFSv2/v3 przez UDP, gdzie xpt_remotelen pozostaje zerowe przez cały czas życia transportu.
Ocena ryzyka
Zapis poza końcem bufora może prowadzić do uszkodzenia pamięci jądra i potencjalnego zawieszenia lub kompromitacji systemu. W odwrotnym przypadku (xpt_locallen mniejsze niż xpt_remotelen) niezapisany ogon slotu ujawnia odbiorcom trace pozostałości wcześniejszych danych z bufora pierścieniowego, co stanowi wyciek informacji.
Rekomendacja
Zaktualizuj jądro Linux do wersji zawierającej poprawkę rozmiarującą slot serwera według xpt_locallen. Do czasu wdrożenia aktualizacji rozważ ograniczenie dostępu do interfejsów trace lub wyłączenie punktów śledzenia nfsd_fh_verify i nfsd_fh_verify_err na systemach z NFS przez UDP.
Inne podatności w Linux kernel
Zobacz wszystkie- CVE-2026-80923Nieznane
W jądrze Linuxa w sterowniku xhci: dbgtty, jeśli tty_register_driver() zakończy się niepowodzeniem, zwalnia referencję, ale nie ustawia globalnego wskaźnika dbc_tty_driver na NULL, co powoduje ponowne wywołanie unregister podczas wyjścia z modułu. Prowadzi to do użycia po zwolnieniu (use-after-free).
- CVE-2026-80922Nieznane
W jądrze Linuxa w module crypto: qcom-rng, generator liczb losowych nie zezwala na wygenerowanie zera jako wyniku, co czyni jego wyjście odróżnialnym od prawdziwie losowego. Zero jest poprawną liczbą losową i powinno być dozwolone.
- CVE-2026-80920Nieznane
W jądrze Linuxa w io_uring, sygnalizacja eventfd jest wykonywana inline, gdy dodawany jest pierwszy wpis do listy pracy, co może prowadzić do problemów, gdy dodanie następuje z kontekstu wakeup handlera. Poprawka dodaje flagę IOU_F_TWQ_IN_WAKE, aby wymusić odroczenie sygnalizacji przez call_rcu_hurry() zamiast sygnalizacji inline.
- 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-80918Nieznane
W jądrze Linuxa w HID: core, występuje pomyłka typu liczby i wskaźnika dla długich elementów. Gdy fetch_item() jest wywoływany przez hid_scan_report() na elemencie z HID_ITEM_TAG_LONG, przechowuje wskaźnik do danych w item->data.longdata zamiast wartości. Funkcje item_udata() i item_sdata() błędnie zakładają format krótki, co prowadzi do ujawnienia dolnej części wskaźnika jądra jako liczby w dmesg.
- CVE-2026-80917Nieznane
W jądrze Linux wykryto podatność prowadzącą do wyłuskania wskaźnika NULL w sterowniku PCI host-generic na 32-bitowych systemach używających trybu CAM. Podczas skanowania magistrali PCI pierwszy odczyt konfiguracji używa niezainicjalizowanego mapowania, co powoduje awarię systemu (kernel panic). Problem dotyczy braku wywołań zwrotnych add_bus/remove_bus w operacjach CAM, które są wymagane do poprawnego mapowania przestrzeni konfiguracyjnej.
- CVE-2026-80916Nieznane
W jądrze Linux wykryto podatność w mechanizmie KCOV, powodującą uszkodzenie danych i wyścigi na systemach z włączonym PREEMPT_RT. Problem wynika z przechowywania tymczasowych danych stanu KCOV w obszarze per-CPU, co przy zagnieżdżonym przełączaniu kontekstu przez softirq prowadzi do nadpisania stanu. Dodatkowo, w pewnych warunkach inicjalizacji może dojść do awarii jądra lub wycieku pamięci.
- 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.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: nfsd: size fh_verify server sockaddr slot by xpt_locallen The nfsd_fh_verify and nfsd_fh_verify_err tracepoints declare the server sockaddr slot sized by xpt_remotelen but fill it from xpt_local using xpt_locallen: TP_STRUCT__entry( ... __sockaddr(server, rqstp->rq_xprt->xpt_remotelen) ... ) TP_fast_assign( ... __assign_sockaddr(server, &rqstp->rq_xprt->xpt_local, rqstp->rq_xprt->xpt_locallen); ... ) When xpt_locallen exceeds xpt_remotelen, __assign_sockaddr's memcpy writes past the reserved ring-buffer slot. In the reverse direction (xpt_locallen < xpt_remotelen) the slot is oversized and the unwritten tail leaks prior ring-buffer contents to trace consumers. The write-past-end case is reachable on NFS/UDP. svc_xprt_set_remote() is only called from svc_tcp_accept() (net/sunrpc/svcsock.c) and from the RDMA connect path; svc_create_socket() for UDP calls only svc_xprt_set_local(), so xpt_remotelen stays 0 for the xprt's lifetime. Every fh_verify trace for an NFSv2/v3-over-UDP request then copies 16 or 28 bytes from xpt_local into a zero-byte slot. The other NFSD tracepoints that record the server address (NFSD_TRACE_PROC_CALL_FIELDS, NFSD_TRACE_PROC_RES_FIELDS, SVC_RQST_ENDPOINT_FIELDS) already size the server slot by xpt_locallen; nfsd_fh_verify and nfsd_fh_verify_err were the only exceptions. Fix by sizing the server slot with xpt_locallen so the declared slot matches the copy length. The client slot and its assignment already agree on xpt_remotelen and are left untouched.

