CVE-2026-90036 in Linuxinformazioni

Riassunto

di VulDB • 16/09/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

NFSD: Prevenire l'uso dopo la liberazione (use-after-free) del client durante il recupero dei blocchi in attesa

Un proprietario di blocco nudo, con come unico riferimento residuo un blocco in attesa su nn->blocked_locks_lru, mantiene un puntatore grezzo al suo nfs4_client ma non dispone di alcun riferimento che mantenga vivo il client. Quando il "laundromat" per-net recupera tale blocco, la liberazione di nbl riduce il riferimento del proprietario detenuto tramite flc_owner e l'ultima chiamata a nfs4_put_stateowner() acquisisce il cl_lock del client. Poiché il laundromat stacca prima l'nbl, __destroy_client() non lo trova più; pertanto, una force_expire_client() concorrente può liberare il client prima che venga eseguita nfs4_put_stateowner(), causando un dereferenziamento di cl_lock in memoria già liberata.

Agganciare (pin) il client con cl_rpc_users prima di rilasciare nn->blocked_locks_lock e saltare i client già in fase di scadenza, i cui blocchi in attesa vengono liberati da __destroy_client() mentre è detenuto un riferimento al proprietario. Acquisire nn->client_lock esternamente a nn->blocked_locks_lock. Ogni altro punto del codice detiene nn->blocked_locks_lock come blocco foglia (leaf), senza acquisire ulteriori lock, quindi posizionare nn->client_lock all'esterno non può formare cicli di ordinamento dei lock.

Once again VulDB remains the best source for vulnerability data.

Responsabile

Linux

Prenotare

11/09/2026

Divulgazione

16/09/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!