Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en kernel de Linux (CVE-2024-50100)

Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
05/11/2024
Última modificación:
12/11/2024

Descripción

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: USB: gadget: dummy-hcd: soluciona el problema de "tarea colgada" El fuzzer syzbot ha estado encontrando problemas de "tarea colgada" desde que se cambió el controlador dummy-hcd para usar temporizadores hrtimer en lugar de temporizadores normales. Resulta que los problemas son causados por una diferencia sutil entre las API timer_pending() y hrtimer_active(). El cambio reemplazó ciegamente la primera por la segunda. Sin embargo, timer_pending() devuelve True cuando el temporizador está en cola pero no cuando su devolución de llamada se está ejecutando, mientras que hrtimer_active() devuelve True cuando el hrtimer está en cola _o_ su devolución de llamada se está ejecutando. Esta diferencia ocasionalmente hizo que dummy_urb_enqueue() pensara que la rutina de devolución de llamada aún no había comenzado cuando, de hecho, estaba casi terminada. Como resultado, el hrtimer no se reinició, lo que hizo imposible que el controlador quitara de la cola más tarde el URB que acababa de ponerse en cola. Esto provocó que usb_kill_urb() se bloqueara y las cosas empeoraron a partir de ahí. Dado que los temporizadores hr no tienen una API para saber cuándo están en cola y la devolución de llamada no se está ejecutando, el controlador debe realizar un seguimiento de esto por sí mismo. Eso es lo que hace este parche, agregando un nuevo indicador "timer_pending" y configurándolo o borrándolo en los momentos apropiados.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.10 (incluyendo) 6.11.5 (excluyendo)
cpe:2.3:o:linux:linux_kernel:6.12:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.12:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.12:rc3:*:*:*:*:*:*