CVE-2026-31609 (GCVE-0-2026-31609)

Vulnerability from cvelistv5 – Published: 2026-04-24 14:42 – Updated: 2026-08-05 12:23
VLAI
Title
smb: client: avoid double-free in smbd_free_send_io() after smbd_send_batch_flush()
Summary
In the Linux kernel, the following vulnerability has been resolved: smb: client: avoid double-free in smbd_free_send_io() after smbd_send_batch_flush() smbd_send_batch_flush() already calls smbd_free_send_io(), so we should not call it again after smbd_post_send() moved it to the batch list.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: cca0526ef2344cab6944d7f441fc24e152da031b , < a9940dcbe5cb92482c04efc7341039ddf7dbf607 (git)
Affected: 37b5c06956183b65e6808b509cf637632016cdf7 , < 22b7c1c619d808aec4cad3dc42103345e370d107 (git)
Affected: 21538121efe6c8c5b51c742fa02cbe820bc48714 , < f9a162c2bbcd0ac85bd07c5b37cf20286048b65c (git)
Affected: 21538121efe6c8c5b51c742fa02cbe820bc48714 , < 27b7c3e916218b5eb2ee350211140e961bfc49be (git)
Affected: 6.18.11 , < 6.18.24 (semver)
Affected: 6.19.1 , < 6.19.14 (semver)
guessed Create a notification for this product.
Linux Linux Affected: 7.0
Unaffected: 0 , < 7.0 (semver)
Unaffected: 6.18.24 , ≤ 6.18.* (semver)
Unaffected: 6.19.14 , ≤ 6.19.* (semver)
Unaffected: 7.0.1 , ≤ 7.0.* (semver)
Unaffected: 7.1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/smb/client/smbdirect.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "a9940dcbe5cb92482c04efc7341039ddf7dbf607",
              "status": "affected",
              "version": "cca0526ef2344cab6944d7f441fc24e152da031b",
              "versionType": "git"
            },
            {
              "lessThan": "22b7c1c619d808aec4cad3dc42103345e370d107",
              "status": "affected",
              "version": "37b5c06956183b65e6808b509cf637632016cdf7",
              "versionType": "git"
            },
            {
              "lessThan": "f9a162c2bbcd0ac85bd07c5b37cf20286048b65c",
              "status": "affected",
              "version": "21538121efe6c8c5b51c742fa02cbe820bc48714",
              "versionType": "git"
            },
            {
              "lessThan": "27b7c3e916218b5eb2ee350211140e961bfc49be",
              "status": "affected",
              "version": "21538121efe6c8c5b51c742fa02cbe820bc48714",
              "versionType": "git"
            },
            {
              "lessThan": "6.18.24",
              "status": "affected",
              "version": "6.18.11",
              "versionType": "semver"
            },
            {
              "lessThan": "6.19.14",
              "status": "affected",
              "version": "6.19.1",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/smb/client/smbdirect.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "7.0"
            },
            {
              "lessThan": "7.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.24",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.19.*",
              "status": "unaffected",
              "version": "6.19.14",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.1",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.24",
                  "versionStartIncluding": "6.18.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.19.14",
                  "versionStartIncluding": "6.19.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.1",
                  "versionStartIncluding": "7.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "7.0",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: avoid double-free in smbd_free_send_io() after smbd_send_batch_flush()\n\nsmbd_send_batch_flush() already calls smbd_free_send_io(),\nso we should not call it again after smbd_post_send()\nmoved it to the batch list."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 9.8,
            "baseSeverity": "CRITICAL",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:N - The vulnerable path is in the SMB client SMB Direct/RDMA transport and processes protocol events from a remote SMB Direct peer over the network.\nAC:L - A malicious peer can request immediate empty responses and then disrupt the RDMA connection to drive the post-send error path; the trigger is repeatable and does not depend on conditions outside attacker influence.\nPR:N - The attacker is the remote SMB Direct peer/server and does not need privileges on the vulnerable client system or authenticated local access.\nUI:N - In a reasonable deployment with an existing or automatically established SMB Direct mount, the remote peer can trigger the bug through protocol traffic and disconnect timing without further user action.\nS:U - The corruption occurs in the client kernel and impacts the same operating-system security authority, with no VM, IOMMU, or sandbox boundary crossing identified.\nC:H - This is a kernel heap double-free of an SMB Direct send object; as memory corruption, it can plausibly be shaped into use-after-free behavior and kernel memory disclosure.\nI:H - The double-free corrupts kernel allocator state for objects used in RDMA send handling and can plausibly be leveraged for arbitrary kernel memory modification or code execution.\nA:H - Even without full exploitation, the double-free can trigger allocator corruption, warnings, oops, panic, or connection teardown, causing high availability impact."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:23:48.014Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/a9940dcbe5cb92482c04efc7341039ddf7dbf607"
        },
        {
          "url": "https://git.kernel.org/stable/c/22b7c1c619d808aec4cad3dc42103345e370d107"
        },
        {
          "url": "https://git.kernel.org/stable/c/f9a162c2bbcd0ac85bd07c5b37cf20286048b65c"
        },
        {
          "url": "https://git.kernel.org/stable/c/27b7c3e916218b5eb2ee350211140e961bfc49be"
        }
      ],
      "title": "smb: client: avoid double-free in smbd_free_send_io() after smbd_send_batch_flush()",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-31609",
    "datePublished": "2026-04-24T14:42:30.797Z",
    "dateReserved": "2026-03-09T15:48:24.122Z",
    "dateUpdated": "2026-08-05T12:23:48.014Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-31609",
      "date": "2026-09-22",
      "epss": "0.00457",
      "percentile": "0.38979"
    },
    "microsoft_vex": {
      "current_release_date": "2026-05-01T01:02:29.000Z",
      "cve": "CVE-2026-31609",
      "id": "msrc_CVE-2026-31609",
      "initial_release_date": "2026-04-02T00:00:00.000Z",
      "product_status:fixed": "2",
      "product_status:known_affected": "3",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "smb: client: avoid double-free in smbd_free_send_io() after smbd_send_batch_flush()",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-31609.json",
      "version": "5"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "fs/smb/client/smbdirect.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "a9940dcbe5cb92482c04efc7341039ddf7dbf607",
                    "status": "affected",
                    "version": "cca0526ef2344cab6944d7f441fc24e152da031b",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "22b7c1c619d808aec4cad3dc42103345e370d107",
                    "status": "affected",
                    "version": "37b5c06956183b65e6808b509cf637632016cdf7",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "f9a162c2bbcd0ac85bd07c5b37cf20286048b65c",
                    "status": "affected",
                    "version": "21538121efe6c8c5b51c742fa02cbe820bc48714",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "27b7c3e916218b5eb2ee350211140e961bfc49be",
                    "status": "affected",
                    "version": "21538121efe6c8c5b51c742fa02cbe820bc48714",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "6.18.24",
                    "status": "affected",
                    "version": "6.18.11",
                    "versionType": "semver"
                  },
                  {
                    "lessThan": "6.19.14",
                    "status": "affected",
                    "version": "6.19.1",
                    "versionType": "semver"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "fs/smb/client/smbdirect.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "7.0"
                  },
                  {
                    "lessThan": "7.0",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.24",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.19.*",
                    "status": "unaffected",
                    "version": "6.19.14",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.0.*",
                    "status": "unaffected",
                    "version": "7.0.1",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "E7BFA239-2F39-4B24-92AA-6F60AA187C18",
                    "versionEndExcluding": "6.18.24",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "D6A8A074-BBF4-4803-ABED-519A839435BB",
                    "versionEndExcluding": "6.19.14",
                    "versionStartIncluding": "6.19",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "9B5888AB-7403-4335-89E4-21CC0B48366A",
                    "versionEndExcluding": "7.0.1",
                    "versionStartIncluding": "7.0",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: avoid double-free in smbd_free_send_io() after smbd_send_batch_flush()\n\nsmbd_send_batch_flush() already calls smbd_free_send_io(),\nso we should not call it again after smbd_post_send()\nmoved it to the batch list."
          }
        ],
        "id": "CVE-2026-31609",
        "lastModified": "2026-06-17T10:34:04.973",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "NETWORK",
                "availabilityImpact": "HIGH",
                "baseScore": 9.8,
                "baseSeverity": "CRITICAL",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "NONE",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 3.9,
              "impactScore": 5.9,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-04-24T15:16:40.160",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/22b7c1c619d808aec4cad3dc42103345e370d107"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/27b7c3e916218b5eb2ee350211140e961bfc49be"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/a9940dcbe5cb92482c04efc7341039ddf7dbf607"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/f9a162c2bbcd0ac85bd07c5b37cf20286048b65c"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Analyzed",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "CWE-415"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-07-02T17:14:42+00:00",
      "cve": "CVE-2026-31609",
      "id": "CVE-2026-31609",
      "initial_release_date": "2026-04-24T00:00:00+00:00",
      "product_status:known_affected": "260",
      "product_status:known_not_affected": "14",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: smb: client: avoid double-free in smbd_free_send_io() after smbd_send_batch_flush()",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-31609.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "important",
      "current_release_date": "2026-08-06T01:24:16Z",
      "cve": "CVE-2026-31609",
      "id": "CVE-2026-31609",
      "initial_release_date": "2026-04-25T01:38:06Z",
      "product_status:known_not_affected": "315",
      "product_status:recommended": "4",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-31609",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-31609.json",
      "version": "9"
    }
  }
}



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…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…