CVE-2023-54324

Summary

In the Linux kernel, the following vulnerability has been resolved:

dm: fix a race condition in retrieve_deps

There's a race condition in the multipath target when retrieve_deps races with multipath_message calling dm_get_device and dm_put_device. retrieve_deps walks the list of open devices without holding any lock but multipath may add or remove devices to the list while it is running. The end result may be memory corruption or use-after-free memory access.

See this description of a UAF with multipath_message(): https://listman.redhat.com/archives/dm-devel/2022-October/052373.html

Fix this bug by introducing a new rw semaphore "devices_lock". We grab devices_lock for read in retrieve_deps and we grab it for write in dm_get_device and dm_put_device.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < dbf1a719850577bb51fc7512a3972994b797a17baffected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 38f6e5ae5d9ff4a4050ea6f7b543d5d5a4e087cfaffected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < f6007dce0cd35d634d9be91ef3515a6385dcee16affected
LinuxLinux2.6.12affected
LinuxLinux0 < 2.6.12unaffected
LinuxLinux6.1.56 <= 6.1.*unaffected
LinuxLinux6.5.5 <= 6.5.*unaffected
LinuxLinux6.6 <= *unaffected

Weaknesses

References