CVE-2024-57984
kernel: i3c: dw: Fix use-after-free in dw_i3c_master driver due to race condition
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · February 27, 2025
Updated · October 30, 2026
Description
In the Linux kernel, the following vulnerability has been resolved:
i3c: dw: Fix use-after-free in dw_i3c_master driver due to race condition
In dw_i3c_common_probe, &master->hj_work is bound with dw_i3c_hj_work. And dw_i3c_master_irq_handler can call dw_i3c_master_irq_handle_ibis function to start the work.
If we remove the module which will call dw_i3c_common_remove to make cleanup, it will free master->base through i3c_master_unregister while the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:
CPU0 CPU1
| dw_i3c_hj_work
dw_i3c_common_remove | i3c_master_unregister(&master->base) | device_unregister(&master->dev) | device_release | //free master->base | | i3c_master_do_daa(&master->base) | //use master->base
Fix it by ensuring that the work is canceled before proceeding with the cleanup in dw_i3c_common_remove.
Statement
This vulnerability is rated as Moderate severity because exploitation requires local system access, specialized hardware equipped with a Synopsys DesignWare I3C controller, and precisely timed concurrent execution during driver teardown. The race condition occurs only when unloading the module while asynchronous bus work handlers remain active. Standard Red Hat Enterprise Linux deployments do not typically utilize I3C controllers, substantially limiting exposure in common enterprise environments.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE-416 · Use After Free