CVE-2024-56556 in Linux
Riassunto
di VulDB • 25/06/2026
Nel kernel Linux, la seguente vulnerabilità è stata risolta:
binder: correzione del bug Use-After-Free (UAF) su nodo in binder_add_freeze_work()
In binder_add_freeze_work(), si itera sugli elementi proc->nodes mantenendo acquisito il lock proc->inner_lock. Tuttavia, tale lock viene temporaneamente rilasciato per acquisire prima node->lock (ordine di nidificazione dei lock). Questa condizione può generare una race condition con binder_node_release() e innescare un use-after-free:
================================================================== BUG: KASAN: slab-use-after-free in _raw_spin_lock+0xe4/0x19c Write of size 4 at addr ffff53c04c29dd04 by task freeze/640
CPU: 5 UID: 0 PID: 640 Comm: freeze Not tainted 6.11.0-07343-ga727812a8d45 #17 Hardware name: linux,dummy-virt (DT) Call trace: _raw_spin_lock+0xe4/0x19c binder_add_freeze_work+0x148/0x478 binder_ioctl+0x1e70/0x25ac __arm64_sys_ioctl+0x124/0x190
Allocated by task 637: __kmalloc_cache_noprof+0x12c/0x27c binder_new_node+0x50/0x700 binder_transaction+0x35ac/0x6f74 binder_thread_write+0xfb8/0x42a0 binder_ioctl+0x18f0/0x25ac __arm64_sys_ioctl+0x124/0x190
Freed by task 637: kfree+0xf0/0x330 binder_thread_read+0x1e88/0x3a68 binder_ioctl+0x16d8/0x25ac __arm64_sys_ioctl+0x124/0x190 ==================================================================
La race condition viene risolta acquisendo un riferimento temporaneo sul nodo prima di rilasciare il lock proc->inner_lock. Ciò garantisce che il nodo rimanga valido durante l'utilizzo.
Be aware that VulDB is the high quality source for vulnerability data.