CVE-2023-53515

In the Linux kernel, the following vulnerability has been resolved: virtio-mmio: don't break lifecycle of vm_dev vm_dev has a separate lifecycle because it has a 'struct device' embedded. Thus, having a release callback for it is correct. Allocating the vm_dev struct with devres totally breaks this protection, though. Instead of waiting for the vm_dev release callback, the memory is freed when the platform_device is removed. Resulting in a use-after-free when finally the callback is to be called. To easily see the problem, compile the kernel with CONFIG_DEBUG_KOBJECT_RELEASE and unbind with sysfs. The fix is easy, don't use devres in this case. Found during my research about object lifetime problems.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:-:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:rc6:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:rc7:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:rc8:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:4.15:rc9:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.5:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.5:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.5:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.5:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.5:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.5:rc6:*:*:*:*:*:*

History

No history.

Information

Published : 2025-10-01 12:15

Updated : 2026-01-26 20:11


NVD link : CVE-2023-53515

Mitre link : CVE-2023-53515

CVE.ORG link : CVE-2023-53515


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-416

Use After Free