{"id":"CVE-2023-54024","state":"PUBLISHED","title":"KVM: Destroy target device if coalesced MMIO unregistration fails","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: Destroy target device if coalesced MMIO unregistration fails\n\nDestroy and free the target coalesced MMIO device if unregistering said\ndevice fails.  As clearly noted in the code, kvm_io_bus_unregister_dev()\ndoes not destroy the target device.\n\n  BUG: memory leak\n  unreferenced object 0xffff888112a54880 (size 64):\n    comm \"syz-executor.2\", pid 5258, jiffies 4297861402 (age 14.129s)\n    hex dump (first 32 bytes):\n      38 c7 67 15 00 c9 ff ff 38 c7 67 15 00 c9 ff ff  8.g.....8.g.....\n      e0 c7 e1 83 ff ff ff ff 00 30 67 15 00 c9 ff ff  .........0g.....\n    backtrace:\n      [<0000000006995a8a>] kmalloc include/linux/slab.h:556 [inline]\n      [<0000000006995a8a>] kzalloc include/linux/slab.h:690 [inline]\n      [<0000000006995a8a>] kvm_vm_ioctl_register_coalesced_mmio+0x8e/0x3d0 arch/x86/kvm/../../../virt/kvm/coalesced_mmio.c:150\n      [<00000000022550c2>] kvm_vm_ioctl+0x47d/0x1600 arch/x86/kvm/../../../virt/kvm/kvm_main.c:3323\n      [<000000008a75102f>] vfs_ioctl fs/ioctl.c:46 [inline]\n      [<000000008a75102f>] file_ioctl fs/ioctl.c:509 [inline]\n      [<000000008a75102f>] do_vfs_ioctl+0xbab/0x1160 fs/ioctl.c:696\n      [<0000000080e3f669>] ksys_ioctl+0x76/0xa0 fs/ioctl.c:713\n      [<0000000059ef4888>] __do_sys_ioctl fs/ioctl.c:720 [inline]\n      [<0000000059ef4888>] __se_sys_ioctl fs/ioctl.c:718 [inline]\n      [<0000000059ef4888>] __x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:718\n      [<000000006444fa05>] do_syscall_64+0x9f/0x4e0 arch/x86/entry/common.c:290\n      [<000000009a4ed50b>] entry_SYSCALL_64_after_hwframe+0x49/0xbe\n\n  BUG: leak checking failed","publishedAt":"2025-12-24T10:55:53.718Z","updatedAt":"2026-05-23T15:32:02.641Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"7d1bc32d6477ff96a32695ea4be8144e4513ab2d","status":"affected","lessThan":"10c2a20d73e99463e69b7e92706791656adc16d7","versionType":"git"},{"version":"2a20592baff59c5351c5200ec667e1a2aa22af85","status":"affected","lessThan":"76a9886e1b61ce5592df5ae78a19ed30399ae189","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"999439fd5da5a76253e2f2c37b94204f47d75491","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"ccf6a7fb1aedb1472e1241ee55e4d26b68f8d066","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"fb436dd6914325075f07d19851ab277b7a693ae7","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"b1cb1fac22abf102ffeb29dd3eeca208a3869d54","versionType":"git"},{"version":"168e82f640ed1891a700bdb43e37da354b2ab63c","status":"affected","versionType":"git"},{"version":"50cbad42bfea8c052b7ca590bd4126cdc898713c","status":"affected","versionType":"git"},{"version":"5.4.119","status":"affected","lessThan":"5.4.235","versionType":"semver"},{"version":"5.10.37","status":"affected","lessThan":"5.10.173","versionType":"semver"},{"version":"5.11.21","status":"affected","lessThan":"5.12","versionType":"semver"},{"version":"5.12.4","status":"affected","lessThan":"5.13","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["virt/kvm/coalesced_mmio.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.13","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.13","versionType":"semver"},{"version":"5.4.235","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.173","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.99","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.16","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.2.3","status":"unaffected","lessThanOrEqual":"6.2.*","versionType":"semver"},{"version":"6.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["virt/kvm/coalesced_mmio.c"]}],"references":["https://git.kernel.org/stable/c/10c2a20d73e99463e69b7e92706791656adc16d7","https://git.kernel.org/stable/c/76a9886e1b61ce5592df5ae78a19ed30399ae189","https://git.kernel.org/stable/c/999439fd5da5a76253e2f2c37b94204f47d75491","https://git.kernel.org/stable/c/ccf6a7fb1aedb1472e1241ee55e4d26b68f8d066","https://git.kernel.org/stable/c/fb436dd6914325075f07d19851ab277b7a693ae7","https://git.kernel.org/stable/c/b1cb1fac22abf102ffeb29dd3eeca208a3869d54"],"weaknesses":[],"ingestedAt":"2026-10-29T20:06:42.242Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2023/54xxx/CVE-2023-54024.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2023-54024","state":"PUBLISHED","datePublished":"2025-12-24T10:55:53.718Z","dateUpdated":"2026-05-23T15:32:02.641Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-12-24T10:53:46.179Z"},"containers":{"cna":{"title":"KVM: Destroy target device if coalesced MMIO unregistration fails","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: Destroy target device if coalesced MMIO unregistration fails\n\nDestroy and free the target coalesced MMIO device if unregistering said\ndevice fails.  As clearly noted in the code, kvm_io_bus_unregister_dev()\ndoes not destroy the target device.\n\n  BUG: memory leak\n  unreferenced object 0xffff888112a54880 (size 64):\n    comm \"syz-executor.2\", pid 5258, jiffies 4297861402 (age 14.129s)\n    hex dump (first 32 bytes):\n      38 c7 67 15 00 c9 ff ff 38 c7 67 15 00 c9 ff ff  8.g.....8.g.....\n      e0 c7 e1 83 ff ff ff ff 00 30 67 15 00 c9 ff ff  .........0g.....\n    backtrace:\n      [<0000000006995a8a>] kmalloc include/linux/slab.h:556 [inline]\n      [<0000000006995a8a>] kzalloc include/linux/slab.h:690 [inline]\n      [<0000000006995a8a>] kvm_vm_ioctl_register_coalesced_mmio+0x8e/0x3d0 arch/x86/kvm/../../../virt/kvm/coalesced_mmio.c:150\n      [<00000000022550c2>] kvm_vm_ioctl+0x47d/0x1600 arch/x86/kvm/../../../virt/kvm/kvm_main.c:3323\n      [<000000008a75102f>] vfs_ioctl fs/ioctl.c:46 [inline]\n      [<000000008a75102f>] file_ioctl fs/ioctl.c:509 [inline]\n      [<000000008a75102f>] do_vfs_ioctl+0xbab/0x1160 fs/ioctl.c:696\n      [<0000000080e3f669>] ksys_ioctl+0x76/0xa0 fs/ioctl.c:713\n      [<0000000059ef4888>] __do_sys_ioctl fs/ioctl.c:720 [inline]\n      [<0000000059ef4888>] __se_sys_ioctl fs/ioctl.c:718 [inline]\n      [<0000000059ef4888>] __x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:718\n      [<000000006444fa05>] do_syscall_64+0x9f/0x4e0 arch/x86/entry/common.c:290\n      [<000000009a4ed50b>] entry_SYSCALL_64_after_hwframe+0x49/0xbe\n\n  BUG: leak checking failed"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"7d1bc32d6477ff96a32695ea4be8144e4513ab2d","status":"affected","lessThan":"10c2a20d73e99463e69b7e92706791656adc16d7","versionType":"git"},{"version":"2a20592baff59c5351c5200ec667e1a2aa22af85","status":"affected","lessThan":"76a9886e1b61ce5592df5ae78a19ed30399ae189","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"999439fd5da5a76253e2f2c37b94204f47d75491","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"ccf6a7fb1aedb1472e1241ee55e4d26b68f8d066","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"fb436dd6914325075f07d19851ab277b7a693ae7","versionType":"git"},{"version":"5d3c4c79384af06e3c8e25b7770b6247496b4417","status":"affected","lessThan":"b1cb1fac22abf102ffeb29dd3eeca208a3869d54","versionType":"git"},{"version":"168e82f640ed1891a700bdb43e37da354b2ab63c","status":"affected","versionType":"git"},{"version":"50cbad42bfea8c052b7ca590bd4126cdc898713c","status":"affected","versionType":"git"},{"version":"5.4.119","status":"affected","lessThan":"5.4.235","versionType":"semver"},{"version":"5.10.37","status":"affected","lessThan":"5.10.173","versionType":"semver"},{"version":"5.11.21","status":"affected","lessThan":"5.12","versionType":"semver"},{"version":"5.12.4","status":"affected","lessThan":"5.13","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["virt/kvm/coalesced_mmio.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.13","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.13","versionType":"semver"},{"version":"5.4.235","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.173","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.99","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.16","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.2.3","status":"unaffected","lessThanOrEqual":"6.2.*","versionType":"semver"},{"version":"6.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["virt/kvm/coalesced_mmio.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/10c2a20d73e99463e69b7e92706791656adc16d7"},{"url":"https://git.kernel.org/stable/c/76a9886e1b61ce5592df5ae78a19ed30399ae189"},{"url":"https://git.kernel.org/stable/c/999439fd5da5a76253e2f2c37b94204f47d75491"},{"url":"https://git.kernel.org/stable/c/ccf6a7fb1aedb1472e1241ee55e4d26b68f8d066"},{"url":"https://git.kernel.org/stable/c/fb436dd6914325075f07d19851ab277b7a693ae7"},{"url":"https://git.kernel.org/stable/c/b1cb1fac22abf102ffeb29dd3eeca208a3869d54"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-23T15:32:02.641Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.119","versionEndExcluding":"5.4.235"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10.37","versionEndExcluding":"5.10.173"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"5.15.99"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"6.1.16"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"6.2.3"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"6.3"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11.21"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.12.4"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}