CVE-2026-45931 (GCVE-0-2026-45931)

Vulnerability from cvelistv5 – Published: 2026-05-27 12:17 – Updated: 2026-08-05 12:28
VLAI
Title
accel/amdxdna: Hold mm structure across iommu_sva_unbind_device()
Summary
In the Linux kernel, the following vulnerability has been resolved: accel/amdxdna: Hold mm structure across iommu_sva_unbind_device() Some tests trigger a crash in iommu_sva_unbind_device() due to accessing iommu_mm after the associated mm structure has been freed. Fix this by taking an explicit reference to the mm structure after successfully binding the device, and releasing it only after the device is unbound. This ensures the mm remains valid for the entire SVA bind/unbind lifetime.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: be462c97b7dfd24999babe39cce3de224ebe1f80 , < f6b4c1d98a7b8040d4d02e89425b3942016a2c2c (git)
Affected: be462c97b7dfd24999babe39cce3de224ebe1f80 , < f31ccf6278132a35a652fe5eeac3941e1e912398 (git)
Affected: be462c97b7dfd24999babe39cce3de224ebe1f80 , < a9162439ad792afcddc04718408ec1380b7a5f63 (git)
Create a notification for this product.
Linux Linux Affected: 6.14
Unaffected: 0 , < 6.14 (semver)
Unaffected: 6.18.14 , ≤ 6.18.* (semver)
Unaffected: 6.19.4 , ≤ 6.19.* (semver)
Unaffected: 7.0 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/accel/amdxdna/amdxdna_pci_drv.c",
            "drivers/accel/amdxdna/amdxdna_pci_drv.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "f6b4c1d98a7b8040d4d02e89425b3942016a2c2c",
              "status": "affected",
              "version": "be462c97b7dfd24999babe39cce3de224ebe1f80",
              "versionType": "git"
            },
            {
              "lessThan": "f31ccf6278132a35a652fe5eeac3941e1e912398",
              "status": "affected",
              "version": "be462c97b7dfd24999babe39cce3de224ebe1f80",
              "versionType": "git"
            },
            {
              "lessThan": "a9162439ad792afcddc04718408ec1380b7a5f63",
              "status": "affected",
              "version": "be462c97b7dfd24999babe39cce3de224ebe1f80",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/accel/amdxdna/amdxdna_pci_drv.c",
            "drivers/accel/amdxdna/amdxdna_pci_drv.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.14"
            },
            {
              "lessThan": "6.14",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.14",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.19.*",
              "status": "unaffected",
              "version": "6.19.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.0",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.14",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.19.4",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\naccel/amdxdna: Hold mm structure across iommu_sva_unbind_device()\n\nSome tests trigger a crash in iommu_sva_unbind_device() due to\naccessing iommu_mm after the associated mm structure has been\nfreed.\n\nFix this by taking an explicit reference to the mm structure\nafter successfully binding the device, and releasing it only\nafter the device is unbound. This ensures the mm remains valid\nfor the entire SVA bind/unbind lifetime."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable bind/unbind code is reached only by opening the local amdxdna accel device file (/dev/accel/accelN) and closing it; there is no network or remote-peer path to this driver.\nAC:L - The attacker controls both sides of the lifetime issue (the SVA bind at open and the unbind timing via process/fd teardown), and the crash reproduces reliably in tests, so no condition is beyond the attacker\u0027s control.\nPR:L - Opening the device and triggering the SVA bind/unbind requires no capability (no CAP check on the path; DRM_ROOT_ONLY only guards SET_STATE), only the ability to open the accel node, which unprivileged ML workloads on AMD NPU systems possess.\nUI:N - The attacker\u0027s own process triggers the bug entirely through its own open/close sequence; no action by another user is required.\nS:U - The use-after-free corrupts kernel-managed objects (mm_struct/iommu_mm_data) within the kernel\u0027s own security authority and does not breach the IOMMU DMA-isolation boundary or escape to another scope.\nC:H - Per kernel guidance a use-after-free is High; the freed iommu_mm_data/mm_struct is read after free, and controlling the reallocated contents enables disclosure of freed kernel memory.\nI:H - The UAF lets an attacker who reallocates the freed iommu_mm_data control the pasid value driving iommu_detach_device_pasid(), enabling kernel/IOMMU state corruption and the heap-spray/arbitrary-write potential characteristic of UAFs.\nA:H - Dereferencing the freed mm structure during unbind reliably oopses/panics the kernel, a High availability impact."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:28:45.338Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/f6b4c1d98a7b8040d4d02e89425b3942016a2c2c"
        },
        {
          "url": "https://git.kernel.org/stable/c/f31ccf6278132a35a652fe5eeac3941e1e912398"
        },
        {
          "url": "https://git.kernel.org/stable/c/a9162439ad792afcddc04718408ec1380b7a5f63"
        }
      ],
      "title": "accel/amdxdna: Hold mm structure across iommu_sva_unbind_device()",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-45931",
    "datePublished": "2026-05-27T12:17:49.527Z",
    "dateReserved": "2026-05-13T15:03:33.086Z",
    "dateUpdated": "2026-08-05T12:28:45.338Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-45931",
      "date": "2026-08-15",
      "epss": "0.00173",
      "percentile": "0.07039"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-45931\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-05-27T14:17:09.053\",\"lastModified\":\"2026-06-25T12:46:49.770\",\"vulnStatus\":\"Undergoing Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\naccel/amdxdna: Hold mm structure across iommu_sva_unbind_device()\\n\\nSome tests trigger a crash in iommu_sva_unbind_device() due to\\naccessing iommu_mm after the associated mm structure has been\\nfreed.\\n\\nFix this by taking an explicit reference to the mm structure\\nafter successfully binding the device, and releasing it only\\nafter the device is unbound. This ensures the mm remains valid\\nfor the entire SVA bind/unbind lifetime.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/accel/amdxdna/amdxdna_pci_drv.c\",\"drivers/accel/amdxdna/amdxdna_pci_drv.h\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"be462c97b7dfd24999babe39cce3de224ebe1f80\",\"lessThan\":\"f6b4c1d98a7b8040d4d02e89425b3942016a2c2c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"be462c97b7dfd24999babe39cce3de224ebe1f80\",\"lessThan\":\"f31ccf6278132a35a652fe5eeac3941e1e912398\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"be462c97b7dfd24999babe39cce3de224ebe1f80\",\"lessThan\":\"a9162439ad792afcddc04718408ec1380b7a5f63\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/accel/amdxdna/amdxdna_pci_drv.c\",\"drivers/accel/amdxdna/amdxdna_pci_drv.h\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.14\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.14\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.14\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.19.4\",\"lessThanOrEqual\":\"6.19.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.0\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"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\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.14\",\"versionEndExcluding\":\"6.18.14\",\"matchCriteriaId\":\"C969BF0A-760D-435A-9705-6ED20216C1BB\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.19\",\"versionEndExcluding\":\"6.19.4\",\"matchCriteriaId\":\"672A3E79-EC03-479D-8503-361DFBDC8092\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/a9162439ad792afcddc04718408ec1380b7a5f63\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/f31ccf6278132a35a652fe5eeac3941e1e912398\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/f6b4c1d98a7b8040d4d02e89425b3942016a2c2c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-28T07:40:06+00:00",
      "cve": "CVE-2026-45931",
      "id": "CVE-2026-45931",
      "initial_release_date": "2026-05-27T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: accel/amdxdna: Hold mm structure across iommu_sva_unbind_device()",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-45931.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-06T01:18:59Z",
      "cve": "CVE-2026-45931",
      "id": "CVE-2026-45931",
      "initial_release_date": "2026-05-28T03:55:58Z",
      "product_status:known_not_affected": "293",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-45931",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-45931.json",
      "version": "5"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…