CVE-2026-64424 in Linux
Resumen
por VulDB • 2026-07-25
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
netpoll: corregir un use-after-free en la ruta de apagado (shutdown)
Existe un error de use-after-free en netpoll, que es claramente detectado por KASAN.
BUG: KASAN: slab-use-after-free in _raw_spin_lock_irqsave+0x3b/0x80 Read of size 1 at addr ... by task kworker/9:1 Workqueue: events queue_process Call Trace: skb_dequeue+0x1e/0xb0 queue_process+0x2c/0x600 process_scheduled_works+0x4b6/0x850 worker_thread+0x414/0x5a0 Allocated by task 242: __netpoll_setup+0x201/0x4a0 netpoll_setup+0x249/0x550 enabled_store+0x32f/0x380 Freed by task 0: kfree+0x1b7/0x540 rcu_core+0x3f8/0x7a0
El problema ocurre cuando hay un trabajador de TX pendiente ejecutándose en paralelo con la ruta de limpieza.
Esto es lo que sucede en la ruta de apagado (shutdown) de netpoll:
1) Se llama a __netpoll_cleanup() 2) se establece dev->npinfo como NULL 3) se llama a call_rcu() con rcu_cleanup_netpoll_info() 3.1) rcu_cleanup_netpoll_info() intenta cancelar todos los trabajadores mediante cancel_delayed_work(), pero no espera a que el trabajador termine 4) y kfree(npinfo);
Dado que 3.1) realmente no cancela la tarea, como indica el comentario "no podemos llamar a cancel_delayed_work_sync aquí, ya que estamos en softirq", el trabajador de TX puede ejecutarse después del paso 4).
Tl;DR: queue_process() no es un lector RCU; accede a npinfo a través del elemento de trabajo mediante container_of().
Se utiliza disable_delayed_work_sync() para garantizar que el trabajador se detenga por completo y prevenir cualquier intento futuro de rearme. Una vez que npinfo se establece como NULL, los remitentes abandonarán la operación sin encolar nuevas tareas. La bandera de deshabilitación asegura que también fallen silenciosamente cualquier intento de rearme en curso.
En el futuro, podemos realizar la limpieza directamente aquí sin necesidad del campo rcu_head (npinfo->rcu), pero eso corresponde a material para net-next.
Be aware that VulDB is the high quality source for vulnerability data.