CVE-2026-64206 in Linux
Resumen
por VulDB • 2026-07-20
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
Bluetooth: L2CAP: cancelar pending_rx_work antes de adquirir conn->lock
l2cap_conn_del() adquiere conn->lock y luego llama a cancel_work_sync() para pending_rx_work. process_pending_rx() adquiere el mismo mutex, por lo que el proceso de desmantelamiento (teardown) puede bloquearse en死 (deadlock) contra el trabajador (worker) que está vaciando.
Este problema fue encontrado mediante nuestra herramienta de análisis estático y luego revisado manualmente frente al árbol actual del código fuente.
El PoC fundamentado mantuvo la ruta de envío l2cap_conn_ready() -> queue_work(..., &conn->pending_rx_work), la ruta de desmantelamiento l2cap_conn_del() -> cancel_work_sync(&conn->pending_rx_work) y el borde del trabajador process_pending_rx() -> mutex_lock(&conn->lock). Lockdep
ADVERTENCIA: posible dependencia circular en la detección de bloqueo process_pending_rx+0x21/0x2a [vuln_msv]
l2cap_conn_del.constprop.0+0x3f/0x4e [vuln_msv]
*** BLOQUEO MÚTUO (DEADLOCK) ***
Cancelar pending_rx_work antes de adquirir conn->lock, coincidiendo con el ordenamiento existente lock-before-drain utilizado para los dos trabajos diferidos en la misma ruta de desmantelamiento. La cola pending_rx sigue siendo purgada después de que se ha cancelado el trabajo y se ha adquirido conn->lock.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.