Vulnerabilidad en kernel de Linux (CVE-2024-50015)
Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
21/10/2024
Última modificación:
28/10/2024
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: ext4: dax: se corrige el desbordamiento de extensiones más allá del tamaño del inodo al escribir parcialmente. Dax_iomap_rw() hace dos cosas en cada iteración: asigna bloques escritos y copia datos de usuario a bloques. Si el usuario finaliza el proceso (consulte el manejo de señales en dax_iomap_iter()), los datos copiados se devolverán y se agregarán al tamaño del inodo, lo que significa que la longitud de las extensiones escritas puede exceder el tamaño del inodo, entonces fsck fallará. Se proporciona un ejemplo como: dd if=/dev/urandom of=file bs=4M count=1 dax_iomap_rw iomap_iter // ronda 1 ext4_iomap_begin ext4_iomap_alloc // asignar 0~2M de extensiones (bandera escrita) dax_iomap_iter // copiar 2M de datos iomap_iter // ronda 2 iomap_iter_advance iter->pos += iter->processed // iter->pos = 2M ext4_iomap_begin ext4_iomap_alloc // asignar 2~4M de extensiones (bandera escrita) dax_iomap_iter fatal_signal_pending hecho = iter->pos - iocb->ki_pos // hecho = 2M ext4_handle_inode_extension ext4_update_inode_size // tamaño de inodo = 2M fsck informa: Inodo 13, i_size es 2097152, debería ser 4194304. ¿Solución? Solucione el problema truncando las extensiones si la longitud escrita es menor a la esperada.
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:*:*:*:*:*:*:*:* | 4.10 (incluyendo) | 5.10.227 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (incluyendo) | 5.15.168 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (incluyendo) | 6.1.113 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (incluyendo) | 6.6.55 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (incluyendo) | 6.10.14 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.11 (incluyendo) | 6.11.3 (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/5efccdee4a7d507a483f20f880b809cc4eaef14d
- https://git.kernel.org/stable/c/8c30a9a8610c314554997f86370140746aa35661
- https://git.kernel.org/stable/c/a9f331f51515bdb3ebc8d0963131af367ef468f6
- https://git.kernel.org/stable/c/abfaa876b948baaea4d14f21a1963789845c8b4c
- https://git.kernel.org/stable/c/dda898d7ffe85931f9cca6d702a51f33717c501e
- https://git.kernel.org/stable/c/ec0dd451e236c46e4858d53e9e82bae7797a7af5
- https://git.kernel.org/stable/c/f8a7c342326f6ad1dfdb30a18dd013c70f5e9669