Bluetooth: SCO: Fix use-after-free in sco_recv_frame() due to missing sock_hold
Platform
linux
Component
linux
Fixed in
e76e8f0581ef555eacc11dbb095e602fb30a5361
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: SCO: Fix use-after-free in sco_recv_frame() due to missing sock_hold sco_recv_frame() reads conn->sk under sco_conn_lock() but immediately releases the lock without holding a reference to the socket. A concurrent close() can free the socket between the lock release and the subsequent sk->sk_state access, resulting in a use-after-free. Other functions in the same file (sco_sock_timeout(), sco_conn_del()) correctly use sco_sock_hold() to safely hold a reference under the lock. Fix by using sco_sock_hold() to take a reference before releasing the lock, and adding sock_put() on all exit paths.
How to fix
Actualice el kernel de Linux a una versión corregida (6.6.*, 6.12.*, 6.18.* o superior) para mitigar el riesgo de uso de memoria después de liberarla en el módulo Bluetooth SCO. Asegúrese de seguir las directrices de actualización de su distribución de Linux para evitar problemas de compatibilidad.
Monitor your dependencies automatically
Get notified when new vulnerabilities affect your projects. Free forever.
Start free