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

Vulnerabilidad de escritura fuera de límites en Linux kernel (nfsd)

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

Descripción

En el Linux kernel se resolvió la siguiente vulnerabilidad: nfsd: corrección del cálculo de longitud XDR en nfsd4_ff_encode_layoutget El cálculo del tamaño del búfer XDR en nfsd4_ff_encode_layoutget() presenta varios errores que pueden provocar una escritura fuera de límites o la fuga de memoria del kernel no inicializada hacia el cliente: - fh_len no considera el relleno XDR de los datos del file handle - las longitudes de uid y gid usan "8 + len", pero xdr_encode_opaque() en realidad escribe "4 + xdr_align_size(len)" bytes - ds_len omite los campos flags y stats_collect_hint (8 bytes), mientras que la constante de encabezado de len sobreestima en 8 bytes; estos errores se compensan parcialmente, pero dejan una diferencia neta El peor caso ocurre con cadenas cortas (por ejemplo, uid=0, gid=0 con un file handle de tamaño impar), en el que la función escribe hasta 5 bytes más allá del búfer XDR reservado. Por el contrario, cuando las longitudes de las cadenas quedan alineadas a 4 bytes, la reserva es demasiado grande y se envía al cliente contenido obsoleto del búfer. Se corrige desglosando explícitamente cada campo codificado en el cálculo de ds_len, usando xdr_align_size() para todos los campos opacos de longitud variable y corrigiendo las constantes de encabezado.

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: 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a 3a7fd224df0fbb42167eb1b77be45d72fe0b1098 · 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a 29e4478e2ed5a227e8f0c33cacb91bf227cedd47 · 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a 65a72b721943618eeb3a41c8b36e915591f3f83f · 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a bee826c00ac900473f91306f1f3e5a5a81fd4a74 · 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a e7d9d23ecd9172f05b09bb678ff22db8e361c428 · 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a 0380129b1373c437eb35401a174671c8888f4b80 · 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a c81cef6a805dec266c10fc4f83c93d6fcf1a2b43 · 9b9960a0ca4773e21c4b153ed355583946346b25 y anteriores a f9868174af49d207fbaf0c5e055d088a983684af
  • Linux Afectadas: 4.8 No afectadas: 5.10.270 · 5.15.221 · 6.1.188 · 6.6.157 · 6.12.109 · 6.18.50

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: fix XDR length calculation in nfsd4_ff_encode_layoutget

In the Linux kernel, the following vulnerability has been resolved: nfsd: fix XDR length calculation in nfsd4_ff_encode_layoutget The XDR buffer size calculation in nfsd4_ff_encode_layoutget() has multiple errors that can result in either an out-of-bounds write or leaking uninitialized kernel memory to the client: - fh_len doesn't account for XDR padding on the file handle data - uid and gid lengths use "8 + len" but xdr_encode_opaque() actually writes "4 + xdr_align_size(len)" bytes - ds_len omits the flags and stats_collect_hint fields (8 bytes), while len's header constant overestimates by 8 bytes -- these partially cancel but leave a net mismatch The worst case occurs with short strings (e.g. uid=0, gid=0 with an odd-sized file handle), where the function writes up to 5 bytes past the reserved XDR buffer. Conversely, when string lengths happen to be 4-byte aligned, the reservation is too large and stale buffer content is sent to the client. Fix this by breaking out every encoded field explicitly in the ds_len calculation, using xdr_align_size() for all variable-length opaque fields, and correcting the header constants.

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