CVE-2026-80926
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
W jądrze Linuksa usunięto następującą lukę:
ksmbd: napraw opcję użycia po zwolnieniu w powiadomieniu o przerwie w oplocku
smb2_oplock_break_noti() odczytuje opinfo->conn bez żadnej blokady i
dereferuje go po dwóch alokacjach, które mogą spać. Kiedy
trwały uchwyt będący właścicielem oplocka jest odłączony, session_fd_check()
czyści opinfo->conn i usuwa jego odniesienie do połączenia w ci->m_lock, i
ostatnia ksmbd_conn_put() zwalnia połączenie. Przerwa wywołana przez
kolejne połączenie, które pędzi z rozbiciem, może następnie wskrzesić
uwolnione połączenie: ksmbd_conn_get() to zwykły atomic_inc, a
przerwa w kolejce, późniejsza praca powoduje wyłuskanie nieaktualnego połączenia via
ksmbd_conn_write(), funkcja użycia po zwolnieniu osiągalna przez dowolną uwierzytelnioną
klient posiadający trwały oplock wsadowy.
Zamiast brać, wprowadź i-węzeł wywołującego do ścieżki powiadomienia
nowe odniesienie na ten temat. Każdy wywołujący oplock_break() posiada już a
aktywny plik ksmbd_file (lub jawne odwołanie do ksmbd_inode_lookup_lock(),
w ścieżkach nadrzędnych przerw w dzierżawie) na i-węźle będącym właścicielem przerwy
lista oplocków celu, więc ci nie można zwolnić podczas połączenia, i jego
lock można pobrać bez usuwania referencji opinfo->o_fp, co a
jednoczesne zamknięcie może być bezpłatne. Wybierz i przypnij połączenie pod
ci->m_lock, ta sama blokada session_fd_check() i
ksmbd_reopen_durable_fd() służy do aktualizacji opinfo->conn, więc współbieżne
odłącz albo przegrywa wyścig o wolne miejsce, albo utrzymuje połączenie
żyje, dopóki nie zwolni go praca powiadamiania. Przenieś referencje
do elementu pracy i zwolnij go w przypadku niepowodzeń alokacji.
>_ Referencje
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org