Vulnerabilidad en kernel de Linux (CVE-2025-38048)
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
18/06/2025
Última modificación:
18/06/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: virtio_ring: corrige la ejecución de datos etiquetando event_triggered como racy para KCSAN syzbot informa una ejecución de datos al acceder a event_triggered, aquí está la pila simplificada cuando ocurrió el problema: ===================================================================== ERROR: KCSAN: ejecución de datos en virtqueue_disable_cb / virtqueue_enable_cb_delayed escribe en 0xffff8881025bc452 de 1 byte por la tarea 3288 en la CPU 0: virtqueue_enable_cb_delayed+0x42/0x3c0 drivers/virtio/virtio_ring.c:2653 start_xmit+0x230/0x1310 drivers/net/virtio_net.c:3264 __netdev_start_xmit include/linux/netdevice.h:5151 [en línea] netdev_start_xmit include/linux/netdevice.h:5160 [en línea] xmit_one net/core/dev.c:3800 [en línea] lectura a 0xffff8881025bc452 de 1 byte por interrupción en la CPU 1: virtqueue_disable_cb_split drivers/virtio/virtio_ring.c:880 [en línea] virtqueue_disable_cb+0x92/0x180 drivers/virtio/virtio_ring.c:2566 skb_xmit_done+0x5f/0x140 drivers/net/virtio_net.c:777 vring_interrupt+0x161/0x190 drivers/virtio/virtio_ring.c:2715 __handle_irq_event_percpu+0x95/0x490 kernel/irq/handle.c:158 handle_irq_event_percpu kernel/irq/handle.c:193 [inline] valor cambiado: 0x01 -> 0x00 ===================================================================== Cuando ocurre la ejecución de datos, la función virtqueue_enable_cb_delayed() establece event_triggered en falso, y virtqueue_disable_cb_split/packed() lo lee como falso debido a la condición de ejecución. Dado que event_triggered es una indicación poco fiable utilizada para la optimización, esto solo debería provocar que el controlador sugiera temporalmente que el dispositivo no envíe una notificación de interrupción cuando se utilice el índice de evento. Solucione este problema de ejecución de datos informado por KCSAN etiquetando explícitamente el acceso como data_racy.
Impacto
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/02d2d6caee3abc9335cfca35f8eb4492173ae6f2
- https://git.kernel.org/stable/c/2e2f925fe737576df2373931c95e1a2b66efdfef
- https://git.kernel.org/stable/c/4ed8f0e808b3fcc71c5b8be7902d8738ed595b17
- https://git.kernel.org/stable/c/b49b5132e4c7307599492aee1cdc6d89f7f2a7da
- https://git.kernel.org/stable/c/b6d6419548286b2b9d2b90df824d3cab797f6ae8
- https://git.kernel.org/stable/c/b730cb109633c455ce8a7cd6934986c6a16d88d8