CVE-2026-89636
NieznaneStreszczenie
W kliencie SMB jądra Linux funkcja free_tgts() zwalnia wszystkie struktury z ce->tlist, ale pozostawia ce->tgthint wskazujący na jedną ze zwolnionych struktur cache_dfs_tgt. Jeśli wskaźnik nie zostanie zresetowany przed ponownym użyciem, dochodzi do use-after-free.
Ocena ryzyka
Możliwe use-after-free w jądrze podczas pracy z rozproszonym systemem plików SMB, co może prowadzić do niestabilności systemu lub uszkodzenia pamięci.
Rekomendacja
Zaktualizować jądro Linux do wersji zawierającej poprawkę ustawiającą ce->tgthint na NULL w free_tgts() po zwolnieniu elementów.
Inne podatności w Linux kernel (SMB client)
Zobacz wszystkie- CVE-2026-89637Nieznane
W kliencie SMB jądra Linux funkcja cifs_check_trans2() przy błędnej odpowiedzi wtórnej T2 (nieprawidłowy nagłówek SMB lub odrzucenie PDU przez check2ndT2()) powoduje, że handle_mid() nadpisuje mid->resp_buf nowym buforem, wyciekając bufor pierwotny i pozostawiając wiszące wskaźniki server->smallbuf/bigbuf. Prowadzi to do use-after-free, gdy wątek demultipleksera ponownie użyje zwolnionego bufora.
- CVE-2026-89634Nieznane
W kliencie SMB jądra Linux w funkcji symlink_data() makro ALIGN() może przepełnić się dla wartości ErrorDataLength bliskiej UINT32_MAX (np. 0xFFFFFFF9), zawijając się do 0. Powoduje to, że kontrola granic przechodzi, a pętla przesuwa się o zero bajtów, pozostawiając wskaźnik 'p' wskazujący na nieaktualne dane.
- CVE-2026-89633Nieznane
W kliencie SMB jądra Linux funkcja coalesce_t2() oblicza wskaźniki danych bezpośrednio z pól DataOffset dostarczonych przez serwer, bez walidacji względem granic bufora. Mały DataOffset może przesunąć wskaźnik przed obszar danych i nadpisać pola nagłówka, a duży może wyjść poza bufor, powodując odczyt lub zapis poza zakresem sterty.
- CVE-2026-89632Nieznane
W kliencie SMB jądra Linux funkcja reparse_buf_ptr() odczytuje pole ReparseDataLength z bufora przed sprawdzeniem, czy odebrane dane obejmują pełny nagłówek struktury. Gdy serwer zwróci OutputCount < 6, odczyt pod offsetem 4-5 wykracza poza koniec odebranych danych.
- CVE-2026-89631Nieznane
W kliencie SMB jądra Linux funkcja CIFSTCon() ogranicza strnlen() przez ByteCount minus dwa, co dla ByteCount 0 lub 1 daje wartość ujemną jako int i konwertuje się na ogromny size_t. Późniejsze odejmowanie zawija __u16 bytes_left, co pozwala cifs_strndup_from_utf16() odczytać do 65535 bajtów z obiektu o rozmiarze ~16 KB, ujawniając dane przez /proc/fs/cifs/DebugData.
- CVE-2026-46139Średnie
W jądrze systemu Linux zidentyfikowano podatność w kliencie SMB, polegającą na nieprawidłowym inicjowaniu bufora deskryptora zabezpieczeń. Zmiana w strukturze danych spowodowała, że pole zarezerwowane pozostawało niezainicjowane, co prowadziło do błędów przy próbie użycia chmod.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: smb: client: clear ce->tgthint in free_tgts() When free_tgts() frees all structures in ce->tlist, ce->tgthint is left pointing to one of the freed cache_dfs_tgt structures. If ce->tgthint is not reset before it is used later, it results in a use-after-free. Set ce->tgthint to NULL in free_tgts() after the elements are freed to reflect that no elements remain.

