CVE-2026-53399 in Linuxinformation

Résumé

par VulDB • 19/07/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

nfsd : libération du stid de layout en cas d'échec de setlease

nfs4_alloc_stid() publie le nouveau stid dans cl->cl_stateids via idr_alloc_cyclic() sous cl_lock avant de retourner à nfsd4_alloc_layout_stateid(). Lorsque nfsd4_layout_setlease() échoue ensuite, le chemin d'erreur libère directement l'état du layout avec kmem_cache_free() sans jamais appeler idr_remove(), laissant la case IDR pointer vers une mémoire slab déjà libérée. Tout parcoursur IDR ultérieur (states_show, teardown client) déréférence ce pointeur dangling.

Le nettoyage correct pour un stid publié via IDR est nfs4_put_stid(), qui supprime la case IDR sous cl_lock, dispatche sc_free (nfsd4_free_layout_stateid) pour libérer ls->ls_file via nfsd4_close_layout(), et décrémente la référence nfs4_file en fin de fonction.

Un second problème bloque ce changement : nfsd4_free_layout_stateid() inspecte inconditionnellement ls->ls_fence_work via delayed_work_pending() sous ls_lock, mais INIT_DELAYED_WORK(&ls->ls_fence_work, ...) s'exécute actuellement uniquement après l'appel à setlease. Sur le chemin d'échec de setlease, le destructeur toucherait un delayed_work non initialisé.

nfsd4_alloc_layout_stateid() nfs4_alloc_stid() /* idr_alloc_cyclic sous cl_lock */ nfsd4_layout_setlease() /* échoue */ nfs4_put_stid() nfsd4_free_layout_stateid() delayed_work_pending(&ls->ls_fence_work) /* nécessite INIT */ nfsd4_close_layout() /* nfsd_file_put(ls->ls_file) */ put_nfs4_file()

Correction : déplacez l'initialisation de ls_fenced / ls_fence_delay / INIT_DELAYED_WORK au-dessus de l'appel à nfsd4_layout_setlease(), et remplacez le nettoyage manuel par nfsd_file_put + put_nfs4_file + kmem_cache_free par un unique appel à nfs4_put_stid(stp).

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Responsable

Linux

Réserver

09/06/2026

Divulgation

19/07/2026

Modérer

accepté

Entrée

VDB-380130

CPE

prêt

EPSS

0.00000

KEV

non

Activités

faible

Sources

Interested in the pricing of exploits?

See the underground prices here!