CVE-2026-46139 (GCVE-0-2026-46139)

Vulnerability from cvelistv5 – Published: 2026-05-28 09:35 – Updated: 2026-05-28 09:35
VLAI
Title
smb: client: use kzalloc to zero-initialize security descriptor buffer
Summary
In the Linux kernel, the following vulnerability has been resolved: smb: client: use kzalloc to zero-initialize security descriptor buffer Commit 62e7dd0a39c2d ("smb: common: change the data type of num_aces to le16") split struct smb_acl's __le32 num_aces field into __le16 num_aces and __le16 reserved. The reserved field corresponds to Sbz2 in the MS-DTYP ACL wire format, which must be zero [1]. When building an ACL descriptor in build_sec_desc(), we are using a kmalloc()'ed descriptor buffer and writing the fields explicitly using le16() writes now. This never writes to the 2 byte reserved field, leaving it as uninitialized heap data. When the reserved field happens to contain non-zero slab garbage, Samba rejects the security descriptor with "ndr_pull_security_descriptor failed: Range Error", causing chmod to fail with EINVAL. Change kmalloc() to kzalloc() to ensure the entire buffer is zero-initialized. [1] https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/20233ed8-a6c6-4097-aafa-dd545ed24428
Severity
No CVSS data available.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: 1593ddb37bd124c131fe635397df68e854a03108 , < 4c3ed344a970aad51388ac3b0145b98318f0e21f (git)
Affected: da087905e3270e2291c0afae39a28e7d183e5ec3 , < 941a1e6eb35440336913afc88a82103291956d5d (git)
Affected: 62e7dd0a39c2d0d7ff03274c36df971f1b3d2d0d , < be1ef9512a3f5a755895c24f31b334342f4aa15b (git)
Affected: 62e7dd0a39c2d0d7ff03274c36df971f1b3d2d0d , < 9bdb2ca31368b7671949dfb94a5d57ffccd01edd (git)
Affected: 62e7dd0a39c2d0d7ff03274c36df971f1b3d2d0d , < 5e489c6c47a2ac15edbaca153b9348e42c1eacab (git)
Affected: 191f2f444745087c3c51fd6042a0e25f42315ab0 (git)
Affected: 6.12.23 , < 6.12.88 (semver)
Affected: 6.13.11 , < 6.14 (semver)
Create a notification for this product.
Linux Linux Affected: 6.14
Unaffected: 0 , < 6.14 (semver)
Unaffected: 6.12.88 , ≤ 6.12.* (semver)
Unaffected: 6.18.30 , ≤ 6.18.* (semver)
Unaffected: 7.0.7 , ≤ 7.0.* (semver)
Unaffected: 7.1-rc3 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/smb/client/cifsacl.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "4c3ed344a970aad51388ac3b0145b98318f0e21f",
              "status": "affected",
              "version": "1593ddb37bd124c131fe635397df68e854a03108",
              "versionType": "git"
            },
            {
              "lessThan": "941a1e6eb35440336913afc88a82103291956d5d",
              "status": "affected",
              "version": "da087905e3270e2291c0afae39a28e7d183e5ec3",
              "versionType": "git"
            },
            {
              "lessThan": "be1ef9512a3f5a755895c24f31b334342f4aa15b",
              "status": "affected",
              "version": "62e7dd0a39c2d0d7ff03274c36df971f1b3d2d0d",
              "versionType": "git"
            },
            {
              "lessThan": "9bdb2ca31368b7671949dfb94a5d57ffccd01edd",
              "status": "affected",
              "version": "62e7dd0a39c2d0d7ff03274c36df971f1b3d2d0d",
              "versionType": "git"
            },
            {
              "lessThan": "5e489c6c47a2ac15edbaca153b9348e42c1eacab",
              "status": "affected",
              "version": "62e7dd0a39c2d0d7ff03274c36df971f1b3d2d0d",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "191f2f444745087c3c51fd6042a0e25f42315ab0",
              "versionType": "git"
            },
            {
              "lessThan": "6.12.88",
              "status": "affected",
              "version": "6.12.23",
              "versionType": "semver"
            },
            {
              "lessThan": "6.14",
              "status": "affected",
              "version": "6.13.11",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/smb/client/cifsacl.c"
          ],
          "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.12.*",
              "status": "unaffected",
              "version": "6.12.88",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.30",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.7",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.1-rc3",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.88",
                  "versionStartIncluding": "6.12.23",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.30",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.7",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1-rc3",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "6.13.11",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: use kzalloc to zero-initialize security descriptor buffer\n\nCommit 62e7dd0a39c2d (\"smb: common: change the data type of num_aces\nto le16\") split struct smb_acl\u0027s __le32 num_aces field into __le16\nnum_aces and __le16 reserved. The reserved field corresponds to Sbz2\nin the MS-DTYP ACL wire format, which must be zero [1].\n\nWhen building an ACL descriptor in build_sec_desc(), we are using a\nkmalloc()\u0027ed descriptor buffer and writing the fields explicitly using\nle16() writes now. This never writes to the 2 byte reserved field,\nleaving it as uninitialized heap data.\n\nWhen the reserved field happens to contain non-zero slab garbage,\nSamba rejects the security descriptor with \"ndr_pull_security_descriptor\nfailed: Range Error\", causing chmod to fail with EINVAL.\n\nChange kmalloc() to kzalloc() to ensure the entire buffer is\nzero-initialized.\n\n\n[1] https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/20233ed8-a6c6-4097-aafa-dd545ed24428"
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-28T09:35:55.234Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/4c3ed344a970aad51388ac3b0145b98318f0e21f"
        },
        {
          "url": "https://git.kernel.org/stable/c/941a1e6eb35440336913afc88a82103291956d5d"
        },
        {
          "url": "https://git.kernel.org/stable/c/be1ef9512a3f5a755895c24f31b334342f4aa15b"
        },
        {
          "url": "https://git.kernel.org/stable/c/9bdb2ca31368b7671949dfb94a5d57ffccd01edd"
        },
        {
          "url": "https://git.kernel.org/stable/c/5e489c6c47a2ac15edbaca153b9348e42c1eacab"
        }
      ],
      "title": "smb: client: use kzalloc to zero-initialize security descriptor buffer",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-46139",
    "datePublished": "2026-05-28T09:35:55.234Z",
    "dateReserved": "2026-05-13T15:03:33.100Z",
    "dateUpdated": "2026-05-28T09:35:55.234Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-46139",
      "date": "2026-05-29",
      "epss": "0.00018",
      "percentile": "0.05164"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-46139\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-05-28T10:16:29.470\",\"lastModified\":\"2026-05-28T13:44:01.663\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nsmb: client: use kzalloc to zero-initialize security descriptor buffer\\n\\nCommit 62e7dd0a39c2d (\\\"smb: common: change the data type of num_aces\\nto le16\\\") split struct smb_acl\u0027s __le32 num_aces field into __le16\\nnum_aces and __le16 reserved. The reserved field corresponds to Sbz2\\nin the MS-DTYP ACL wire format, which must be zero [1].\\n\\nWhen building an ACL descriptor in build_sec_desc(), we are using a\\nkmalloc()\u0027ed descriptor buffer and writing the fields explicitly using\\nle16() writes now. This never writes to the 2 byte reserved field,\\nleaving it as uninitialized heap data.\\n\\nWhen the reserved field happens to contain non-zero slab garbage,\\nSamba rejects the security descriptor with \\\"ndr_pull_security_descriptor\\nfailed: Range Error\\\", causing chmod to fail with EINVAL.\\n\\nChange kmalloc() to kzalloc() to ensure the entire buffer is\\nzero-initialized.\\n\\n\\n[1] https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dtyp/20233ed8-a6c6-4097-aafa-dd545ed24428\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/4c3ed344a970aad51388ac3b0145b98318f0e21f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/5e489c6c47a2ac15edbaca153b9348e42c1eacab\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/941a1e6eb35440336913afc88a82103291956d5d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9bdb2ca31368b7671949dfb94a5d57ffccd01edd\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/be1ef9512a3f5a755895c24f31b334342f4aa15b\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


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…