CVE-2026-98450 (GCVE-0-2026-98450)
Vulnerability from cvelistv5
Published
2026-10-18 15:15
Modified
2026-10-21 12:55
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: smb: client: close completed creates on compound wait errors compound_send_recv() waits for responses in order. If a later wait is interrupted, or if a later MID fails during response synchronization, an earlier CREATE may already have opened a remote handle. The earlier mid is then released without invoking handle_cancelled_mid(), leaving the remote handle open because no FID was copied to the caller. Mark completed earlier mids as cancelled when a compound wait or MID synchronization aborts. Keep their response buffers attached while the MIDs are synchronized, and transfer them only after synchronization of the processed responses, so the release path can inspect successful CREATE responses and queue SMB2_close() after a later failure. Account for a remote open only after the close work is allocated and before it is queued, since the caller has not yet updated num_remote_opens. Mark the create+close compound used by smb2_unlink() so it is not closed again. Non-CREATE responses and compounds that already include a close keep their existing behavior.
Impacted products
Vendor Product Version
Linux Linux Version: e0bba0b8548179b696e86c158ea8f45f2ef6ad14
Version: e0bba0b8548179b696e86c158ea8f45f2ef6ad14
Version: e0bba0b8548179b696e86c158ea8f45f2ef6ad14
Version: e0bba0b8548179b696e86c158ea8f45f2ef6ad14
Version: e0bba0b8548179b696e86c158ea8f45f2ef6ad14
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/smb/client/smb2inode.c",
            "fs/smb/client/smb2misc.c",
            "fs/smb/client/transport.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "8afc80156b1d9e2cfd02d42c255305fad95b59fc",
              "status": "affected",
              "version": "e0bba0b8548179b696e86c158ea8f45f2ef6ad14",
              "versionType": "git"
            },
            {
              "lessThan": "2cb07d1a6a30283dbfc809c8036bc1fd103d59fa",
              "status": "affected",
              "version": "e0bba0b8548179b696e86c158ea8f45f2ef6ad14",
              "versionType": "git"
            },
            {
              "lessThan": "224b56b7c02b2bfb1f5bee18d5f56ae6b052be44",
              "status": "affected",
              "version": "e0bba0b8548179b696e86c158ea8f45f2ef6ad14",
              "versionType": "git"
            },
            {
              "lessThan": "253612499ce9b4cd7bb922fe507ec204bddd9313",
              "status": "affected",
              "version": "e0bba0b8548179b696e86c158ea8f45f2ef6ad14",
              "versionType": "git"
            },
            {
              "lessThan": "6c5c547f037bc18f0b8d0b5db5a648f8f630ce85",
              "status": "affected",
              "version": "e0bba0b8548179b696e86c158ea8f45f2ef6ad14",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/smb/client/smb2inode.c",
            "fs/smb/client/smb2misc.c",
            "fs/smb/client/transport.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.19"
            },
            {
              "lessThan": "4.19",
              "status": "unaffected",
              "version": "0",
              "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.56",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.9",
              "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": "6.6.160",
                  "versionStartIncluding": "4.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.113",
                  "versionStartIncluding": "4.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.56",
                  "versionStartIncluding": "4.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.9",
                  "versionStartIncluding": "4.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3",
                  "versionStartIncluding": "4.19",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: close completed creates on compound wait errors\n\ncompound_send_recv() waits for responses in order. If a later wait is\ninterrupted, or if a later MID fails during response synchronization, an\nearlier CREATE may already have opened a remote handle. The earlier mid\nis then released without invoking handle_cancelled_mid(), leaving the\nremote handle open because no FID was copied to the caller.\n\nMark completed earlier mids as cancelled when a compound wait or MID\nsynchronization aborts. Keep their response buffers attached while the\nMIDs are synchronized, and transfer them only after synchronization of\nthe processed responses, so the release path can inspect successful\nCREATE responses and queue SMB2_close() after a later failure. Account for\na remote open only after the close work is allocated and before it is\nqueued, since the caller has not yet updated num_remote_opens. Mark the\ncreate+close compound used by smb2_unlink() so it is not closed again.\nNon-CREATE responses and compounds that already include a close keep their\nexisting behavior."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-21T12:55:05.792Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/8afc80156b1d9e2cfd02d42c255305fad95b59fc"
        },
        {
          "url": "https://git.kernel.org/stable/c/2cb07d1a6a30283dbfc809c8036bc1fd103d59fa"
        },
        {
          "url": "https://git.kernel.org/stable/c/224b56b7c02b2bfb1f5bee18d5f56ae6b052be44"
        },
        {
          "url": "https://git.kernel.org/stable/c/253612499ce9b4cd7bb922fe507ec204bddd9313"
        },
        {
          "url": "https://git.kernel.org/stable/c/6c5c547f037bc18f0b8d0b5db5a648f8f630ce85"
        }
      ],
      "title": "smb: client: close completed creates on compound wait errors",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-98450",
    "datePublished": "2026-10-18T15:15:00.649Z",
    "dateReserved": "2026-09-25T10:25:14.350Z",
    "dateUpdated": "2026-10-21T12:55:05.792Z",
    "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…