CVE-2024-56554

In the Linux kernel, the following vulnerability has been resolved: binder: fix freeze UAF in binder_release_work() When a binder reference is cleaned up, any freeze work queued in the associated process should also be removed. Otherwise, the reference is freed while its ref->freeze.work is still queued in proc->work leading to a use-after-free issue as shown by the following KASAN report: ================================================================== BUG: KASAN: slab-use-after-free in binder_release_work+0x398/0x3d0 Read of size 8 at addr ffff31600ee91488 by task kworker/5:1/211 CPU: 5 UID: 0 PID: 211 Comm: kworker/5:1 Not tainted 6.11.0-rc7-00382-gfc6c92196396 #22 Hardware name: linux,dummy-virt (DT) Workqueue: events binder_deferred_func Call trace: binder_release_work+0x398/0x3d0 binder_deferred_func+0xb60/0x109c process_one_work+0x51c/0xbd4 worker_thread+0x608/0xee8 Allocated by task 703: __kmalloc_cache_noprof+0x130/0x280 binder_thread_write+0xdb4/0x42a0 binder_ioctl+0x18f0/0x25ac __arm64_sys_ioctl+0x124/0x190 invoke_syscall+0x6c/0x254 Freed by task 211: kfree+0xc4/0x230 binder_deferred_func+0xae8/0x109c process_one_work+0x51c/0xbd4 worker_thread+0x608/0xee8 ================================================================== This commit fixes the issue by ensuring any queued freeze work is removed when cleaning up a binder reference.
Configurations

Configuration 1 (hide)

cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

14 Jan 2025, 17:23

Type Values Removed Values Added
References () https://git.kernel.org/stable/c/7e20434cbca814cb91a0a261ca0106815ef48e5f - () https://git.kernel.org/stable/c/7e20434cbca814cb91a0a261ca0106815ef48e5f - Patch
References () https://git.kernel.org/stable/c/fe39e0ea2d0ba7f508ff453c4c9a44a95ec0de29 - () https://git.kernel.org/stable/c/fe39e0ea2d0ba7f508ff453c4c9a44a95ec0de29 - Patch
CWE CWE-416
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 7.8
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: binder: corrección del UAF congelado en binder_release_work() Cuando se limpia una referencia de binder, cualquier trabajo congelado en cola en el proceso asociado también debe eliminarse. De lo contrario, la referencia se libera mientras su ref->freeze.work todavía está en cola en proc->work, lo que genera un problema de use-after-free, como lo muestra el siguiente informe de KASAN: ====================================================================== ERROR: KASAN: slab-use-after-free en binder_release_work+0x398/0x3d0 Lectura de tamaño 8 en la dirección ffff31600ee91488 por la tarea kworker/5:1/211 CPU: 5 UID: 0 PID: 211 Comm: kworker/5:1 No contaminado 6.11.0-rc7-00382-gfc6c92196396 #22 Hardware nombre: linux,dummy-virt (DT) Cola de trabajo: eventos binder_deferred_func Rastreo de llamadas: binder_release_work+0x398/0x3d0 binder_deferred_func+0xb60/0x109c process_one_work+0x51c/0xbd4 worker_thread+0x608/0xee8 Asignado por la tarea 703: __kmalloc_cache_noprof+0x130/0x280 binder_thread_write+0xdb4/0x42a0 binder_ioctl+0x18f0/0x25ac __arm64_sys_ioctl+0x124/0x190 activate_syscall+0x6c/0x254 Liberado por la tarea 211: kfree+0xc4/0x230 binder_deferred_func+0xae8/0x109c process_one_work+0x51c/0xbd4 worker_thread+0x608/0xee8 ======================================================================= Este commit corrige el problema al garantizar que cualquier trabajo de congelamiento en cola se elimine al limpiar una referencia de binder.
First Time Linux linux Kernel
Linux
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

27 Dec 2024, 15:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-12-27 15:15

Updated : 2025-02-10 18:15


NVD link : CVE-2024-56554

Mitre link : CVE-2024-56554

CVE.ORG link : CVE-2024-56554


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-416

Use After Free