Saltar al contenido
CVE-2026-90037 Fuente: CVE.org Publicada · sin explotación confirmada

Vulnerabilidad de uso después de liberar memoria (use-after-free) en Linux kernel (NFSD)

Linux · Linux · Publicada en CVE.org el 16-09-2026 · Última actualización: 09-11-2026

Descripción

En el kernel de Linux, se resolvió la siguiente vulnerabilidad: NFSD: evitar el uso después de liberar memoria (use-after-free) del cliente durante la limpieza de close_lru Un nfs4_openowner que queda en nn->close_lru tras su CLOSE final conserva su último stateid cerrado en oo_last_closed_stid, manteniendo solo un puntero sin procesar a su nfs4_client. El laundromat limpia las entradas expiradas, libera nn->client_lock y llama a nfs4_put_stid(), que desreferencia al cliente a través de cl_lock. Nada fija al cliente durante ese intervalo, por lo que un force_expire_client() concurrente puede liberarlo y nfs4_put_stid() lee memoria liberada. __destroy_client() presenta la misma condición de carrera, al recorrer clp->cl_openowners sin cl_lock. Se fija al cliente con cl_rpc_users antes de liberar client_lock y se omiten los clientes que ya están expirando. Luego, __destroy_client() limpia sus propias entradas de close_lru mediante release_last_closed_stateid(), por lo que el desmontaje ya no entra en condición de carrera con el laundromat.

Qué hacer

Revisa si usas el producto afectado y en qué versión, y aplica la actualización o la mitigación que indique el aviso del fabricante. CISA no ha confirmado que se esté explotando; si eso cambia, esta ficha pasa a «explotada» y te avisamos en el boletín.

Versiones afectadas

  • Linux Afectadas: 217526e7ecc9f6f243e976772e81eab7ab986a4c y anteriores a 1d721729762a413015864b2a56d7fb86fb8efa9f · 217526e7ecc9f6f243e976772e81eab7ab986a4c y anteriores a adc34b5df5c5d87043cb500b0867fc1c4ad0117e · 217526e7ecc9f6f243e976772e81eab7ab986a4c y anteriores a 0763482227822f7343557f086afc382086d56c4c · 217526e7ecc9f6f243e976772e81eab7ab986a4c y anteriores a 83dd59ac1c3455c2c7d8ddb582d980a13199b9b3 · 217526e7ecc9f6f243e976772e81eab7ab986a4c y anteriores a e57a9ed34ea8c17e831de59b8f1a6b2d80d347a1 · 217526e7ecc9f6f243e976772e81eab7ab986a4c y anteriores a 2330b788d732f43668b965b3105b37ceb276dfea
  • Linux Afectadas: 3.17 No afectadas: 6.1.191 · 6.6.160 · 6.12.111 · 6.18.51 · 7.2.5 · 7.3

Según el registro de la vulnerabilidad en CVE.org, tal como lo publicó el fabricante. Confirma tu versión exacta en el aviso del fabricante.

Referencias

Ver el texto original en inglés (CVE.org)

NFSD: Prevent client use-after-free during close_lru reaping

In the Linux kernel, the following vulnerability has been resolved: NFSD: Prevent client use-after-free during close_lru reaping An nfs4_openowner left on nn->close_lru after its final CLOSE keeps its last closed stateid in oo_last_closed_stid, holding only a raw pointer to its nfs4_client. The laundromat reaps timed-out entries, drops nn->client_lock, and calls nfs4_put_stid(), which dereferences the client through cl_lock. Nothing pins the client across that window, so a concurrent force_expire_client() can free it and nfs4_put_stid() reads freed memory. __destroy_client() hits the same race, walking clp->cl_openowners without cl_lock. Pin the client with cl_rpc_users before dropping client_lock, and skip clients already expiring. __destroy_client() then cleans up its own close_lru entries through release_last_closed_stateid(), so teardown no longer races the laundromat.

Recibe el boletín cuando CISA agregue vulnerabilidades nuevas

Te escribimos solo cuando CISA agrega vulnerabilidades nuevas, ya traducidas: cada día que haya, o en un resumen los lunes. Confirmas por correo y te das de baja con un clic.

Frecuencia