{"id":"CVE-2026-72085","aliases":[],"url":"https://o3.security/vulnerability/CVE-2026-72085","summary":"scsi: xen: scsiback: Free unsubmitted command instead of double-putting it","details":"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(&pending_req->se_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's 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.","published":"2026-08-15T05:52:33.521Z","modified":"2026-08-18T03:56:37.065865598Z","cvss":{"score":9.3,"severity":"CRITICAL","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"},"epss":null,"cisaKev":null,"exploitsKnown":null,"affectedPackages":[{"ecosystem":"Linux","name":"Kernel","fixedVersion":"5.15.212"}],"fix":null,"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/1e97c404e44991fb087c38ccd7414f2d326f9b74"},{"type":"WEB","url":"https://git.kernel.org/stable/c/9c0f6894982b1f13bda220707497b25ac9c95bdb"},{"type":"WEB","url":"https://git.kernel.org/stable/c/a13b789497a7fdd27d4d63f5c69d23db706ef0fe"},{"type":"WEB","url":"https://git.kernel.org/stable/c/ca978f8a93d4d36841839bf2847d29b88c2591d6"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f1516c56ac540da1769f264c3cfefe4499548a5d"},{"type":"WEB","url":"https://git.kernel.org/stable/c/fa588f28401102652068c4cc75e135507f4b5106"},{"type":"WEB","url":"https://git.kernel.org/stable/c/fcd64d4d97af5d9736f31040f8ed8cd4c17e4c45"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72085.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-72085"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-18T03:56:37.065865598Z"}}