Vulnerabilidad en kernel de Linux (CVE-2024-56586)
Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
27/12/2024
Última modificación:
03/11/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: f2fs: se corrige f2fs_bug_on al desinstalar el sistema de archivos, se llama f2fs_evict_inode. La creación de archivos grandes durante el punto de control se desactiva hasta que se queda sin espacio y luego se elimina, luego se vuelve a montar para habilitar el punto de control nuevamente y luego se desmonta el sistema de archivos, lo que activa f2fs_bug_on como se muestra a continuación: ------------[ cortar aquí ]------------ ¡ERROR del kernel en fs/f2fs/inode.c:896! CPU: 2 UID: 0 PID: 1286 Comm: umount No contaminado 6.11.0-rc7-dirty #360 Oops: código de operación no válido: 0000 [#1] PREEMPT SMP NOPTI RIP: 0010:f2fs_evict_inode+0x58c/0x610 Rastreo de llamadas: __die_body+0x15/0x60 die+0x33/0x50 do_trap+0x10a/0x120 f2fs_evict_inode+0x58c/0x610 do_error_trap+0x60/0x80 f2fs_evict_inode+0x58c/0x610 exc_invalid_op+0x53/0x60 f2fs_evict_inode+0x58c/0x610 La causa raíz es: crear archivos grandes durante el período del punto de control de deshabilitación da como resultado que no haya suficientes segmentos libres, por lo que al volver a escribir el inodo raíz, fallará en f2fs_enable_checkpoint. Al desmontar el sistema de archivos después de habilitar el punto de control, el inodo raíz está sucio en la función f2fs_evict_inode, lo que activa BUG_ON. Los pasos para reproducir son los siguientes: dd if=/dev/zero of=f2fs.img bs=1M count=55 mount f2fs.img f2fs_dir -o checkpoint=disable:10% dd if=/dev/zero of=big bs=1M count=50 sync rm big mount -o remount,checkpoint=enable f2fs_dir umount f2fs_dir Vamos a volver a ensuciar el inodo cuando no haya segmentos libres mientras se deshabilita el punto de control.
Impacto
Puntuación base 3.x
5.50
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 3.8 (incluyendo) | 5.4.287 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (incluyendo) | 5.10.231 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (incluyendo) | 5.15.174 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (incluyendo) | 6.1.120 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (incluyendo) | 6.6.66 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (incluyendo) | 6.12.5 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/9669b28f81e0ec6305af7773846fbe2cef1e7d61
- https://git.kernel.org/stable/c/9e28513fd2858911dcf47b84160a8824587536b6
- https://git.kernel.org/stable/c/a365de2fbfbe1e6740bfb75ab5c3245cf7bbe4d7
- https://git.kernel.org/stable/c/ac8aaf78bd039fa1be0acaa8e84a56499f79d721
- https://git.kernel.org/stable/c/d5c367ef8287fb4d235c46a2f8c8d68715f3a0ca
- https://git.kernel.org/stable/c/dff561e4060d28edc9a2960d4a87f3c945a96aa3
- https://git.kernel.org/stable/c/ef517d2d21c3d8e2ad35b2bb728bd1c90a31e617
- https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html



