GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2026-72085 (GCVE-0-2026-72085)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:52 – Updated: 2026-08-17 05:40
VLAI
Title
scsi: xen: scsiback: Free unsubmitted command instead of double-putting it
Summary
In the Linux kernel, the following vulnerability has been resolved: scsi: xen: scsiback: Free unsubmitted command instead of double-putting it scsiback_get_pend_req() obtains a command tag and returns a vscsibk_pend whose embedded se_cmd has only been memset to 0, so its cmd_kref is 0; the se_cmd is initialised (kref_init() via target_init_cmd()) only later, in scsiback_cmd_exec(), on the successful VSCSIIF_ACT_SCSI_CDB path. The two error paths in scsiback_do_cmd_fn() taken before the command is submitted -- a failed scsiback_gnttab_data_map() and an unknown ring_req.act -- call transport_generic_free_cmd(&pending_req->se_cmd, 0), which kref_put()s a refcount of 0. That underflows it ("refcount_t: underflow; use-after-free") and, as the release function is not run, leaks the command tag. Impact: a pvSCSI guest can leak every command tag of a LUN's session, stopping the LUN, by submitting requests with a bad grant reference or an unknown request type; under panic_on_warn the refcount underflow panics the host. Add a helper that just returns the tag with target_free_tag() and sends the error response. It frees the tag while the v2p reference still pins the session, and snapshots the response fields beforehand because freeing the tag can let another ring reuse the pending_req slot.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 2dbcdf33dbf61f44b29adb52338282c3d7840d0e , < 9c0f6894982b1f13bda220707497b25ac9c95bdb (git)
Affected: 2dbcdf33dbf61f44b29adb52338282c3d7840d0e , < a13b789497a7fdd27d4d63f5c69d23db706ef0fe (git)
Affected: 2dbcdf33dbf61f44b29adb52338282c3d7840d0e , < fa588f28401102652068c4cc75e135507f4b5106 (git)
Affected: 2dbcdf33dbf61f44b29adb52338282c3d7840d0e , < fcd64d4d97af5d9736f31040f8ed8cd4c17e4c45 (git)
Affected: 2dbcdf33dbf61f44b29adb52338282c3d7840d0e , < f1516c56ac540da1769f264c3cfefe4499548a5d (git)
Affected: 2dbcdf33dbf61f44b29adb52338282c3d7840d0e , < 1e97c404e44991fb087c38ccd7414f2d326f9b74 (git)
Affected: 2dbcdf33dbf61f44b29adb52338282c3d7840d0e , < ca978f8a93d4d36841839bf2847d29b88c2591d6 (git)
guessed Create a notification for this product.
Linux Linux Affected: 4.6
Unaffected: 0 , < 4.6 (semver)
Unaffected: 5.15.212 , ≤ 5.15.* (semver)
Unaffected: 6.1.178 , ≤ 6.1.* (semver)
Unaffected: 6.6.145 , ≤ 6.6.* (semver)
Unaffected: 6.12.97 , ≤ 6.12.* (semver)
Unaffected: 6.18.40 , ≤ 6.18.* (semver)
Unaffected: 7.1.5 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/xen/xen-scsiback.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "9c0f6894982b1f13bda220707497b25ac9c95bdb",
              "status": "affected",
              "version": "2dbcdf33dbf61f44b29adb52338282c3d7840d0e",
              "versionType": "git"
            },
            {
              "lessThan": "a13b789497a7fdd27d4d63f5c69d23db706ef0fe",
              "status": "affected",
              "version": "2dbcdf33dbf61f44b29adb52338282c3d7840d0e",
              "versionType": "git"
            },
            {
              "lessThan": "fa588f28401102652068c4cc75e135507f4b5106",
              "status": "affected",
              "version": "2dbcdf33dbf61f44b29adb52338282c3d7840d0e",
              "versionType": "git"
            },
            {
              "lessThan": "fcd64d4d97af5d9736f31040f8ed8cd4c17e4c45",
              "status": "affected",
              "version": "2dbcdf33dbf61f44b29adb52338282c3d7840d0e",
              "versionType": "git"
            },
            {
              "lessThan": "f1516c56ac540da1769f264c3cfefe4499548a5d",
              "status": "affected",
              "version": "2dbcdf33dbf61f44b29adb52338282c3d7840d0e",
              "versionType": "git"
            },
            {
              "lessThan": "1e97c404e44991fb087c38ccd7414f2d326f9b74",
              "status": "affected",
              "version": "2dbcdf33dbf61f44b29adb52338282c3d7840d0e",
              "versionType": "git"
            },
            {
              "lessThan": "ca978f8a93d4d36841839bf2847d29b88c2591d6",
              "status": "affected",
              "version": "2dbcdf33dbf61f44b29adb52338282c3d7840d0e",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/xen/xen-scsiback.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.6"
            },
            {
              "lessThan": "4.6",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.212",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.178",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.145",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.97",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.212",
                  "versionStartIncluding": "4.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.178",
                  "versionStartIncluding": "4.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.145",
                  "versionStartIncluding": "4.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.97",
                  "versionStartIncluding": "4.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "4.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "4.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "4.6",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: xen: scsiback: Free unsubmitted command instead of double-putting it\n\nscsiback_get_pend_req() obtains a command tag and returns a vscsibk_pend\nwhose embedded se_cmd has only been memset to 0, so its cmd_kref is 0;\nthe se_cmd is initialised (kref_init() via target_init_cmd()) only\nlater, in scsiback_cmd_exec(), on the successful VSCSIIF_ACT_SCSI_CDB\npath. The two error paths in scsiback_do_cmd_fn() taken before the\ncommand is submitted -- a failed scsiback_gnttab_data_map() and an\nunknown ring_req.act -- call\ntransport_generic_free_cmd(\u0026pending_req-\u003ese_cmd, 0), which kref_put()s a\nrefcount of 0. That underflows it (\"refcount_t: underflow;\nuse-after-free\") and, as the release function is not run, leaks the\ncommand tag.\n\nImpact: a pvSCSI guest can leak every command tag of a LUN\u0027s session,\nstopping the LUN, by submitting requests with a bad grant reference or\nan unknown request type; under panic_on_warn the refcount underflow\npanics the host.\n\nAdd a helper that just returns the tag with target_free_tag() and sends\nthe error response. It frees the tag while the v2p reference still pins\nthe session, and snapshots the response fields beforehand because\nfreeing the tag can let another ring reuse the pending_req slot."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 9.3,
            "baseSeverity": "CRITICAL",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - A malicious Xen pvSCSI guest reaches scsiback_do_cmd_fn() by posting vscsiif_request entries on the shared ring and notifying the dom0/driver-domain backend via event channel; this is a hypervisor-mediated local interface, not a routable network or physical bus path.\nAC:L - The guest fully controls ring_req.act and grant references and can deterministically trigger the two pre-submit error paths (unknown act or failed scsiback_gnttab_data_map) on every attempt with no race, timing window, or other condition outside attacker control.\nPR:N - Exploitation requires only a compromised or malicious Xen guest that has been granted a pvSCSI device with a mapped LUN; no dom0 account, capability, or init-namespace privilege is needed\u2014only tenant VM control in the standard Xen multi-tenant threat model.\nUI:N - The guest frontend posts crafted pvSCSI ring requests autonomously; no victim user action on dom0 such as mounting storage, opening device nodes, or approving prompts is required beyond routine PV device assignment already present.\nS:C - A guest VM drives vulnerable code in the dom0/driver-domain xen-scsiback backend kernel, crossing the VM/host security boundary and impacting host kernel state, storage availability, and potentially the entire physical host.\nC:H - The buggy error paths call transport_generic_free_cmd() on an uninitialized se_cmd whose cmd_kref is zero, causing refcount underflow with kernel \"use-after-free\" warnings; per kernel CNA guidance, refcount/UAF-class defects warrant High confidentiality impact.\nI:H - Refcount underflow corrupts cmd_kref without invoking the proper release path, leaving target-core command state inconsistent; per kernel CNA guidance for UAF/refcount memory-safety bugs, this warrants High integrity impact even if primary observed effect is tag leak.\nA:H - Each trigger leaks one session command tag from the finite per-LUN pool (default 128), and exhausting all tags permanently stops the LUN; on hosts with panic_on_warn enabled the refcount underflow WARN additionally panics the host kernel."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:40:07.854Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/9c0f6894982b1f13bda220707497b25ac9c95bdb"
        },
        {
          "url": "https://git.kernel.org/stable/c/a13b789497a7fdd27d4d63f5c69d23db706ef0fe"
        },
        {
          "url": "https://git.kernel.org/stable/c/fa588f28401102652068c4cc75e135507f4b5106"
        },
        {
          "url": "https://git.kernel.org/stable/c/fcd64d4d97af5d9736f31040f8ed8cd4c17e4c45"
        },
        {
          "url": "https://git.kernel.org/stable/c/f1516c56ac540da1769f264c3cfefe4499548a5d"
        },
        {
          "url": "https://git.kernel.org/stable/c/1e97c404e44991fb087c38ccd7414f2d326f9b74"
        },
        {
          "url": "https://git.kernel.org/stable/c/ca978f8a93d4d36841839bf2847d29b88c2591d6"
        }
      ],
      "title": "scsi: xen: scsiback: Free unsubmitted command instead of double-putting it",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-72085",
    "datePublished": "2026-08-15T05:52:33.521Z",
    "dateReserved": "2026-08-09T03:40:39.904Z",
    "dateUpdated": "2026-08-17T05:40:07.854Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-72085",
      "date": "2026-09-04",
      "epss": "0.00175",
      "percentile": "0.07096"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-72085\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-15T06:21:22.470\",\"lastModified\":\"2026-08-17T06:18:07.370\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nscsi: xen: scsiback: Free unsubmitted command instead of double-putting it\\n\\nscsiback_get_pend_req() obtains a command tag and returns a vscsibk_pend\\nwhose embedded se_cmd has only been memset to 0, so its cmd_kref is 0;\\nthe se_cmd is initialised (kref_init() via target_init_cmd()) only\\nlater, in scsiback_cmd_exec(), on the successful VSCSIIF_ACT_SCSI_CDB\\npath. The two error paths in scsiback_do_cmd_fn() taken before the\\ncommand is submitted -- a failed scsiback_gnttab_data_map() and an\\nunknown ring_req.act -- call\\ntransport_generic_free_cmd(\u0026pending_req-\u003ese_cmd, 0), which kref_put()s a\\nrefcount of 0. That underflows it (\\\"refcount_t: underflow;\\nuse-after-free\\\") and, as the release function is not run, leaks the\\ncommand tag.\\n\\nImpact: a pvSCSI guest can leak every command tag of a LUN\u0027s session,\\nstopping the LUN, by submitting requests with a bad grant reference or\\nan unknown request type; under panic_on_warn the refcount underflow\\npanics the host.\\n\\nAdd a helper that just returns the tag with target_free_tag() and sends\\nthe error response. It frees the tag while the v2p reference still pins\\nthe session, and snapshots the response fields beforehand because\\nfreeing the tag can let another ring reuse the pending_req slot.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/xen/xen-scsiback.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"2dbcdf33dbf61f44b29adb52338282c3d7840d0e\",\"lessThan\":\"9c0f6894982b1f13bda220707497b25ac9c95bdb\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"2dbcdf33dbf61f44b29adb52338282c3d7840d0e\",\"lessThan\":\"a13b789497a7fdd27d4d63f5c69d23db706ef0fe\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"2dbcdf33dbf61f44b29adb52338282c3d7840d0e\",\"lessThan\":\"fa588f28401102652068c4cc75e135507f4b5106\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"2dbcdf33dbf61f44b29adb52338282c3d7840d0e\",\"lessThan\":\"fcd64d4d97af5d9736f31040f8ed8cd4c17e4c45\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"2dbcdf33dbf61f44b29adb52338282c3d7840d0e\",\"lessThan\":\"f1516c56ac540da1769f264c3cfefe4499548a5d\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"2dbcdf33dbf61f44b29adb52338282c3d7840d0e\",\"lessThan\":\"1e97c404e44991fb087c38ccd7414f2d326f9b74\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"2dbcdf33dbf61f44b29adb52338282c3d7840d0e\",\"lessThan\":\"ca978f8a93d4d36841839bf2847d29b88c2591d6\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/xen/xen-scsiback.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"4.6\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"4.6\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.212\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.178\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.145\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.97\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.40\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.5\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2\",\"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:N/UI:N/S:C/C:H/I:H/A:H\",\"baseScore\":9.3,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"CHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.5,\"impactScore\":6.0}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/1e97c404e44991fb087c38ccd7414f2d326f9b74\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9c0f6894982b1f13bda220707497b25ac9c95bdb\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a13b789497a7fdd27d4d63f5c69d23db706ef0fe\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ca978f8a93d4d36841839bf2847d29b88c2591d6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/f1516c56ac540da1769f264c3cfefe4499548a5d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/fa588f28401102652068c4cc75e135507f4b5106\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/fcd64d4d97af5d9736f31040f8ed8cd4c17e4c45\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-17T21:39:55+00:00",
      "cve": "CVE-2026-72085",
      "id": "CVE-2026-72085",
      "initial_release_date": "2026-08-15T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: scsi: xen: scsiback: Free unsubmitted command instead of double-putting it",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-72085.json",
      "version": "3"
    }
  }
}



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…