Vulnerabilidad en Linux (CVE-2026-23235)
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
04/03/2026
Última modificación:
04/03/2026
Descripción
En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:<br />
<br />
f2fs: corrige el acceso fuera de límites en la lectura/escritura de atributos sysfs<br />
<br />
Algunos atributos sysfs de f2fs sufren de acceso a memoria fuera de límites y manejo incorrecto de valores enteros cuyo tamaño no es de 4 bytes.<br />
<br />
Por ejemplo:<br />
vm:~# echo 65537 &gt; /sys/fs/f2fs/vde/carve_out<br />
vm:~# cat /sys/fs/f2fs/vde/carve_out<br />
65537<br />
vm:~# echo 4294967297 &gt; /sys/fs/f2fs/vde/atgc_age_threshold<br />
vm:~# cat /sys/fs/f2fs/vde/atgc_age_threshold<br />
1<br />
<br />
carve_out se mapea a {struct f2fs_sb_info}-&gt;carve_out, que es un entero de 8 bits. Sin embargo, la interfaz sysfs permite establecerlo a un valor mayor que 255, lo que resulta en una actualización fuera de rango.<br />
<br />
atgc_age_threshold se mapea a {struct atgc_management}-&gt;age_threshold, que es un entero de 64 bits, pero su interfaz sysfs no puede establecer correctamente valores mayores que UINT_MAX.<br />
<br />
Las causas raíz son:<br />
1. __sbi_store() trata todos los valores predeterminados como unsigned int, lo que impide actualizar enteros mayores de 4 bytes y causa escrituras fuera de límites para enteros menores de 4 bytes.<br />
<br />
2. f2fs_sbi_show() también asume que todos los valores predeterminados son unsigned int, lo que lleva a lecturas fuera de límites y acceso incorrecto a enteros mayores de 4 bytes.<br />
<br />
Este parche introduce {struct f2fs_attr}-&gt;size para registrar el tamaño real del entero asociado con cada atributo sysfs. Con esta información, las operaciones de lectura y escritura de sysfs pueden acceder y actualizar valores correctamente según su tamaño de datos real, evitando la corrupción de memoria y la truncación.
Impacto
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/3a905e183c047577b154f08a78ac3039e9454703
- https://git.kernel.org/stable/c/438a405fbad6882df0e34b3e1a16839a71f04240
- https://git.kernel.org/stable/c/4ef30b9f1641c9e877792df6b049f1cf507d002d
- https://git.kernel.org/stable/c/6a6c07a9b49e43f0df42d7118fc76aa555c73d98
- https://git.kernel.org/stable/c/98ea0039dbfdd00e5cc1b9a8afa40434476c0955
- https://git.kernel.org/stable/c/d4a594dd952df123cbdcdee9b9640d9d55e4a954
- https://git.kernel.org/stable/c/e85a99db9ab85dfc30d93b0ca0e9156f3127f55a
- https://git.kernel.org/stable/c/eebd72cff518ac87e660aefb8a41224bd88c32ce



