{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-72102","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-08-09T03:40:39.905Z","datePublished":"2026-08-15T05:52:46.200Z","dateUpdated":"2026-08-17T05:40:16.779Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-17T05:40:16.779Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ndm_early_create: fix freeing used table on dm_resume failure\n\nIf dm_resume fails, the kernel attempts to free table with\ndm_table_destroy, but the table was already instantiated with\ndm_swap_table. This commit skips the call to dm_table_destroy in this\ncase."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The bug is only reachable via the dm-mod.create kernel boot parameter processed in late_initcall dm_init_init() calling dm_early_create(); there is no network, adjacent, ioctl, netlink, or post-boot userspace path into this __init-only device-mapper setup code.\nAC:L - Once dm_swap_table() installs the table, an attacker controlling dm-mod.create can deterministically force dm_resume() to fail (e.g., paired snapshot-origin preresume handover rejection or verity/crypt preresume errors) without races or attacker-uncontrolled memory layout.\nPR:L - dm_early_create() performs no capability or credential checks on its error path; unlike runtime DM_DEV_CREATE ioctls that require CAP_SYS_ADMIN, triggering the post-swap dm_resume failure only needs crafting dm-mod.create table parameters at boot, not real-root dm-ioctl privileges unobtainable via user namespaces.\nUI:N - The vulnerable teardown runs automatically during late_initcall once dm-mod.create is present and dm_resume fails; no victim must open files, mount filesystems, or take any interactive action beyond rebooting with the crafted boot configuration.\nS:U - The use-after-free and double-free corrupt kernel heap memory during device-mapper early boot setup within the kernel trust boundary; it does not cross VM, container, or IOMMU isolation boundaries into another security authority.\nC:H - dm_table_destroy() frees a dm_table still referenced through md->map after dm_swap_table(), creating a kernel heap use-after-free that can expose freed object contents and adjacent kernel memory to subsequent allocations and readers.\nI:H - UAF on the live dm_table enables heap grooming and corrupts destructor paths invoked during erroneous teardown (dm_table_destroy target dtr hooks, then dm_destroy __unbind), providing memory corruption primitives developable into arbitrary kernel writes or control-flow hijack.\nA:H - Freeing the active table then calling dm_destroy()/__unbind() on the same object causes double-free/use-after-free during boot cleanup, readily producing kernel panics, oopses, or unbootable systems on dm-mod.create rootfs platforms (Android/ChromeOS/embedded)."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/md/dm-ioctl.c"],"versions":[{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"3ba377a47a093cc19647ca7f102acd33a211d472","status":"affected","versionType":"git"},{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"72c3283a2abd60ecef295e02270f22ef1dfccd25","status":"affected","versionType":"git"},{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"d6066145347e14db84c35b445e309f095d0d8125","status":"affected","versionType":"git"},{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"259ce9e3fc3a3f8c4e393a2072b8f34302eb4d5a","status":"affected","versionType":"git"},{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"5f6500d44a912d4aed664600966706d76b81d9af","status":"affected","versionType":"git"},{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"92e3c93d60be1f2425738cd66dbadac7d6bc0cd1","status":"affected","versionType":"git"},{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"7d8ed7cb844df21e4d93af11250fb3a5cb861147","status":"affected","versionType":"git"},{"version":"6bbc923dfcf57d6b97388819a7393835664c7a8e","lessThan":"366665416f20527ff7cad548a32d1ddf23195740","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/md/dm-ioctl.c"],"versions":[{"version":"5.1","status":"affected"},{"version":"0","lessThan":"5.1","status":"unaffected","versionType":"semver"},{"version":"5.10.261","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.212","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.178","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.145","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.97","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.40","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.1.5","lessThanOrEqual":"7.1.*","status":"unaffected","versionType":"semver"},{"version":"7.2","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"5.10.261"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"5.15.212"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"6.1.178"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"6.6.145"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"6.12.97"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"6.18.40"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"7.1.5"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.1","versionEndExcluding":"7.2"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/3ba377a47a093cc19647ca7f102acd33a211d472"},{"url":"https://git.kernel.org/stable/c/72c3283a2abd60ecef295e02270f22ef1dfccd25"},{"url":"https://git.kernel.org/stable/c/d6066145347e14db84c35b445e309f095d0d8125"},{"url":"https://git.kernel.org/stable/c/259ce9e3fc3a3f8c4e393a2072b8f34302eb4d5a"},{"url":"https://git.kernel.org/stable/c/5f6500d44a912d4aed664600966706d76b81d9af"},{"url":"https://git.kernel.org/stable/c/92e3c93d60be1f2425738cd66dbadac7d6bc0cd1"},{"url":"https://git.kernel.org/stable/c/7d8ed7cb844df21e4d93af11250fb3a5cb861147"},{"url":"https://git.kernel.org/stable/c/366665416f20527ff7cad548a32d1ddf23195740"}],"title":"dm_early_create: fix freeing used table on dm_resume failure","x_generator":{"engine":"bippy-1.2.0"}}}}