Odebrany

CVE-2026-90236

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

W jądrze Linuksa usunięto następującą lukę:

NFSD: Zwolnij odniesienie do eksportu podczas uzyskiwania otwartych identyfikatorów stanów

nfs4_put_stid() zwalnia śledzony svc_export
nfs4_stid.sc_export, ale free_ol_stateid_reaplist() zwalnia otwieranie i
zablokuj stateidy, wywołując bezpośrednio ->sc_free(), pomijając tę ścieżkę.
Otwarty identyfikator stanu przyjmuje odwołanie sc_export w nfs4_open() i a
lock stateid ma swój własny w init_lock_stateid(); oba dosięgają
free_ol_stateid_reaplist() poprzez ich normalne porzucenie, otwarcie
stateid poprzez release_open_stateid() i stateid blokady poprzez
nfsd4_release_lockowner(), każdy poprzez put_ol_stateid_locked().
Dlatego odniesienie nigdy nie jest usuwane, przypinając eksport i
blokowanie odmontowania na czas życia stateid.

W ten sposób zwolnij sc_export w free_ol_stateid_reaplist().
nfs4_put_stid() tak. ->sc_free() działa raz na każdy stan, a a
stateid osiąga free_ol_stateid_reaplist() lub nfs4_put_stid(), ale
nigdy oba, więc odniesienie jest usuwane dokładnie raz. Unieważnione
stateids osiągają tę ścieżkę z już wyczyszczonym sc_export
drop_stid_export(), więc są one pomijane, a nie podwójnie zwalniane.

Funkcja nfs4_put_stid() sama odczytała sc_export przed pobraniem cl_lock.
drop_stid_export() czyści to pole i zwalnia odwołanie
pod cl_lock, więc równoczesne odwołanie może spowodować utratę eksportu
okno między odczytem a ostatecznym umieszczeniem, uwalniając to samo
odwołanie dwa razy. Przeczytaj sc_export, gdy cl_lock jest trzymany, więc dwa
ścieżki serializują, a odwołanie jest wydawane dokładnie raz.

>_ 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