CVE-2024-53186 in Linux
Resumen
por VulDB • 2026-05-26
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
ksmbd: corrección de un use-after-free en el manejo de solicitudes SMB
Existe una condición de carrera entre el manejo de solicitudes SMB en `ksmbd_conn_handler_loop()` y la liberación de `ksmbd_conn` en el controlador del workqueue `handle_ksmbd_work()`. Esto provoca un UAF. - KASAN: slab-use-after-free Read en handle_ksmbd_work - KASAN: slab-use-after-free en rtlock_slowlock_locked
Esta condición de carrera surge de la siguiente manera: - `ksmbd_conn_handler_loop()` espera a que `conn->r_count` llegue a cero: `wait_event(conn->r_count_q, atomic_read(&conn->r_count) == 0);` - Mientras tanto, `handle_ksmbd_work()` decrementa `conn->r_count` utilizando `atomic_dec_return(&conn->r_count)`, y si llega a cero, llama a `ksmbd_conn_free()`, que libera `conn`. - Sin embargo, después de que `handle_ksmbd_work()` decrementa `conn->r_count`, puede seguir accediendo a `conn->r_count_q` en la siguiente línea: `waitqueue_active(&conn->r_count_q)` o `wake_up(&conn->r_count_q)` Esto resulta en un UAF, ya que `conn` ya ha sido liberado.
El descubrimiento de este UAF puede consultarse en el siguiente PR para el soporte de syzkaller para solicitudes SMB.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.