CVE-2026-99036 (GCVE-0-2026-99036)
Vulnerability from cvelistv5
Published
2026-10-23 12:21
Modified
2026-10-30 12:41
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: dm: fix reading free memory in do_resume When do_resume calls dm_table_get_mode(new_map), the call is done without holding any locks (it only holds a reference to the md). It may be possible that another concurrent ioctl on the same device will swap table after dm_swap_table and before dm_table_get_mode. In this case, dm_table_get_mode(new_map) reads freed memory. This race condition was triggered by syzbot. This commit fixes the race by reading mode of the new table before dm_swap_table. Note that new_map is also passed to dm_ima_need_measure, but this function doesn't attempt to dereference it, so this call should be safe. Note that this is not a security bug because only root can trigger it and the commonly used tools such as lvm or cryptsetup do not call the ioctls concurrently, so that they can't trigger it acceidentally.
Impacted products
Vendor Product Version
Linux Linux Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Version: d58168763f74d1edbc296d7038c60efe6493fdd4
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/md/dm-ioctl.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "2bc5df0cf906f36a8f59ac864139ee2b7b53d3c0",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            },
            {
              "lessThan": "48169328021dfd59121f9a66cca919b7defcd3fa",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            },
            {
              "lessThan": "7a272c2338f758e3b6e664ebf7488ac40f48a2a4",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            },
            {
              "lessThan": "281f68d6cf8acb2547ebf0a849b8beae8fb0ec3c",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            },
            {
              "lessThan": "2c96d1a8324e7736e0f8a5790ecf39d36c2c4a82",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            },
            {
              "lessThan": "e3bf232c913b7e0103d323f15e6342d37cb1b357",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            },
            {
              "lessThan": "301691c32b8ad023e3316d5dbb6a8cf52d47b0dc",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            },
            {
              "lessThan": "c9417c1c5269e2bd0570fbe53e4ec03a8d31f008",
              "status": "affected",
              "version": "d58168763f74d1edbc296d7038c60efe6493fdd4",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/md/dm-ioctl.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "2.6.29"
            },
            {
              "lessThan": "2.6.29",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.273",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.224",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.191",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.160",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.113",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.57",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.11",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.273",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.224",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.191",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.160",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.113",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.57",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.11",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3",
                  "versionStartIncluding": "2.6.29",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndm: fix reading free memory in do_resume\n\nWhen do_resume calls dm_table_get_mode(new_map), the call is done without\nholding any locks (it only holds a reference to the md). It may be\npossible that another concurrent ioctl on the same device will swap table\nafter dm_swap_table and before dm_table_get_mode. In this case,\ndm_table_get_mode(new_map) reads freed memory.\n\nThis race condition was triggered by syzbot.\n\nThis commit fixes the race by reading mode of the new table before\ndm_swap_table. Note that new_map is also passed to dm_ima_need_measure,\nbut this function doesn\u0027t attempt to dereference it, so this call should\nbe safe.\n\nNote that this is not a security bug because only root can trigger it and\nthe commonly used tools such as lvm or cryptsetup do not call the ioctls\nconcurrently, so that they can\u0027t trigger it acceidentally."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-30T12:41:09.415Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/2bc5df0cf906f36a8f59ac864139ee2b7b53d3c0"
        },
        {
          "url": "https://git.kernel.org/stable/c/48169328021dfd59121f9a66cca919b7defcd3fa"
        },
        {
          "url": "https://git.kernel.org/stable/c/7a272c2338f758e3b6e664ebf7488ac40f48a2a4"
        },
        {
          "url": "https://git.kernel.org/stable/c/281f68d6cf8acb2547ebf0a849b8beae8fb0ec3c"
        },
        {
          "url": "https://git.kernel.org/stable/c/2c96d1a8324e7736e0f8a5790ecf39d36c2c4a82"
        },
        {
          "url": "https://git.kernel.org/stable/c/e3bf232c913b7e0103d323f15e6342d37cb1b357"
        },
        {
          "url": "https://git.kernel.org/stable/c/301691c32b8ad023e3316d5dbb6a8cf52d47b0dc"
        },
        {
          "url": "https://git.kernel.org/stable/c/c9417c1c5269e2bd0570fbe53e4ec03a8d31f008"
        }
      ],
      "title": "dm: fix reading free memory in do_resume",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-99036",
    "datePublished": "2026-10-23T12:21:49.410Z",
    "dateReserved": "2026-09-25T10:25:14.387Z",
    "dateUpdated": "2026-10-30T12:41:09.415Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…