Search

Find a vulnerability

Search criteria Use this form to refine search results.
Full-text search supports keyword queries with ranking and filtering.
You can combine vendor, product, and sources to narrow results.
Enable “Apply ordering” to sort by date instead of relevance.

    29564 vulnerabilities found for linux_kernel by linux

    CVE-2026-64298 (GCVE-0-2026-64298)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    NFSv4: include MAY_WRITE in open permission mask for O_TRUNC
    Summary
    In the Linux kernel, the following vulnerability has been resolved: NFSv4: include MAY_WRITE in open permission mask for O_TRUNC POSIX requires write permission to truncate a file, so an open() that specifies O_TRUNC must be authorized for write access regardless of the O_ACCMODE access mode. nfs_open_permission_mask() builds the access mask passed to nfs_may_open(), which is the local authorization gate for OPENs the client serves itself from a cached write delegation via the can_open_delegated() path in nfs4_try_open_cached(). The mask is derived from O_ACCMODE alone, so an open(O_RDONLY | O_TRUNC) against a file the caller cannot write requests only MAY_READ and passes the local check. The OPEN is then satisfied locally and the truncation is issued to the server as a SETATTR(size=0) over the delegation stateid, which the server accepts under standard write-delegation semantics. POSIX requires that this open fail with EACCES. Include MAY_WRITE in the mask whenever O_TRUNC is set so the local check matches the access the server would have enforced.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 4817c8974315b666e895b7d1bb83cd3664c323b1 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < cb148a2762d644bff1894728e8835a9a4b84f9ea (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 30fdf4df6c3c00efec947e4ddf97f0fdd4473628 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 22c1fd1355ad4ca27aa7f0fa02719122dd92d9de (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 6bd7d0a06b53c4e797e1a9cea0d2d41aa1b26230 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < a937e92c1d00534b5c2e3e9f4381b7e988180797 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < e36501b7d4abdcd6d69a7cb901b2f286b7a3d041 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 5140f099ecd8a2f2808b7f7b720ee1bad8468974 (git)
    Create a notification for this product.
    Linux Linux Affected: 2.6.24
    Unaffected: 0 , < 2.6.24 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (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.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-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/nfs/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "4817c8974315b666e895b7d1bb83cd3664c323b1",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "cb148a2762d644bff1894728e8835a9a4b84f9ea",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "30fdf4df6c3c00efec947e4ddf97f0fdd4473628",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "22c1fd1355ad4ca27aa7f0fa02719122dd92d9de",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "6bd7d0a06b53c4e797e1a9cea0d2d41aa1b26230",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "a937e92c1d00534b5c2e3e9f4381b7e988180797",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "e36501b7d4abdcd6d69a7cb901b2f286b7a3d041",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "5140f099ecd8a2f2808b7f7b720ee1bad8468974",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/nfs/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "2.6.24"
                },
                {
                  "lessThan": "2.6.24",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc3",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.10.261",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc3",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nNFSv4: include MAY_WRITE in open permission mask for O_TRUNC\n\nPOSIX requires write permission to truncate a file, so an open() that\nspecifies O_TRUNC must be authorized for write access regardless of the\nO_ACCMODE access mode.\n\nnfs_open_permission_mask() builds the access mask passed to\nnfs_may_open(), which is the local authorization gate for OPENs the\nclient serves itself from a cached write delegation via the\ncan_open_delegated() path in nfs4_try_open_cached().  The mask is\nderived from O_ACCMODE alone, so an open(O_RDONLY | O_TRUNC) against a\nfile the caller cannot write requests only MAY_READ and passes the\nlocal check.  The OPEN is then satisfied locally and the truncation is\nissued to the server as a SETATTR(size=0) over the delegation stateid,\nwhich the server accepts under standard write-delegation semantics.\nPOSIX requires that this open fail with EACCES.\n\nInclude MAY_WRITE in the mask whenever O_TRUNC is set so the local\ncheck matches the access the server would have enforced."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.1,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - An unprivileged local process triggers the flaw through open/openat with O_RDONLY|O_TRUNC on an accessible NFSv4-mounted file. The resulting NFS RPC is outbound and does not make the attack remotely reachable.\nAC:L - Once the client holds a standard cached write delegation, a single deterministic open triggers the unauthorized truncation without a race or timing requirement. Delegations persist and the attacker can repeatedly target files actively written through the same client.\nPR:L - The attacker needs only ordinary local access and read/search permission for the target path; no capability or administrative privilege is required. User namespaces are unnecessary.\nUI:N - The attacker invokes open directly and no contemporaneous action by another user is required.\nS:U - The faulty client-side permission check and modification of the delegated NFS file remain within the NFS filesystem access-control authority.\nC:N - The flaw discloses no kernel or file data beyond content the caller was already authorized to read, and it involves no memory corruption.\nI:H - The attacker can irreversibly truncate the complete contents of a file for which write access was denied, causing total integrity loss of that resource.\nA:H - Truncating critical NFS-hosted executables, configuration, databases, or operational data can completely disable dependent systems or services, and the attack can be repeated against additional delegated files."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:41.562Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/4817c8974315b666e895b7d1bb83cd3664c323b1"
            },
            {
              "url": "https://git.kernel.org/stable/c/cb148a2762d644bff1894728e8835a9a4b84f9ea"
            },
            {
              "url": "https://git.kernel.org/stable/c/30fdf4df6c3c00efec947e4ddf97f0fdd4473628"
            },
            {
              "url": "https://git.kernel.org/stable/c/22c1fd1355ad4ca27aa7f0fa02719122dd92d9de"
            },
            {
              "url": "https://git.kernel.org/stable/c/6bd7d0a06b53c4e797e1a9cea0d2d41aa1b26230"
            },
            {
              "url": "https://git.kernel.org/stable/c/a937e92c1d00534b5c2e3e9f4381b7e988180797"
            },
            {
              "url": "https://git.kernel.org/stable/c/e36501b7d4abdcd6d69a7cb901b2f286b7a3d041"
            },
            {
              "url": "https://git.kernel.org/stable/c/5140f099ecd8a2f2808b7f7b720ee1bad8468974"
            }
          ],
          "title": "NFSv4: include MAY_WRITE in open permission mask for O_TRUNC",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64298",
        "datePublished": "2026-07-25T08:49:35.101Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-08-05T12:40:41.562Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64297 (GCVE-0-2026-64297)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    module: decompress: check return value of module_extend_max_pages()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: module: decompress: check return value of module_extend_max_pages() module_extend_max_pages() calls kvrealloc() internally and returns -ENOMEM on allocation failure. The return value is never checked. If the initial allocation fails, info->pages remains NULL and info->max_pages remains 0. Subsequent calls to module_get_next_page() will attempt to dynamically grow the array by calling module_extend_max_pages(info, 0) since info->used_pages is 0. This results in kvrealloc(NULL, 0) returning ZERO_SIZE_PTR, which is treated as a success, leading to a dereference of ZERO_SIZE_PTR and a kernel oops. Fix: add the missing error check after module_extend_max_pages() and return immediately on failure. This matches the pattern used by every other kvrealloc() caller in the module loading path. [Sami: Corrected the analysis in the commit message.]
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < e7f174715f9f0cbcb9e87b52e4fc4ef149baac98 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < afcc0515bbdd28d509a2b5870faaa89b137f5d53 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < 168072baf9ad516d5a06046514c7fea4c0671990 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < a82e170637e050a803b4f37542371ef216bf66d2 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < e7da02659c229f73492fb1ed87ceda4090153aaa (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < 786d2d84416a9a1c1a47b71a68d679d886284be2 (git)
    Create a notification for this product.
    Linux Linux Affected: 5.17
    Unaffected: 0 , < 5.17 (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "kernel/module/decompress.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "e7f174715f9f0cbcb9e87b52e4fc4ef149baac98",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "afcc0515bbdd28d509a2b5870faaa89b137f5d53",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "168072baf9ad516d5a06046514c7fea4c0671990",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "a82e170637e050a803b4f37542371ef216bf66d2",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "e7da02659c229f73492fb1ed87ceda4090153aaa",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "786d2d84416a9a1c1a47b71a68d679d886284be2",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "kernel/module/decompress.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.17"
                },
                {
                  "lessThan": "5.17",
                  "status": "unaffected",
                  "version": "0",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmodule: decompress: check return value of module_extend_max_pages()\n\nmodule_extend_max_pages() calls kvrealloc() internally and returns\n-ENOMEM on allocation failure. The return value is never checked.\n\nIf the initial allocation fails, info-\u003epages remains NULL and\ninfo-\u003emax_pages remains 0. Subsequent calls to module_get_next_page()\nwill attempt to dynamically grow the array by calling\nmodule_extend_max_pages(info, 0) since info-\u003eused_pages is 0. This\nresults in kvrealloc(NULL, 0) returning ZERO_SIZE_PTR, which is treated\nas a success, leading to a dereference of ZERO_SIZE_PTR and a kernel\noops.\n\nFix: add the missing error check after module_extend_max_pages() and\nreturn immediately on failure. This matches the pattern used by every\nother kvrealloc() caller in the module loading path.\n\n[Sami: Corrected the analysis in the commit message.]"
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:34.486Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/e7f174715f9f0cbcb9e87b52e4fc4ef149baac98"
            },
            {
              "url": "https://git.kernel.org/stable/c/afcc0515bbdd28d509a2b5870faaa89b137f5d53"
            },
            {
              "url": "https://git.kernel.org/stable/c/168072baf9ad516d5a06046514c7fea4c0671990"
            },
            {
              "url": "https://git.kernel.org/stable/c/a82e170637e050a803b4f37542371ef216bf66d2"
            },
            {
              "url": "https://git.kernel.org/stable/c/e7da02659c229f73492fb1ed87ceda4090153aaa"
            },
            {
              "url": "https://git.kernel.org/stable/c/786d2d84416a9a1c1a47b71a68d679d886284be2"
            }
          ],
          "title": "module: decompress: check return value of module_extend_max_pages()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64297",
        "datePublished": "2026-07-25T08:49:34.486Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:34.486Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64296 (GCVE-0-2026-64296)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    exfat: bound uniname advance in exfat_find_dir_entry()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: exfat: bound uniname advance in exfat_find_dir_entry() In exfat_find_dir_entry(), each TYPE_EXTEND (file name) entry advances the output pointer by a fixed amount while the loop guard only tracks the accumulated name length: if (++order == 2) uniname = p_uniname->name; else uniname += EXFAT_FILE_NAME_LEN; len = exfat_extract_uni_name(ep, entry_uniname); name_len += len; unichar = *(uniname+len); *(uniname+len) = 0x0; uniname grows by EXFAT_FILE_NAME_LEN (15) per name entry, but name_len grows only by the actual extracted length, which is shorter when a name fragment contains an early NUL. The only guard is `name_len >= MAX_NAME_LENGTH`, so a crafted directory with many short name fragments lets uniname run far past the p_uniname->name[MAX_NAME_LENGTH + 3] buffer while name_len stays small, causing an out-of-bounds read and write at *(uniname+len). The sibling extractor exfat_get_uniname_from_ext_entry() already stops on a short fragment (the lockstep `len != EXFAT_FILE_NAME_LEN` guard added in commit d42334578eba ("exfat: check if filename entries exceeds max filename length")); exfat_find_dir_entry() never got the equivalent. Track the per-entry write offset as a count and reject a fragment once the offset, or the offset plus the extracted length, would exceed MAX_NAME_LENGTH, before forming the output pointer.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 72a2589d82eb001c94b74bcfe6f9a599bd9bef60 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < fae76a94b35ee8c0e2eb6f64caca01d75c6d34e4 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < cf85180b8a015029ee147694eaf4e0b3537e9432 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < ce4736c1e6c4cfbf1ac409a8c328a0b69546c9a0 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 727bf7783a2936ffd55c628dddfd69343e511dcf (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 33c0b96d7e1672be1de0053786637ea46fb81507 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < c8e041c68c0bbb73aa62371ee63947bb6949d8b2 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 3a1230e7b043c62737b05a3e9275ca83a43ad20a (git)
    Create a notification for this product.
    Linux Linux Affected: 5.7
    Unaffected: 0 , < 5.7 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (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.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/exfat/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "72a2589d82eb001c94b74bcfe6f9a599bd9bef60",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "fae76a94b35ee8c0e2eb6f64caca01d75c6d34e4",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "cf85180b8a015029ee147694eaf4e0b3537e9432",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "ce4736c1e6c4cfbf1ac409a8c328a0b69546c9a0",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "727bf7783a2936ffd55c628dddfd69343e511dcf",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "33c0b96d7e1672be1de0053786637ea46fb81507",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "c8e041c68c0bbb73aa62371ee63947bb6949d8b2",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "3a1230e7b043c62737b05a3e9275ca83a43ad20a",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/exfat/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.7"
                },
                {
                  "lessThan": "5.7",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.10.261",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nexfat: bound uniname advance in exfat_find_dir_entry()\n\nIn exfat_find_dir_entry(), each TYPE_EXTEND (file name) entry advances the\noutput pointer by a fixed amount while the loop guard only tracks the\naccumulated name length:\n\n\tif (++order == 2)\n\t\tuniname = p_uniname-\u003ename;\n\telse\n\t\tuniname += EXFAT_FILE_NAME_LEN;\n\tlen = exfat_extract_uni_name(ep, entry_uniname);\n\tname_len += len;\n\tunichar = *(uniname+len);\n\t*(uniname+len) = 0x0;\n\nuniname grows by EXFAT_FILE_NAME_LEN (15) per name entry, but name_len\ngrows only by the actual extracted length, which is shorter when a name\nfragment contains an early NUL.  The only guard is\n`name_len \u003e= MAX_NAME_LENGTH`, so a crafted directory with many short\nname fragments lets uniname run far past the\np_uniname-\u003ename[MAX_NAME_LENGTH + 3] buffer while name_len stays small,\ncausing an out-of-bounds read and write at *(uniname+len).\n\nThe sibling extractor exfat_get_uniname_from_ext_entry() already stops\non a short fragment (the lockstep `len != EXFAT_FILE_NAME_LEN` guard\nadded in commit d42334578eba (\"exfat: check if filename entries exceeds\nmax filename length\")); exfat_find_dir_entry() never got the\nequivalent.  Track the per-entry write offset as a count and reject a\nfragment once the offset, or the offset plus the extracted length, would\nexceed MAX_NAME_LENGTH, before forming the output pointer."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - A crafted exFAT image is reached through local pathname operations such as openat(), which call exfat_lookup(), exfat_find(), and exfat_find_dir_entry(); loop-backed images make physical access unnecessary.\nAC:L - The attacker controls the stream hash, declared name length, extension-entry sequence, and early NUL characters, making the out-of-bounds access deterministic without a race or uncontrollable condition.\nPR:L - Although exFAT cannot be mounted directly from a user namespace, common storage brokers allow an active unprivileged user to mount a loop-backed non-system image. Once mounted, triggering lookup requires only ordinary directory search access and no capability.\nUI:N - The unprivileged attacker can mount the crafted image through such a storage broker and issue the triggering pathname lookup without another user\u0027s action.\nS:U - The vulnerable filesystem parser and the affected kernel memory belong to the same security authority; ordinary kernel privilege escalation does not change scope.\nC:H - Crafted entries cause repeated out-of-bounds 16-bit reads across the kernel stack, and filename comparison behavior can provide an oracle over attacker-selected stack locations. Successful control-flow corruption could disclose arbitrary kernel memory.\nI:H - The function writes zero beyond the stack buffer, and the successful-match path can jump to found without restoring the overwritten value. Attacker-selected stack control data or pointers can therefore be corrupted, potentially enabling arbitrary writes or kernel code execution.\nA:H - Zero-length fragments can advance the pointer until it reaches a stack guard page or corrupts control data, causing an oops, panic, or persistent lockup."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:40.483Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/72a2589d82eb001c94b74bcfe6f9a599bd9bef60"
            },
            {
              "url": "https://git.kernel.org/stable/c/fae76a94b35ee8c0e2eb6f64caca01d75c6d34e4"
            },
            {
              "url": "https://git.kernel.org/stable/c/cf85180b8a015029ee147694eaf4e0b3537e9432"
            },
            {
              "url": "https://git.kernel.org/stable/c/ce4736c1e6c4cfbf1ac409a8c328a0b69546c9a0"
            },
            {
              "url": "https://git.kernel.org/stable/c/727bf7783a2936ffd55c628dddfd69343e511dcf"
            },
            {
              "url": "https://git.kernel.org/stable/c/33c0b96d7e1672be1de0053786637ea46fb81507"
            },
            {
              "url": "https://git.kernel.org/stable/c/c8e041c68c0bbb73aa62371ee63947bb6949d8b2"
            },
            {
              "url": "https://git.kernel.org/stable/c/3a1230e7b043c62737b05a3e9275ca83a43ad20a"
            }
          ],
          "title": "exfat: bound uniname advance in exfat_find_dir_entry()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64296",
        "datePublished": "2026-07-25T08:49:33.847Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-08-05T12:40:40.483Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64295 (GCVE-0-2026-64295)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    mm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access
    Summary
    In the Linux kernel, the following vulnerability has been resolved: mm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access The page_ext iteration API does not validate if the PFN still belongs to a valid section while advancing the iterator. When dynamically adding memory in the hotplug path, it can lead to a NULL pointer dereference during page_ext_lookup at the boundary of the last valid section when iterator count equals __pgcount. The for_each_page_ext() macro calls page_ext_iter_next() as its loop increment. for_each_page_ext() does a "__page_ext = page_ext_iter_next(&__iter)" at the end. This causes page_ext_iter_next() to increment iter->index past __pgcount and call page_ext_lookup(start_pfn + __pgcount). During memory hotplug (online), the PFN at start_pfn + __pgcount may belong to a section that has not yet been initialized, causing page_ext_lookup() to trigger a NULL pointer dereference. [ 14.555124][ T846] Call trace: [ 14.555125][ T846] lookup_page_ext+0x6c/0x108 (P) [ 14.555127][ T846] page_ext_lookup+0x30/0x3c [ 14.555129][ T846] __reset_page_owner+0x11c/0x260 [ 14.571201][ T846] __free_pages_ok+0x5e8/0x8e0 [ 14.571204][ T846] __free_pages_core+0x78/0xf0 [ 14.571206][ T846] generic_online_page+0x14/0x24 [ 14.597782][ T846] online_pages+0x178/0x30c [ 14.597784][ T846] memory_block_change_state+0x284/0x32c [ 14.597787][ T846] memory_subsys_online+0x4c/0x64 [ 14.597789][ T846] device_online+0x88/0xb0 [ 14.597791][ T846] online_memory_block+0x30/0x40 [ 14.597793][ T846] walk_memory_blocks+0xac/0xe8 [ 14.597794][ T846] add_memory_resource+0x280/0x298 [ 14.656161][ T846] add_memory+0x60/0x98 Move the iteration boundary enforcement inside the iterator functions, so callers cannot inadvertently access beyond the requested range.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 9039b9096ea27a20f0349d1537537663c935c8ed , < 8dcaa0f87a88d720d13106f3a306c6b61d189d86 (git)
    Affected: 9039b9096ea27a20f0349d1537537663c935c8ed , < 377b1cd6bbcf327338cd951cc2fd74bc75540235 (git)
    Affected: 9039b9096ea27a20f0349d1537537663c935c8ed , < ffd017237cfe99e6e5602ab14179b0e6878a0840 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc3 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "include/linux/page_ext.h"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "8dcaa0f87a88d720d13106f3a306c6b61d189d86",
                  "status": "affected",
                  "version": "9039b9096ea27a20f0349d1537537663c935c8ed",
                  "versionType": "git"
                },
                {
                  "lessThan": "377b1cd6bbcf327338cd951cc2fd74bc75540235",
                  "status": "affected",
                  "version": "9039b9096ea27a20f0349d1537537663c935c8ed",
                  "versionType": "git"
                },
                {
                  "lessThan": "ffd017237cfe99e6e5602ab14179b0e6878a0840",
                  "status": "affected",
                  "version": "9039b9096ea27a20f0349d1537537663c935c8ed",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "include/linux/page_ext.h"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc3",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc3",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access\n\nThe page_ext iteration API does not validate if the PFN still belongs to a\nvalid section while advancing the iterator.  When dynamically adding\nmemory in the hotplug path, it can lead to a NULL pointer dereference\nduring page_ext_lookup at the boundary of the last valid section when\niterator count equals __pgcount.\n\nThe for_each_page_ext() macro calls page_ext_iter_next() as its loop\nincrement.  for_each_page_ext() does a \"__page_ext =\npage_ext_iter_next(\u0026__iter)\" at the end.  This causes page_ext_iter_next()\nto increment iter-\u003eindex past __pgcount and call page_ext_lookup(start_pfn\n+ __pgcount).  During memory hotplug (online), the PFN at start_pfn +\n__pgcount may belong to a section that has not yet been initialized,\ncausing page_ext_lookup() to trigger a NULL pointer dereference.\n\n[   14.555124][  T846] Call trace:\n[   14.555125][  T846]  lookup_page_ext+0x6c/0x108 (P)\n[   14.555127][  T846]  page_ext_lookup+0x30/0x3c\n[   14.555129][  T846]  __reset_page_owner+0x11c/0x260\n[   14.571201][  T846]  __free_pages_ok+0x5e8/0x8e0\n[   14.571204][  T846]  __free_pages_core+0x78/0xf0\n[   14.571206][  T846]  generic_online_page+0x14/0x24\n[   14.597782][  T846]  online_pages+0x178/0x30c\n[   14.597784][  T846]  memory_block_change_state+0x284/0x32c\n[   14.597787][  T846]  memory_subsys_online+0x4c/0x64\n[   14.597789][  T846]  device_online+0x88/0xb0\n[   14.597791][  T846]  online_memory_block+0x30/0x40\n[   14.597793][  T846]  walk_memory_blocks+0xac/0xe8\n[   14.597794][  T846]  add_memory_resource+0x280/0x298\n[   14.656161][  T846]  add_memory+0x60/0x98\n\nMove the iteration boundary enforcement inside the iterator functions, so\ncallers cannot inadvertently access beyond the requested range."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:33.194Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/8dcaa0f87a88d720d13106f3a306c6b61d189d86"
            },
            {
              "url": "https://git.kernel.org/stable/c/377b1cd6bbcf327338cd951cc2fd74bc75540235"
            },
            {
              "url": "https://git.kernel.org/stable/c/ffd017237cfe99e6e5602ab14179b0e6878a0840"
            }
          ],
          "title": "mm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64295",
        "datePublished": "2026-07-25T08:49:33.194Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:33.194Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64294 (GCVE-0-2026-64294)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    mm: do file ownership checks with the proper mount idmap
    Summary
    In the Linux kernel, the following vulnerability has been resolved: mm: do file ownership checks with the proper mount idmap Ever since idmapped mounts were introduced, inode ownership checks (for side-channel protection) in mincore() and madvise(MADV_PAGEOUT) were done against the nop_mnt_idmap, which completely ignores the file's mount's idmap. This results in odd edgecases like: 1) mount/bind-mount with an idmap userA:userB:1 2) userB runs an owner_or_capable() check on file that is owned by userA on-disk/in-memory, but owned by userB after idmap translation 3) owner_or_capable() mysteriously fails as the correct idmap wasn't supplied In the case of mincore/madvise MADV_PAGEOUT, this is usually benign, because file_permission(file, MAY_WRITE) will probably succeed, as it uses the proper idmap internally, but it does not need to be the case on e.g a 0444 file where even the owner itself doesn't have permissions to write to it. Since this is clearly not trivial to get right, introduce a file_owner_or_capable() that can carry the correct semantics, and switch the various users in mm to it. The issue was found by manual code inspection & an off-list discussion with Jan Kara.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 744b23aa430d52f5c8e4dbff7d71496d6643bed2 (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 8344bdf0629457e532797b42d9d2bbf2a2900bbf (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 5c942ad7df75925ee166e7f0fb36892d8dde376b (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 04ba248d02d9eaa3d9077b00a6134caa75fa3e90 (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < e187bc02f8fa4226d62814592cf064ee4557c470 (git)
    Create a notification for this product.
    Linux Linux Affected: 5.12
    Unaffected: 0 , < 5.12 (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc3 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "include/linux/fs.h",
                "mm/filemap.c",
                "mm/madvise.c",
                "mm/mincore.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "744b23aa430d52f5c8e4dbff7d71496d6643bed2",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "8344bdf0629457e532797b42d9d2bbf2a2900bbf",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "5c942ad7df75925ee166e7f0fb36892d8dde376b",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "04ba248d02d9eaa3d9077b00a6134caa75fa3e90",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "e187bc02f8fa4226d62814592cf064ee4557c470",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "include/linux/fs.h",
                "mm/filemap.c",
                "mm/madvise.c",
                "mm/mincore.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.12"
                },
                {
                  "lessThan": "5.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc3",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc3",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmm: do file ownership checks with the proper mount idmap\n\nEver since idmapped mounts were introduced, inode ownership checks (for\nside-channel protection) in mincore() and madvise(MADV_PAGEOUT) were done\nagainst the nop_mnt_idmap, which completely ignores the file\u0027s mount\u0027s\nidmap.  This results in odd edgecases like:\n\n1) mount/bind-mount with an idmap userA:userB:1\n2) userB runs an owner_or_capable() check on file that is owned by userA\non-disk/in-memory, but owned by userB after idmap translation\n3) owner_or_capable() mysteriously fails as the correct idmap wasn\u0027t supplied\n\nIn the case of mincore/madvise MADV_PAGEOUT, this is usually benign,\nbecause file_permission(file, MAY_WRITE) will probably succeed, as it uses\nthe proper idmap internally, but it does not need to be the case on e.g a\n0444 file where even the owner itself doesn\u0027t have permissions to write to\nit.\n\nSince this is clearly not trivial to get right, introduce a\nfile_owner_or_capable() that can carry the correct semantics, and switch\nthe various users in mm to it.\n\nThe issue was found by manual code inspection \u0026 an off-list discussion\nwith Jan Kara."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:32.570Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/744b23aa430d52f5c8e4dbff7d71496d6643bed2"
            },
            {
              "url": "https://git.kernel.org/stable/c/8344bdf0629457e532797b42d9d2bbf2a2900bbf"
            },
            {
              "url": "https://git.kernel.org/stable/c/5c942ad7df75925ee166e7f0fb36892d8dde376b"
            },
            {
              "url": "https://git.kernel.org/stable/c/04ba248d02d9eaa3d9077b00a6134caa75fa3e90"
            },
            {
              "url": "https://git.kernel.org/stable/c/e187bc02f8fa4226d62814592cf064ee4557c470"
            }
          ],
          "title": "mm: do file ownership checks with the proper mount idmap",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64294",
        "datePublished": "2026-07-25T08:49:32.570Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:32.570Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64293 (GCVE-0-2026-64293)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    iommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read
    Summary
    In the Linux kernel, the following vulnerability has been resolved: iommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read The bound-check in iommufd_veventq_fops_read() for the normal vEVENT path uses sizeof(hdr) where the surrounding code uses sizeof(*hdr): if (!vevent_for_lost_events_header(cur) && sizeof(hdr) + cur->data_len > count - done) { hdr is declared as struct iommufd_vevent_header *, so sizeof(hdr) evaluates to the size of the pointer. Surrounding code uses sizeof(*hdr) consistently: if (done >= count || sizeof(*hdr) > count - done) { ... if (copy_to_user(buf + done, hdr, sizeof(*hdr))) { ... done += sizeof(*hdr); struct iommufd_vevent_header is currently 8 bytes (two __u32 fields, flags and sequence), so on 64-bit (sizeof(void *) == 8) the two expressions happen to be equal and the check works as intended. On 32-bit (sizeof(void *) == 4) the check under-counts the header by 4 bytes: a vEVENT whose data_len causes 8 + cur->data_len to exceed count - done while 4 + cur->data_len does not will pass the check, then the loop will copy_to_user 8 bytes of header followed by data_len bytes of payload, writing past the user-supplied buffer. It is also a latent bug for any future expansion of struct iommufd_vevent_header beyond sizeof(void *) on 64-bit; the check should not depend on the type happening to match the host pointer width. Use sizeof(*hdr) to match the rest of the function and the actual amount that will be copied.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 04a177f91160ee18da98f5689482cf0f589ec869 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 0cdbb97a4dbd69abdd2ab998b4fbc7803d4b0b72 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < be93d186ae88a92e7aa77e122d4e661fa57b1e39 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "04a177f91160ee18da98f5689482cf0f589ec869",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "0cdbb97a4dbd69abdd2ab998b4fbc7803d4b0b72",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "be93d186ae88a92e7aa77e122d4e661fa57b1e39",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read\n\nThe bound-check in iommufd_veventq_fops_read() for the normal vEVENT\npath uses sizeof(hdr) where the surrounding code uses sizeof(*hdr):\n\n\tif (!vevent_for_lost_events_header(cur) \u0026\u0026\n\t    sizeof(hdr) + cur-\u003edata_len \u003e count - done) {\n\nhdr is declared as struct iommufd_vevent_header *, so sizeof(hdr)\nevaluates to the size of the pointer.  Surrounding code uses\nsizeof(*hdr) consistently:\n\n\tif (done \u003e= count || sizeof(*hdr) \u003e count - done) {\n\t...\n\tif (copy_to_user(buf + done, hdr, sizeof(*hdr))) {\n\t...\n\tdone += sizeof(*hdr);\n\nstruct iommufd_vevent_header is currently 8 bytes (two __u32 fields,\nflags and sequence), so on 64-bit (sizeof(void *) == 8) the two\nexpressions happen to be equal and the check works as intended.\n\nOn 32-bit (sizeof(void *) == 4) the check under-counts the header by\n4 bytes: a vEVENT whose data_len causes 8 + cur-\u003edata_len to exceed\ncount - done while 4 + cur-\u003edata_len does not will pass the check,\nthen the loop will copy_to_user 8 bytes of header followed by data_len\nbytes of payload, writing past the user-supplied buffer.\n\nIt is also a latent bug for any future expansion of struct\niommufd_vevent_header beyond sizeof(void *) on 64-bit; the check\nshould not depend on the type happening to match the host pointer\nwidth.\n\nUse sizeof(*hdr) to match the rest of the function and the actual\namount that will be copied."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The vulnerable function is reached through read() on a locally held iommufd vEVENTQ file descriptor; it is not directly network- or device-packet-facing.\nAC:L - On an affected 32-bit deployment, the attacker can deterministically queue an event and choose a count that is one to four bytes too small; no race or uncontrollable condition is required.\nPR:L - No capability check occurs during the vulnerable read, and an unprivileged VMM or user granted an iommufd/vEVENTQ descriptor can invoke it without real init-namespace root.\nUI:N - Exploitation requires only attacker-controlled event generation and a read syscall; no separate victim action is required.\nS:U - The corruption occurs through the host kernel\u0027s userspace API and does not itself bypass an IOMMU boundary or demonstrate a guest-to-host escape.\nC:H - The four-byte overwrite can replace a complete pointer or control word in a 32-bit event consumer, potentially enabling code execution and disclosure of arbitrary process secrets.\nI:H - The kernel writes up to four payload bytes beyond the declared userspace buffer, which can corrupt a full 32-bit control value and potentially permit control-flow hijacking.\nA:H - The overwrite can crash a privileged VMM or other event-consuming service, and controllable event generation permits the condition to be triggered repeatedly."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:39.398Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/04a177f91160ee18da98f5689482cf0f589ec869"
            },
            {
              "url": "https://git.kernel.org/stable/c/0cdbb97a4dbd69abdd2ab998b4fbc7803d4b0b72"
            },
            {
              "url": "https://git.kernel.org/stable/c/be93d186ae88a92e7aa77e122d4e661fa57b1e39"
            }
          ],
          "title": "iommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64293",
        "datePublished": "2026-07-25T08:49:31.945Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-08-05T12:40:39.398Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64292 (GCVE-0-2026-64292)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    iommufd: Move vevent memory allocation outside spinlock
    Summary
    In the Linux kernel, the following vulnerability has been resolved: iommufd: Move vevent memory allocation outside spinlock The veventq memory allocation happens inside the spinlock. Given its depth is decided by the user space, this leaves a vulnerability, where userspace can allocate large queues to exhaust atomic memory reserves. Move the allocation outside the spinlock and use GFP_NOWAIT, which can fail fast under memory pressure without dipping into the GFP_ATOMIC reserves or direct-reclaiming from the threaded IRQ handler. On allocation failure, queue the lost_events_header (so userspace learns of the drop) and return -ENOMEM so the caller learns of the kernel-side memory pressure. This is intentionally distinct from the queue-overflow path, which also queues the lost_events_header but returns 0: a full queue is an expected userspace-pacing condition rather than a kernel error. A subsequent change will cap the upper bound of the veventq_depth.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 779480ea79551c31964e74b9aef0e730faa3aa11 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 6c5fc40200cd0a87d66a368eee00df4d1cca946e (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 47443565d10c51366c9382dbc8597cd6c460b8a2 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.40 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/driver.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "779480ea79551c31964e74b9aef0e730faa3aa11",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6c5fc40200cd0a87d66a368eee00df4d1cca946e",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "47443565d10c51366c9382dbc8597cd6c460b8a2",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/driver.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.40",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.40",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommufd: Move vevent memory allocation outside spinlock\n\nThe veventq memory allocation happens inside the spinlock. Given its depth\nis decided by the user space, this leaves a vulnerability, where userspace\ncan allocate large queues to exhaust atomic memory reserves.\n\nMove the allocation outside the spinlock and use GFP_NOWAIT, which can fail\nfast under memory pressure without dipping into the GFP_ATOMIC reserves or\ndirect-reclaiming from the threaded IRQ handler. On allocation failure,\nqueue the lost_events_header (so userspace learns of the drop) and return\n-ENOMEM so the caller learns of the kernel-side memory pressure.\n\nThis is intentionally distinct from the queue-overflow path, which also\nqueues the lost_events_header but returns 0: a full queue is an expected\nuserspace-pacing condition rather than a kernel error.\n\nA subsequent change will cap the upper bound of the veventq_depth."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:31.325Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/779480ea79551c31964e74b9aef0e730faa3aa11"
            },
            {
              "url": "https://git.kernel.org/stable/c/6c5fc40200cd0a87d66a368eee00df4d1cca946e"
            },
            {
              "url": "https://git.kernel.org/stable/c/47443565d10c51366c9382dbc8597cd6c460b8a2"
            }
          ],
          "title": "iommufd: Move vevent memory allocation outside spinlock",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64292",
        "datePublished": "2026-07-25T08:49:31.325Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:31.325Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64291 (GCVE-0-2026-64291)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    iommufd: Set veventq_depth upper bound
    Summary
    In the Linux kernel, the following vulnerability has been resolved: iommufd: Set veventq_depth upper bound iommufd_veventq_alloc() accepts any !0 veventq_depth from userspace, with an upper bound at U32_MAX. This leaves a vulnerability where userspace can allocate excessively large queues to exhaust kernel memory reserves. Cap the veventq_depth (maximum number of entries) to 1 << 19, matching the maximum number of entries in the SMMUv3 EVTQ (the largest use case today).
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < f565297edf316016be4a1a9e2eb9f39359313f43 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < e7b5e55652746b1221b9c10ff80eae8a154101ba (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 6ebf2eb46fbd5b40393ff8fbb847ba96925beaff (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "f565297edf316016be4a1a9e2eb9f39359313f43",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "e7b5e55652746b1221b9c10ff80eae8a154101ba",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6ebf2eb46fbd5b40393ff8fbb847ba96925beaff",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommufd: Set veventq_depth upper bound\n\niommufd_veventq_alloc() accepts any !0 veventq_depth from userspace, with\nan upper bound at U32_MAX.\n\nThis leaves a vulnerability where userspace can allocate excessively large\nqueues to exhaust kernel memory reserves.\n\nCap the veventq_depth (maximum number of entries) to 1 \u003c\u003c 19, matching the\nmaximum number of entries in the SMMUv3 EVTQ (the largest use case today)."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:30.686Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/f565297edf316016be4a1a9e2eb9f39359313f43"
            },
            {
              "url": "https://git.kernel.org/stable/c/e7b5e55652746b1221b9c10ff80eae8a154101ba"
            },
            {
              "url": "https://git.kernel.org/stable/c/6ebf2eb46fbd5b40393ff8fbb847ba96925beaff"
            }
          ],
          "title": "iommufd: Set veventq_depth upper bound",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64291",
        "datePublished": "2026-07-25T08:49:30.686Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:30.686Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64290 (GCVE-0-2026-64290)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-03 09:32
    VLAI
    Title
    iommufd: Break the loop on failure in iommufd_fault_fops_read()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: iommufd: Break the loop on failure in iommufd_fault_fops_read() On a copy_to_user() failure inside the inner list_for_each_entry, only the inner loop breaks; the outer while re-fetches the just-restored fault group and retries the failing copy_to_user() forever, spinning the reader at 100% CPU with fault->mutex held. Check rc after the inner loop and break the outer while as well.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 07838f7fd529c8a6de44b601d4b7057e6c8d36ed , < a38e0714affc5c0bbb40cba5a65d6d32a5e72a71 (git)
    Affected: 07838f7fd529c8a6de44b601d4b7057e6c8d36ed , < 5539da127d03c1f6c2e2a49fdfbe331a0ccbdea8 (git)
    Affected: 07838f7fd529c8a6de44b601d4b7057e6c8d36ed , < f66c16b175509642ee7082df57c9bf3deaebae1a (git)
    Affected: 07838f7fd529c8a6de44b601d4b7057e6c8d36ed , < 172fc8b19825a0f5884c38f2289188284e2d45ee (git)
    Create a notification for this product.
    Linux Linux Affected: 6.11
    Unaffected: 0 , < 6.11 (semver)
    Unaffected: 6.12.101 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "a38e0714affc5c0bbb40cba5a65d6d32a5e72a71",
                  "status": "affected",
                  "version": "07838f7fd529c8a6de44b601d4b7057e6c8d36ed",
                  "versionType": "git"
                },
                {
                  "lessThan": "5539da127d03c1f6c2e2a49fdfbe331a0ccbdea8",
                  "status": "affected",
                  "version": "07838f7fd529c8a6de44b601d4b7057e6c8d36ed",
                  "versionType": "git"
                },
                {
                  "lessThan": "f66c16b175509642ee7082df57c9bf3deaebae1a",
                  "status": "affected",
                  "version": "07838f7fd529c8a6de44b601d4b7057e6c8d36ed",
                  "versionType": "git"
                },
                {
                  "lessThan": "172fc8b19825a0f5884c38f2289188284e2d45ee",
                  "status": "affected",
                  "version": "07838f7fd529c8a6de44b601d4b7057e6c8d36ed",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.11"
                },
                {
                  "lessThan": "6.11",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.101",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.101",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommufd: Break the loop on failure in iommufd_fault_fops_read()\n\nOn a copy_to_user() failure inside the inner list_for_each_entry, only the\ninner loop breaks; the outer while re-fetches the just-restored fault group\nand retries the failing copy_to_user() forever, spinning the reader at 100%\nCPU with fault-\u003emutex held.\n\nCheck rc after the inner loop and break the outer while as well."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-03T09:32:41.191Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/a38e0714affc5c0bbb40cba5a65d6d32a5e72a71"
            },
            {
              "url": "https://git.kernel.org/stable/c/5539da127d03c1f6c2e2a49fdfbe331a0ccbdea8"
            },
            {
              "url": "https://git.kernel.org/stable/c/f66c16b175509642ee7082df57c9bf3deaebae1a"
            },
            {
              "url": "https://git.kernel.org/stable/c/172fc8b19825a0f5884c38f2289188284e2d45ee"
            }
          ],
          "title": "iommufd: Break the loop on failure in iommufd_fault_fops_read()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64290",
        "datePublished": "2026-07-25T08:49:30.049Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-08-03T09:32:41.191Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64268 (GCVE-0-2026-64268)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    RDMA/siw: bound Read Response placement to the RREAD length
    Summary
    In the Linux kernel, the following vulnerability has been resolved: RDMA/siw: bound Read Response placement to the RREAD length In drivers/infiniband/sw/siw/siw_qp_rx.c, siw_proc_rresp() places each inbound Read Response DDP segment at sge->laddr + wqe->processed and then accumulates wqe->processed, but it never checks the running total against the sink buffer length on continuation segments. siw_check_sge() resolves and validates the sink memory only on the first fragment (the if (!*mem) branch), and siw_rresp_check_ntoh() compares the cumulative length against wqe->bytes only on the final segment (the !frx->more_ddp_segs guard). A connected siw peer that answers an outstanding RREAD with Read Response segments that keep the DDP Last flag clear, carrying more total payload than the RREAD requested, drives wqe->processed past the validated sink buffer; the next siw_rx_data() call writes out of bounds at sge->laddr + wqe->processed. siw runs iWARP over ordinary routable TCP, so the peer is the remote end of an established RDMA connection and needs no local privilege. Bound every segment before placement, exactly as siw_proc_send() and siw_proc_write() already do for their tagged and untagged paths, and terminate the connection with a base-or-bounds DDP error when the Read Response would overrun the sink buffer. This is the second receive-path length fix for this file. A separate change rejects an MPA FPDU length that underflows the per-fragment remainder in the header decode; that guard does not cover this case, because here each individual segment length is self-consistent and only the accumulated placement offset overruns the buffer.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < a31b6d18ded3cc32d9ee85a6ff0726d4274887b2 (git)
    Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < 595e6537ad1a210da32cbb9a7f91aa73090915ba (git)
    Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < 3ef7e052cbd05a8b13a51a07b185a39ec93ee1cf (git)
    Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < b2e26c955f8dd7e8d3f16c858db05245ea4fa817 (git)
    Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < 6bc89f34a4597f9f6d41f7a60c67a3153bfe8851 (git)
    Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < 423a78ff7928c2601013f73ec6d896f5597d0df5 (git)
    Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < 75c93cd3c421890f49ea93f0b978b9b7bb10e5e3 (git)
    Affected: 8b6a361b8c482f22ac99c3273285ff16b23fba91 , < 7d29f7e9dbd844cae4d3e559cf78324b9642fd6b (git)
    Create a notification for this product.
    Linux Linux Affected: 5.3
    Unaffected: 0 , < 5.3 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (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.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/infiniband/sw/siw/siw_qp_rx.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "a31b6d18ded3cc32d9ee85a6ff0726d4274887b2",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                },
                {
                  "lessThan": "595e6537ad1a210da32cbb9a7f91aa73090915ba",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                },
                {
                  "lessThan": "3ef7e052cbd05a8b13a51a07b185a39ec93ee1cf",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                },
                {
                  "lessThan": "b2e26c955f8dd7e8d3f16c858db05245ea4fa817",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                },
                {
                  "lessThan": "6bc89f34a4597f9f6d41f7a60c67a3153bfe8851",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                },
                {
                  "lessThan": "423a78ff7928c2601013f73ec6d896f5597d0df5",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                },
                {
                  "lessThan": "75c93cd3c421890f49ea93f0b978b9b7bb10e5e3",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                },
                {
                  "lessThan": "7d29f7e9dbd844cae4d3e559cf78324b9642fd6b",
                  "status": "affected",
                  "version": "8b6a361b8c482f22ac99c3273285ff16b23fba91",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/infiniband/sw/siw/siw_qp_rx.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.3"
                },
                {
                  "lessThan": "5.3",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.10.261",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "5.3",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/siw: bound Read Response placement to the RREAD length\n\nIn drivers/infiniband/sw/siw/siw_qp_rx.c, siw_proc_rresp() places each\ninbound Read Response DDP segment at sge-\u003eladdr + wqe-\u003eprocessed and then\naccumulates wqe-\u003eprocessed, but it never checks the running total against\nthe sink buffer length on continuation segments. siw_check_sge() resolves\nand validates the sink memory only on the first fragment (the if (!*mem)\nbranch), and siw_rresp_check_ntoh() compares the cumulative length against\nwqe-\u003ebytes only on the final segment (the !frx-\u003emore_ddp_segs guard).\n\nA connected siw peer that answers an outstanding RREAD with Read Response\nsegments that keep the DDP Last flag clear, carrying more total payload\nthan the RREAD requested, drives wqe-\u003eprocessed past the validated sink\nbuffer; the next siw_rx_data() call writes out of bounds at\nsge-\u003eladdr + wqe-\u003eprocessed. siw runs iWARP over ordinary routable TCP,\nso the peer is the remote end of an established RDMA connection and needs\nno local privilege.\n\nBound every segment before placement, exactly as siw_proc_send() and\nsiw_proc_write() already do for their tagged and untagged paths, and\nterminate the connection with a base-or-bounds DDP error when the\nRead Response would overrun the sink buffer.\n\nThis is the second receive-path length fix for this file. A separate\nchange rejects an MPA FPDU length that underflows the per-fragment\nremainder in the header decode; that guard does not cover this case,\nbecause here each individual segment length is self-consistent and only\nthe accumulated placement offset overruns the buffer."
            }
          ],
          "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 - siw carries iWARP over ordinary routable TCP, and the vulnerable receive callback processes crafted Read Response FPDUs from the remote endpoint of an established RDMA connection.\nAC:L - The peer learns the sink tag, address, and length from the RREAD and can deterministically send oversized continuation segments; no race or uncontrollable condition is required.\nPR:N - The MPA/siw data path performs no credential or capability check on the connected peer, and an unauthenticated RDMA service can accept the connection and issue attacker-induced RREADs.\nUI:N - The overflow is triggered through an automated RDMA protocol exchange and requires no human action.\nS:U - The corruption compromises resources within the affected host\u0027s kernel security authority and does not inherently cross a VM, IOMMU, or other security boundary.\nC:H - The global DMA/KVA sink case exposes the sink address and permits attacker-controlled kernel memory corruption, which can enable control-flow hijacking and arbitrary kernel-memory disclosure.\nI:H - Attacker-chosen response bytes are written beyond the validated sink into adjacent kernel memory, providing an exploitable out-of-bounds write capable of modifying objects or achieving kernel code execution.\nA:H - The overwrite can corrupt critical kernel objects or reach invalid memory, causing an oops or panic; bounded FRWR sinks still permit connection-terminating denial of service."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:25.712Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/a31b6d18ded3cc32d9ee85a6ff0726d4274887b2"
            },
            {
              "url": "https://git.kernel.org/stable/c/595e6537ad1a210da32cbb9a7f91aa73090915ba"
            },
            {
              "url": "https://git.kernel.org/stable/c/3ef7e052cbd05a8b13a51a07b185a39ec93ee1cf"
            },
            {
              "url": "https://git.kernel.org/stable/c/b2e26c955f8dd7e8d3f16c858db05245ea4fa817"
            },
            {
              "url": "https://git.kernel.org/stable/c/6bc89f34a4597f9f6d41f7a60c67a3153bfe8851"
            },
            {
              "url": "https://git.kernel.org/stable/c/423a78ff7928c2601013f73ec6d896f5597d0df5"
            },
            {
              "url": "https://git.kernel.org/stable/c/75c93cd3c421890f49ea93f0b978b9b7bb10e5e3"
            },
            {
              "url": "https://git.kernel.org/stable/c/7d29f7e9dbd844cae4d3e559cf78324b9642fd6b"
            }
          ],
          "title": "RDMA/siw: bound Read Response placement to the RREAD length",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64268",
        "datePublished": "2026-07-25T08:49:16.336Z",
        "dateReserved": "2026-07-19T15:36:31.775Z",
        "dateUpdated": "2026-08-05T12:40:25.712Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64267 (GCVE-0-2026-64267)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    fuse: avoid 32-bit prune notification count wrap
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse: avoid 32-bit prune notification count wrap FUSE_NOTIFY_PRUNE validates the nodeid payload length with: size - sizeof(outarg) != outarg.count * sizeof(u64) On 32-bit kernels, size_t is also 32 bits, so the daemon-controlled count multiplication can wrap. A prune notification with count 0x20000000 and no nodeid payload passes the check, enters the copy loop, and asks the device copy path to read nodeids that are not present in the userspace write buffer. In QEMU this reaches the fuse_copy_fill() BUG_ON(!err) path. Validate the payload length with array_size() instead. That accepts exactly the same valid messages, but avoids wrapping arithmetic before the copy loop consumes the count.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 3f29d59e92a96d843c2ff10ebfed92ac26878658 , < 6e2d84fdeac05bfd858e84a76353fdb84f23a43e (git)
    Affected: 3f29d59e92a96d843c2ff10ebfed92ac26878658 , < c78c4b242299bc581e4987e5c2786c6f4760c516 (git)
    Affected: 3f29d59e92a96d843c2ff10ebfed92ac26878658 , < 54243797cedf55447b4c5d560e8cd709900061ae (git)
    Create a notification for this product.
    Linux Linux Affected: 6.18
    Unaffected: 0 , < 6.18 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev.c",
                "fs/fuse/notify.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "6e2d84fdeac05bfd858e84a76353fdb84f23a43e",
                  "status": "affected",
                  "version": "3f29d59e92a96d843c2ff10ebfed92ac26878658",
                  "versionType": "git"
                },
                {
                  "lessThan": "c78c4b242299bc581e4987e5c2786c6f4760c516",
                  "status": "affected",
                  "version": "3f29d59e92a96d843c2ff10ebfed92ac26878658",
                  "versionType": "git"
                },
                {
                  "lessThan": "54243797cedf55447b4c5d560e8cd709900061ae",
                  "status": "affected",
                  "version": "3f29d59e92a96d843c2ff10ebfed92ac26878658",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev.c",
                "fs/fuse/notify.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.18"
                },
                {
                  "lessThan": "6.18",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.18",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.18",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.18",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse: avoid 32-bit prune notification count wrap\n\nFUSE_NOTIFY_PRUNE validates the nodeid payload length with:\n\n    size - sizeof(outarg) != outarg.count * sizeof(u64)\n\nOn 32-bit kernels, size_t is also 32 bits, so the daemon-controlled\ncount multiplication can wrap.  A prune notification with count\n0x20000000 and no nodeid payload passes the check, enters the copy\nloop, and asks the device copy path to read nodeids that are not\npresent in the userspace write buffer.  In QEMU this reaches the\nfuse_copy_fill() BUG_ON(!err) path.\n\nValidate the payload length with array_size() instead.  That accepts\nexactly the same valid messages, but avoids wrapping arithmetic before\nthe copy loop consumes the count."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:15.720Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/6e2d84fdeac05bfd858e84a76353fdb84f23a43e"
            },
            {
              "url": "https://git.kernel.org/stable/c/c78c4b242299bc581e4987e5c2786c6f4760c516"
            },
            {
              "url": "https://git.kernel.org/stable/c/54243797cedf55447b4c5d560e8cd709900061ae"
            }
          ],
          "title": "fuse: avoid 32-bit prune notification count wrap",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64267",
        "datePublished": "2026-07-25T08:49:15.720Z",
        "dateReserved": "2026-07-19T15:36:31.775Z",
        "dateUpdated": "2026-07-25T08:49:15.720Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64266 (GCVE-0-2026-64266)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    fuse: re-lock request before returning from fuse_ref_folio()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse: re-lock request before returning from fuse_ref_folio() fuse_ref_folio() unlocks the request but does not re-lock it before returning. fuse_chan_abort() can end the request and the async end callback (eg fuse_writepage_free()) can free the args while the subsequent copy chain logic after fuse_ref_folio() accesses them, leading to use-after-free issues. Fix this by locking the request in fuse_ref_folio() before returning.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < 1f9156714592356b4fda57beac7eab9c2a462dd3 (git)
    Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < 5630da218a45ba80f0aba0846cbe8aa655da122b (git)
    Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < 1ca605cfa59377f0143fb35b5b01360f37d1b7c4 (git)
    Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < 0e4a5a000123d81234e27a2f8187688cf608f755 (git)
    Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < e6aa539720c3d8def69683ed0c07cf9faea4e8be (git)
    Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < be353caffa8640f5e25fb3714ce8b0cef5e410e5 (git)
    Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < 65a1c2551f7e16085acbb54aedde1feaa559ba7a (git)
    Affected: c3021629a0d820247ee12b6c5192a1d5380e21c6 , < b5befa80fdbe287a98480effed9564712924add5 (git)
    Create a notification for this product.
    Linux Linux Affected: 2.6.35
    Unaffected: 0 , < 2.6.35 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (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.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "1f9156714592356b4fda57beac7eab9c2a462dd3",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                },
                {
                  "lessThan": "5630da218a45ba80f0aba0846cbe8aa655da122b",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                },
                {
                  "lessThan": "1ca605cfa59377f0143fb35b5b01360f37d1b7c4",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                },
                {
                  "lessThan": "0e4a5a000123d81234e27a2f8187688cf608f755",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                },
                {
                  "lessThan": "e6aa539720c3d8def69683ed0c07cf9faea4e8be",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                },
                {
                  "lessThan": "be353caffa8640f5e25fb3714ce8b0cef5e410e5",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                },
                {
                  "lessThan": "65a1c2551f7e16085acbb54aedde1feaa559ba7a",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                },
                {
                  "lessThan": "b5befa80fdbe287a98480effed9564712924add5",
                  "status": "affected",
                  "version": "c3021629a0d820247ee12b6c5192a1d5380e21c6",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "2.6.35"
                },
                {
                  "lessThan": "2.6.35",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.10.261",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "2.6.35",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse: re-lock request before returning from fuse_ref_folio()\n\nfuse_ref_folio() unlocks the request but does not re-lock it before\nreturning. fuse_chan_abort() can end the request and the async end\ncallback (eg fuse_writepage_free()) can free the args while the\nsubsequent copy chain logic after fuse_ref_folio() accesses them,\nleading to use-after-free issues.\n\nFix this by locking the request in fuse_ref_folio() before returning."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - A local attacker reaches the flaw by serving a self-created FUSE mount and invoking splice() on its associated /dev/fuse descriptor.\nAC:L - The attacker controls writeback generation, splice processing, and concurrent connection abort, allowing repeated attempts at the race without an uncontrollable prerequisite.\nPR:L - FUSE supports user-namespace mounts, and an unprivileged mount owner can operate /dev/fuse and abort their own connection without init-namespace root.\nUI:N - The attacker can create and exercise their own FUSE connection without any victim action.\nS:U - Exploitation compromises the kernel within the same operating-system security authority and does not inherently cross a virtualization boundary.\nC:H - The freed argument and folio arrays are subsequently dereferenced, permitting attacker-influenced stale folio pointers and potential arbitrary kernel-memory disclosure through pipe buffers.\nI:H - Heap reclamation can replace the freed folio pointers and loop metadata, enabling attacker-directed memory or refcount operations that may support arbitrary writes and kernel code execution.\nA:H - The repeatable use-after-free and invalid folio operations can cause an oops, panic, or other complete system failure."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:24.619Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/1f9156714592356b4fda57beac7eab9c2a462dd3"
            },
            {
              "url": "https://git.kernel.org/stable/c/5630da218a45ba80f0aba0846cbe8aa655da122b"
            },
            {
              "url": "https://git.kernel.org/stable/c/1ca605cfa59377f0143fb35b5b01360f37d1b7c4"
            },
            {
              "url": "https://git.kernel.org/stable/c/0e4a5a000123d81234e27a2f8187688cf608f755"
            },
            {
              "url": "https://git.kernel.org/stable/c/e6aa539720c3d8def69683ed0c07cf9faea4e8be"
            },
            {
              "url": "https://git.kernel.org/stable/c/be353caffa8640f5e25fb3714ce8b0cef5e410e5"
            },
            {
              "url": "https://git.kernel.org/stable/c/65a1c2551f7e16085acbb54aedde1feaa559ba7a"
            },
            {
              "url": "https://git.kernel.org/stable/c/b5befa80fdbe287a98480effed9564712924add5"
            }
          ],
          "title": "fuse: re-lock request before returning from fuse_ref_folio()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64266",
        "datePublished": "2026-07-25T08:49:15.142Z",
        "dateReserved": "2026-07-19T15:36:31.775Z",
        "dateUpdated": "2026-08-05T12:40:24.619Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64265 (GCVE-0-2026-64265)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    fuse: clear intr_entry in fuse_resend and fuse_remove_pending_req
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse: clear intr_entry in fuse_resend and fuse_remove_pending_req When fuse_resend() moves a request from fpq->processing back to fiq->pending, it sets FR_PENDING and clears FR_SENT but does not remove the requests intr_entry from fiq->interrupts. If the request had FR_INTERRUPTED set from a prior signal, intr_entry remains dangling on fiq->interrupts. When the requesting task then receives a fatal signal, fuse_remove_pending_req() sees FR_PENDING=1, removes the request from fiq->pending and frees it via the refcount path, also without cleaning intr_entry. The stale intr_entry causes use-after-free when fuse_read_interrupt() iterates fiq->interrupts: - list_del_init(&req->intr_entry) -> UAF write on freed slab - req->in.h.unique -> UAF read, data leaked to userspace Remove intr_entry from fiq->interrupts in fuse_resend() for interrupted requests before they are placed back on fiq->pending. Add a WARN_ON if the intr_entry is not empty on request destruction.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 760eac73f9f69aa28fcb3050b4946c2dcc656d12 , < 1d8ecd0cd696a5df0b2f72046a4ccee5d2a8ec2c (git)
    Affected: 760eac73f9f69aa28fcb3050b4946c2dcc656d12 , < 7366e6f4d2b4c7002b13fb01219e83679dad4127 (git)
    Affected: 760eac73f9f69aa28fcb3050b4946c2dcc656d12 , < 893479015cb6442fd389d3b553ab3036c9541715 (git)
    Affected: 760eac73f9f69aa28fcb3050b4946c2dcc656d12 , < f8fce75fedf73ac72aa09163deb8f4291fdcaad2 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.9
    Unaffected: 0 , < 6.9 (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "1d8ecd0cd696a5df0b2f72046a4ccee5d2a8ec2c",
                  "status": "affected",
                  "version": "760eac73f9f69aa28fcb3050b4946c2dcc656d12",
                  "versionType": "git"
                },
                {
                  "lessThan": "7366e6f4d2b4c7002b13fb01219e83679dad4127",
                  "status": "affected",
                  "version": "760eac73f9f69aa28fcb3050b4946c2dcc656d12",
                  "versionType": "git"
                },
                {
                  "lessThan": "893479015cb6442fd389d3b553ab3036c9541715",
                  "status": "affected",
                  "version": "760eac73f9f69aa28fcb3050b4946c2dcc656d12",
                  "versionType": "git"
                },
                {
                  "lessThan": "f8fce75fedf73ac72aa09163deb8f4291fdcaad2",
                  "status": "affected",
                  "version": "760eac73f9f69aa28fcb3050b4946c2dcc656d12",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.9"
                },
                {
                  "lessThan": "6.9",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "6.9",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.9",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.9",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.9",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse: clear intr_entry in fuse_resend and fuse_remove_pending_req\n\nWhen fuse_resend() moves a request from fpq-\u003eprocessing back to\nfiq-\u003epending, it sets FR_PENDING and clears FR_SENT but does not\nremove the requests intr_entry from fiq-\u003einterrupts.  If the\nrequest had FR_INTERRUPTED set from a prior signal, intr_entry\nremains dangling on fiq-\u003einterrupts.  When the requesting task\nthen receives a fatal signal, fuse_remove_pending_req() sees\nFR_PENDING=1, removes the request from fiq-\u003epending and frees it\nvia the refcount path, also without cleaning intr_entry.  The\nstale intr_entry causes use-after-free when fuse_read_interrupt()\niterates fiq-\u003einterrupts:\n  - list_del_init(\u0026req-\u003eintr_entry) -\u003e UAF write on freed slab\n  - req-\u003ein.h.unique -\u003e UAF read, data leaked to userspace\n\nRemove intr_entry from fiq-\u003einterrupts in fuse_resend() for\ninterrupted requests before they are placed back on fiq-\u003epending.\n\nAdd a WARN_ON if the intr_entry is not empty on request destruction."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The vulnerability is reached through local filesystem, signal, and read/write syscalls involving an attached /dev/fuse descriptor. No network or physical input directly reaches the vulnerable functions.\nAC:L - A malicious FUSE daemon can deterministically withhold a request, signal its client, issue FUSE_NOTIFY_RESEND, deliver a fatal signal, and read the stale interrupt. Polling permits synchronization without depending on an uncontrollable race.\nPR:L - Normal FUSE supports user-namespace and non-privileged mounts, while opening the FUSE device has no kernel capability check. An ordinary user can control both the daemon and client processes in a reasonable deployment.\nUI:N - All triggering operations can be performed programmatically by attacker-controlled daemon and client processes. No separate victim must mount or access the filesystem.\nS:U - Exploitation compromises the same kernel security authority in which the vulnerable FUSE code executes. This is a standard local kernel privilege escalation rather than a guest-to-host boundary escape.\nC:H - fuse_read_interrupt() reads req-\u003ein.h.unique from freed slab memory and copies it to userspace. Slab reuse or cache merging can expose replacement-object contents through this UAF read.\nI:H - list_del_init() interprets freed or reused intr_entry pointers as live list links and writes through them as well as into the freed object. Heap grooming can leverage this memory corruption for arbitrary writes or control-flow compromise.\nA:H - The stale list pointers and UAF writes can corrupt kernel queues or slab objects and cause an oops or panic. The attacker can repeat the deterministic trigger sequence."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:23.547Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/1d8ecd0cd696a5df0b2f72046a4ccee5d2a8ec2c"
            },
            {
              "url": "https://git.kernel.org/stable/c/7366e6f4d2b4c7002b13fb01219e83679dad4127"
            },
            {
              "url": "https://git.kernel.org/stable/c/893479015cb6442fd389d3b553ab3036c9541715"
            },
            {
              "url": "https://git.kernel.org/stable/c/f8fce75fedf73ac72aa09163deb8f4291fdcaad2"
            }
          ],
          "title": "fuse: clear intr_entry in fuse_resend and fuse_remove_pending_req",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64265",
        "datePublished": "2026-07-25T08:49:14.548Z",
        "dateReserved": "2026-07-19T15:36:31.774Z",
        "dateUpdated": "2026-08-05T12:40:23.547Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64264 (GCVE-0-2026-64264)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    fuse-uring: fix EFAULT clobber in fuse_uring_commit
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse-uring: fix EFAULT clobber in fuse_uring_commit copy_from_user() returns the number of bytes not copied as an unsigned residual on failure (1..sizeof(struct fuse_out_header)). fuse_uring_commit stores that residual in ssize_t err, sets req->out.h.error to -EFAULT, then jumps to out: with err still holding the positive residual. err = copy_from_user(&req->out.h, &ent->headers->in_out, sizeof(req->out.h)); if (err) { req->out.h.error = -EFAULT; goto out; /* err is the positive residual */ } ... out: fuse_uring_req_end(ent, req, err); fuse_uring_req_end() then runs if (error) req->out.h.error = error; which overwrites the just-assigned -EFAULT with the positive residual. FUSE callers such as fuse_simple_request() test err < 0 to detect failure, so the positive value is interpreted as success and the caller proceeds with an uninitialised or partial req->out.args. Fix by assigning err = -EFAULT in the failure branch before jumping to out, so fuse_uring_req_end() receives a negative errno and sets req->out.h.error to -EFAULT.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: c090c8abae4b6b77a1bee116aa6c385456ebef96 , < 0483fffdeeb363f320e6bf5fc0f0306007507306 (git)
    Affected: c090c8abae4b6b77a1bee116aa6c385456ebef96 , < fe604c08d874648a69187f6380e5c7858627dc04 (git)
    Affected: c090c8abae4b6b77a1bee116aa6c385456ebef96 , < 3a0a8bc51a13951c5141262bf770eeea3e0b6228 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.14
    Unaffected: 0 , < 6.14 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "0483fffdeeb363f320e6bf5fc0f0306007507306",
                  "status": "affected",
                  "version": "c090c8abae4b6b77a1bee116aa6c385456ebef96",
                  "versionType": "git"
                },
                {
                  "lessThan": "fe604c08d874648a69187f6380e5c7858627dc04",
                  "status": "affected",
                  "version": "c090c8abae4b6b77a1bee116aa6c385456ebef96",
                  "versionType": "git"
                },
                {
                  "lessThan": "3a0a8bc51a13951c5141262bf770eeea3e0b6228",
                  "status": "affected",
                  "version": "c090c8abae4b6b77a1bee116aa6c385456ebef96",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.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.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse-uring: fix EFAULT clobber in fuse_uring_commit\n\ncopy_from_user() returns the number of bytes not copied as an unsigned\nresidual on failure (1..sizeof(struct fuse_out_header)). fuse_uring_commit\nstores that residual in ssize_t err, sets req-\u003eout.h.error to -EFAULT,\nthen jumps to out: with err still holding the positive residual.\n\n    err = copy_from_user(\u0026req-\u003eout.h, \u0026ent-\u003eheaders-\u003ein_out,\n                         sizeof(req-\u003eout.h));\n    if (err) {\n        req-\u003eout.h.error = -EFAULT;\n        goto out;          /* err is the positive residual */\n    }\n    ...\n    out:\n        fuse_uring_req_end(ent, req, err);\n\nfuse_uring_req_end() then runs\n\n    if (error)\n        req-\u003eout.h.error = error;\n\nwhich overwrites the just-assigned -EFAULT with the positive residual.\nFUSE callers such as fuse_simple_request() test err \u003c 0 to detect\nfailure, so the positive value is interpreted as success and the\ncaller proceeds with an uninitialised or partial req-\u003eout.args.\n\nFix by assigning err = -EFAULT in the failure branch before jumping\nto out, so fuse_uring_req_end() receives a negative errno and sets\nreq-\u003eout.h.error to -EFAULT."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:13.891Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/0483fffdeeb363f320e6bf5fc0f0306007507306"
            },
            {
              "url": "https://git.kernel.org/stable/c/fe604c08d874648a69187f6380e5c7858627dc04"
            },
            {
              "url": "https://git.kernel.org/stable/c/3a0a8bc51a13951c5141262bf770eeea3e0b6228"
            }
          ],
          "title": "fuse-uring: fix EFAULT clobber in fuse_uring_commit",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64264",
        "datePublished": "2026-07-25T08:49:13.891Z",
        "dateReserved": "2026-07-19T15:36:31.774Z",
        "dateUpdated": "2026-07-25T08:49:13.891Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64263 (GCVE-0-2026-64263)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    fuse-uring: fix moving cancelled entry to ent_in_userspace list
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse-uring: fix moving cancelled entry to ent_in_userspace list fuse_uring_cancel() moves entries that are available (these have no reqs attached) to the ent_in_userspace list. ent_list_request_expired() checks the first entry on ent_in_userspace and dereferences ent->fuse_req unconditionally, which will crash on a cancelled entry that was moved to this list. Fix this by freeing the entry and dropping queue_refs directly in fuse_uring_cancel(). This is safe because cancel is the cancel handler itself - after io_uring_cmd_done(), no more cancels will be dispatched for this command, and teardown serializes with cancel via queue->lock. Since cancel now decrements queue_refs, fuse_uring_abort() must no longer gate fuse_uring_abort_end_requests() on queue_refs > 0, as cancelled entries may have already dropped queue_refs while requests are still queued. Remove the gate so abort always flushes requests and stops queues.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 4fea593e625cd50d4d11be227007849b12f17bfb , < 50f3e03db823cabc41fe35c27d77c2bdb112baad (git)
    Affected: 4fea593e625cd50d4d11be227007849b12f17bfb , < e8afc85acdf329361b2d8df2ad9b52364686235f (git)
    Affected: 4fea593e625cd50d4d11be227007849b12f17bfb , < 198f45eeb9f78b2a2d6d8be95e4e43468eb2c6bc (git)
    Create a notification for this product.
    Linux Linux Affected: 6.16
    Unaffected: 0 , < 6.16 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c",
                "fs/fuse/dev_uring_i.h"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "50f3e03db823cabc41fe35c27d77c2bdb112baad",
                  "status": "affected",
                  "version": "4fea593e625cd50d4d11be227007849b12f17bfb",
                  "versionType": "git"
                },
                {
                  "lessThan": "e8afc85acdf329361b2d8df2ad9b52364686235f",
                  "status": "affected",
                  "version": "4fea593e625cd50d4d11be227007849b12f17bfb",
                  "versionType": "git"
                },
                {
                  "lessThan": "198f45eeb9f78b2a2d6d8be95e4e43468eb2c6bc",
                  "status": "affected",
                  "version": "4fea593e625cd50d4d11be227007849b12f17bfb",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c",
                "fs/fuse/dev_uring_i.h"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.16"
                },
                {
                  "lessThan": "6.16",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.16",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.16",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.16",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse-uring: fix moving cancelled entry to ent_in_userspace list\n\nfuse_uring_cancel() moves entries that are available (these have no reqs\nattached) to the ent_in_userspace list. ent_list_request_expired()\nchecks the first entry on ent_in_userspace and dereferences\nent-\u003efuse_req unconditionally, which will crash on a cancelled entry\nthat was moved to this list.\n\nFix this by freeing the entry and dropping queue_refs directly in\nfuse_uring_cancel(). This is safe because cancel is the cancel handler\nitself - after io_uring_cmd_done(), no more cancels will be dispatched\nfor this command, and teardown serializes with cancel via queue-\u003elock.\n\nSince cancel now decrements queue_refs, fuse_uring_abort() must no\nlonger gate fuse_uring_abort_end_requests() on queue_refs \u003e 0, as\ncancelled entries may have already dropped queue_refs while requests are\nstill queued. Remove the gate so abort always flushes requests and stops\nqueues."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:13.217Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/50f3e03db823cabc41fe35c27d77c2bdb112baad"
            },
            {
              "url": "https://git.kernel.org/stable/c/e8afc85acdf329361b2d8df2ad9b52364686235f"
            },
            {
              "url": "https://git.kernel.org/stable/c/198f45eeb9f78b2a2d6d8be95e4e43468eb2c6bc"
            }
          ],
          "title": "fuse-uring: fix moving cancelled entry to ent_in_userspace list",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64263",
        "datePublished": "2026-07-25T08:49:13.217Z",
        "dateReserved": "2026-07-19T15:36:31.774Z",
        "dateUpdated": "2026-07-25T08:49:13.217Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64262 (GCVE-0-2026-64262)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    fuse-uring: end fuse_req on io-uring cancel task work
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse-uring: end fuse_req on io-uring cancel task work When io_uring delivers task work with tw.cancel set (PF_EXITING, PF_KTHREAD fallback, or percpu_ref_is_dying on the ring context), fuse_uring_send_in_task() takes the cancel branch, assigns -ECANCELED, and falls through to fuse_uring_send(). That path only flips the entry to FRRS_USERSPACE and completes the io_uring cmd; it never discharges the ring entry's owning reference to the fuse_req that fuse_uring_add_req_to_ring_ent() handed it at dispatch time. fuse_uring_send_in_task() tw.cancel == true err = -ECANCELED fuse_uring_send(ent, cmd, err, issue_flags) ent->state = FRRS_USERSPACE list_move(&ent->list, &queue->ent_in_userspace) ent->cmd = NULL io_uring_cmd_done(-ECANCELED) /* ent->fuse_req still set, req still hashed */ The fuse_req stays linked on fpq->processing[hash] and fuse_request_end() is never invoked. The originating syscall thread blocks in D-state in request_wait_answer() until fuse_abort_conn() runs, which can be the entire connection lifetime. For FR_BACKGROUND requests fc->num_background is never decremented either, so repeated cancels inflate the counter until max_background is hit and all later background ops stall. tw.cancel does not imply a connection abort (e.g. a single io_uring worker thread exits while the fuse connection stays up), so this cannot be left for fuse_abort_conn() to clean up. Ending the req but still routing the entry through fuse_uring_send() is not enough: that leaves a req-less entry on ent_in_userspace, and ent_list_request_expired() dereferences ent->fuse_req unconditionally on the head of that list, which would then NULL-deref. Fix the cancel branch to release the entry directly. Remove it from the queue, complete the io_uring cmd, end the fuse_req, free the entry, and drop its queue_refs (waking the teardown waiter if it was the last).
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: c2c9af9a0b13261c36909036057a116f2edb5e1a , < bb476ef8e1027a9d509fbaaf81f5061a07e9e5a7 (git)
    Affected: c2c9af9a0b13261c36909036057a116f2edb5e1a , < 4f45f276d5b4412eade6f74f2e37f3adba0473ed (git)
    Affected: c2c9af9a0b13261c36909036057a116f2edb5e1a , < bea4fe98204b6ce7eb8e29f7bf867dd7619b3ddd (git)
    Create a notification for this product.
    Linux Linux Affected: 6.14
    Unaffected: 0 , < 6.14 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "bb476ef8e1027a9d509fbaaf81f5061a07e9e5a7",
                  "status": "affected",
                  "version": "c2c9af9a0b13261c36909036057a116f2edb5e1a",
                  "versionType": "git"
                },
                {
                  "lessThan": "4f45f276d5b4412eade6f74f2e37f3adba0473ed",
                  "status": "affected",
                  "version": "c2c9af9a0b13261c36909036057a116f2edb5e1a",
                  "versionType": "git"
                },
                {
                  "lessThan": "bea4fe98204b6ce7eb8e29f7bf867dd7619b3ddd",
                  "status": "affected",
                  "version": "c2c9af9a0b13261c36909036057a116f2edb5e1a",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.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.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse-uring: end fuse_req on io-uring cancel task work\n\nWhen io_uring delivers task work with tw.cancel set (PF_EXITING,\nPF_KTHREAD fallback, or percpu_ref_is_dying on the ring context),\nfuse_uring_send_in_task() takes the cancel branch, assigns\n-ECANCELED, and falls through to fuse_uring_send(). That path only\nflips the entry to FRRS_USERSPACE and completes the io_uring cmd;\nit never discharges the ring entry\u0027s owning reference to the\nfuse_req that fuse_uring_add_req_to_ring_ent() handed it at\ndispatch time.\n\n    fuse_uring_send_in_task()\n      tw.cancel == true\n        err = -ECANCELED\n      fuse_uring_send(ent, cmd, err, issue_flags)\n        ent-\u003estate = FRRS_USERSPACE\n        list_move(\u0026ent-\u003elist, \u0026queue-\u003eent_in_userspace)\n        ent-\u003ecmd = NULL\n        io_uring_cmd_done(-ECANCELED)\n        /* ent-\u003efuse_req still set, req still hashed */\n\nThe fuse_req stays linked on fpq-\u003eprocessing[hash] and\nfuse_request_end() is never invoked. The originating syscall\nthread blocks in D-state in request_wait_answer() until\nfuse_abort_conn() runs, which can be the entire connection\nlifetime. For FR_BACKGROUND requests fc-\u003enum_background is never\ndecremented either, so repeated cancels inflate the counter until\nmax_background is hit and all later background ops stall. tw.cancel does\nnot imply a connection abort (e.g. a single io_uring worker thread exits\nwhile the fuse connection stays up), so this cannot be left for\nfuse_abort_conn() to clean up.\n\nEnding the req but still routing the entry through fuse_uring_send()\nis not enough: that leaves a req-less entry on ent_in_userspace, and\nent_list_request_expired() dereferences ent-\u003efuse_req unconditionally\non the head of that list, which would then NULL-deref.\n\nFix the cancel branch to release the entry directly. Remove it from the\nqueue, complete the io_uring cmd, end the fuse_req, free the entry, and\ndrop its queue_refs (waking the teardown waiter if it was the last)."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:12.599Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/bb476ef8e1027a9d509fbaaf81f5061a07e9e5a7"
            },
            {
              "url": "https://git.kernel.org/stable/c/4f45f276d5b4412eade6f74f2e37f3adba0473ed"
            },
            {
              "url": "https://git.kernel.org/stable/c/bea4fe98204b6ce7eb8e29f7bf867dd7619b3ddd"
            }
          ],
          "title": "fuse-uring: end fuse_req on io-uring cancel task work",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64262",
        "datePublished": "2026-07-25T08:49:12.599Z",
        "dateReserved": "2026-07-19T15:36:31.774Z",
        "dateUpdated": "2026-07-25T08:49:12.599Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64261 (GCVE-0-2026-64261)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    fuse-uring: Avoid use-after-free in fuse_uring_async_stop_queues
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse-uring: Avoid use-after-free in fuse_uring_async_stop_queues fuse_uring_async_stop_queues() might run when the last reference on ring->queue_refs was already dropped. In order to avoid an early destruction a reference on struct fuse_conn is now taken before starting fuse_uring_async_stop_queues() and that reference is only released when that delayed work queue terminates.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 4a9bfb9b6850fec0685447aed280533cf980de70 , < 23a356e0bd96c8d5fb3ddff069f692bf10cab5c1 (git)
    Affected: 4a9bfb9b6850fec0685447aed280533cf980de70 , < 95d7f50aff2a5f71557263ff25b97b2951f32bf8 (git)
    Affected: 4a9bfb9b6850fec0685447aed280533cf980de70 , < d351da75066955144515cb2f9aa959f24a04287a (git)
    Create a notification for this product.
    Linux Linux Affected: 6.14
    Unaffected: 0 , < 6.14 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "23a356e0bd96c8d5fb3ddff069f692bf10cab5c1",
                  "status": "affected",
                  "version": "4a9bfb9b6850fec0685447aed280533cf980de70",
                  "versionType": "git"
                },
                {
                  "lessThan": "95d7f50aff2a5f71557263ff25b97b2951f32bf8",
                  "status": "affected",
                  "version": "4a9bfb9b6850fec0685447aed280533cf980de70",
                  "versionType": "git"
                },
                {
                  "lessThan": "d351da75066955144515cb2f9aa959f24a04287a",
                  "status": "affected",
                  "version": "4a9bfb9b6850fec0685447aed280533cf980de70",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.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.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse-uring: Avoid use-after-free in fuse_uring_async_stop_queues\n\nfuse_uring_async_stop_queues() might run when the last reference\non ring-\u003equeue_refs was already dropped.\n\nIn order to avoid an early destruction a reference on struct fuse_conn\nis now taken before starting fuse_uring_async_stop_queues() and that\nreference is only released when that delayed work queue terminates."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The vulnerability is reached locally through IORING_OP_URING_CMD on a FUSE or CUSE device and connection teardown; no network path invokes it.\nAC:L - The attacker controls ring-entry creation or cancellation and closing the final channel, allowing both sides of the race to be driven and retried.\nPR:L - The vulnerable io_uring handler has no capability check, and a basic user can access a delegated FUSE/CUSE device; FUSE also supports unprivileged user-namespace mounts.\nUI:N - The attacker can create the connection, issue concurrent io_uring operations, and initiate teardown without any separate victim action.\nS:U - Exploitation compromises the same host kernel security authority; this is standard local kernel privilege escalation rather than a VM or IOMMU boundary escape.\nC:H - The stale delayed worker accesses reclaimed kmalloc-192 ring, queue, and list objects, allowing heap replacement to turn the UAF into kernel-memory disclosure primitives.\nI:H - The worker performs list and synchronization operations through freed, reclaimable pointers, making arbitrary writes or control-flow hijacking and kernel code execution defensible.\nA:H - The bug has produced a KASAN slab-use-after-free in asynchronous queue teardown and can cause a kernel oops, panic, or unrecoverable list corruption."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:22.472Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/23a356e0bd96c8d5fb3ddff069f692bf10cab5c1"
            },
            {
              "url": "https://git.kernel.org/stable/c/95d7f50aff2a5f71557263ff25b97b2951f32bf8"
            },
            {
              "url": "https://git.kernel.org/stable/c/d351da75066955144515cb2f9aa959f24a04287a"
            }
          ],
          "title": "fuse-uring: Avoid use-after-free in fuse_uring_async_stop_queues",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64261",
        "datePublished": "2026-07-25T08:49:11.999Z",
        "dateReserved": "2026-07-19T15:36:31.774Z",
        "dateUpdated": "2026-08-05T12:40:22.472Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64260 (GCVE-0-2026-64260)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    fuse-uring: Avoid queue->stopped races and set/read that value under lock
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse-uring: Avoid queue->stopped races and set/read that value under lock There are several readers of queue->stopped that check the value under lock, but fuse_uring_commit_fetch() did not and actually the value was not set under the lock in fuse_uring_abort_end_requests() either. Especially in fuse_uring_commit_fetch it is important to check under a lock, because due to races 'struct fuse_req' might be freed with fuse_request_end, but another thread/cpu might already do teardown work.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 4a9bfb9b6850fec0685447aed280533cf980de70 , < 39c8e925b207afceffaa5382416ed405e0223a03 (git)
    Affected: 4a9bfb9b6850fec0685447aed280533cf980de70 , < 4021a3a79eee551d95fe1e1e7c1b195d34ba8c08 (git)
    Affected: 4a9bfb9b6850fec0685447aed280533cf980de70 , < b70a3aca16934c196f92abb17b01c1647b9bb63c (git)
    Create a notification for this product.
    Linux Linux Affected: 6.14
    Unaffected: 0 , < 6.14 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "39c8e925b207afceffaa5382416ed405e0223a03",
                  "status": "affected",
                  "version": "4a9bfb9b6850fec0685447aed280533cf980de70",
                  "versionType": "git"
                },
                {
                  "lessThan": "4021a3a79eee551d95fe1e1e7c1b195d34ba8c08",
                  "status": "affected",
                  "version": "4a9bfb9b6850fec0685447aed280533cf980de70",
                  "versionType": "git"
                },
                {
                  "lessThan": "b70a3aca16934c196f92abb17b01c1647b9bb63c",
                  "status": "affected",
                  "version": "4a9bfb9b6850fec0685447aed280533cf980de70",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.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.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse-uring: Avoid queue-\u003estopped races and set/read that value under lock\n\nThere are several readers of queue-\u003estopped that check the value\nunder lock, but fuse_uring_commit_fetch() did not and actually\nthe value was not set under the lock in fuse_uring_abort_end_requests()\neither. Especially in fuse_uring_commit_fetch it is important\nto check under a lock, because due to races \u0027struct fuse_req\u0027\nmight be freed with fuse_request_end, but another thread/cpu\nmight already do teardown work."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The flaw is reached locally by submitting IORING_OP_URING_CMD/FUSE_IO_URING_CMD_COMMIT_AND_FETCH operations on an attached /dev/fuse descriptor.\nAC:L - Once FUSE-over-io-uring is enabled, the attacker controls both race participants by issuing commit SQEs while concurrently aborting or unmounting the connection.\nPR:L - An ordinary user can create a FUSE mount through FS_USERNS_MOUNT and user namespaces, submit commands through /dev/fuse, and access the user-owned fusectl abort control without init-namespace capabilities.\nUI:N - The attacker can create the mount, generate FUSE requests, submit commits, and trigger teardown without another user\u0027s participation.\nS:U - This is a standard local kernel privilege-escalation condition within the kernel\u0027s security authority, not a guest-to-host or IOMMU boundary escape.\nC:H - The race causes a fuse_req use-after-free and double-end with stale list, pointer, and refcount accesses, which can be leveraged to disclose arbitrary kernel memory.\nI:H - Teardown writes through stale list pointers, flags, error fields, and refcounts and can corrupt or double-free a reallocated fuse_req, enabling arbitrary kernel writes or control-flow hijacking.\nA:H - The use-after-free, list corruption, and double-ending of requests can cause an oops, panic, deadlock, or complete system compromise."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:21.406Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/39c8e925b207afceffaa5382416ed405e0223a03"
            },
            {
              "url": "https://git.kernel.org/stable/c/4021a3a79eee551d95fe1e1e7c1b195d34ba8c08"
            },
            {
              "url": "https://git.kernel.org/stable/c/b70a3aca16934c196f92abb17b01c1647b9bb63c"
            }
          ],
          "title": "fuse-uring: Avoid queue-\u003estopped races and set/read that value under lock",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64260",
        "datePublished": "2026-07-25T08:49:11.395Z",
        "dateReserved": "2026-07-19T15:36:31.774Z",
        "dateUpdated": "2026-08-05T12:40:21.406Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64259 (GCVE-0-2026-64259)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    fuse-uring: make a fuse_req on SQE commit only findable after memcpy
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse-uring: make a fuse_req on SQE commit only findable after memcpy Bad userspace might try to trick us and send commit SQEs request unique / commit-id of requests that are not even send to fuse-server (io_uring_cmd_done() not called) yet. fuse_uring_commit_fetch() ends the fuse request when the ring entry has a wrong state, but that could have caused a use-after-free with the memcpy operations in fuse_uring_send_in_task(). In order to avoid such races the call of fuse_uring_add_to_pq() is moved after the copy operations and just before completing the io-uring request - malicious userspace cannot find the request anymore until all prepration work in fuse-client/kernel is completed. This also moves fuse_uring_add_to_pq() a bit up in the code to avoid a forward declaration. Also not with a preparation commit, to make it easier to back port to older kernels.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: c090c8abae4b6b77a1bee116aa6c385456ebef96 , < e1711479e9068ea31b31353a702a51e639c3d059 (git)
    Affected: c090c8abae4b6b77a1bee116aa6c385456ebef96 , < a635f427d57e2012102ae4886b48d8955c59fb86 (git)
    Affected: c090c8abae4b6b77a1bee116aa6c385456ebef96 , < 1efd3d474fc0ba74dfd984249bca78807d739812 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.14
    Unaffected: 0 , < 6.14 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "e1711479e9068ea31b31353a702a51e639c3d059",
                  "status": "affected",
                  "version": "c090c8abae4b6b77a1bee116aa6c385456ebef96",
                  "versionType": "git"
                },
                {
                  "lessThan": "a635f427d57e2012102ae4886b48d8955c59fb86",
                  "status": "affected",
                  "version": "c090c8abae4b6b77a1bee116aa6c385456ebef96",
                  "versionType": "git"
                },
                {
                  "lessThan": "1efd3d474fc0ba74dfd984249bca78807d739812",
                  "status": "affected",
                  "version": "c090c8abae4b6b77a1bee116aa6c385456ebef96",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.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.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.14",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse-uring: make a fuse_req on SQE commit only findable after memcpy\n\nBad userspace might try to trick us and send commit SQEs request\nunique / commit-id of requests that are not even send to\nfuse-server (io_uring_cmd_done() not called) yet.\n\nfuse_uring_commit_fetch() ends the fuse request when the ring entry\nhas a wrong state, but that could have caused a use-after-free\nwith the memcpy operations in fuse_uring_send_in_task().\nIn order to avoid such races the call of fuse_uring_add_to_pq()\nis moved after the copy operations and just before completing\nthe io-uring request - malicious userspace cannot find the request\nanymore until all prepration work in fuse-client/kernel is completed.\n\nThis also moves fuse_uring_add_to_pq() a bit up in the code to\navoid a forward declaration. Also not with a preparation commit,\nto make it easier to back port to older kernels."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - Triggering requires local filesystem operations and IORING_OP_URING_CMD submissions on an associated /dev/fuse descriptor. Network peers cannot directly reach this commit path.\nAC:L - The attacker controls request generation, predictable sequential commit IDs, concurrent commit submission, and deferred io_uring task-work execution. Both sides of the race are attacker-controlled.\nPR:L - An ordinary user can create and operate a FUSE mount through fusermount or CAP_SYS_ADMIN in a user namespace; FUSE permits user-namespace mounts and this path has no init-namespace capability check.\nUI:N - The attacker can operate both the FUSE daemon and a client thread that generates requests, requiring no victim action.\nS:U - Exploitation compromises the host kernel within the same security authority and does not cross a VM, IOMMU, or comparable boundary.\nC:H - The freed request\u0027s argument pointers and copy sources are dereferenced while copying into attacker-controlled ring memory. Heap reclamation can therefore expose sensitive kernel memory.\nI:H - The use-after-free performs writes to reclaimed request memory through embedded spinlocks and request flags, providing exploitable heap corruption that may enable arbitrary writes or kernel code execution.\nA:H - The dangling request can cause invalid dereferences, corrupted request state, double completion, hangs, or a kernel panic."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:20.332Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/e1711479e9068ea31b31353a702a51e639c3d059"
            },
            {
              "url": "https://git.kernel.org/stable/c/a635f427d57e2012102ae4886b48d8955c59fb86"
            },
            {
              "url": "https://git.kernel.org/stable/c/1efd3d474fc0ba74dfd984249bca78807d739812"
            }
          ],
          "title": "fuse-uring: make a fuse_req on SQE commit only findable after memcpy",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64259",
        "datePublished": "2026-07-25T08:49:10.756Z",
        "dateReserved": "2026-07-19T15:36:31.773Z",
        "dateUpdated": "2026-08-05T12:40:20.332Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64258 (GCVE-0-2026-64258)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    fuse-uring: remove request-less entries from ent_w_req_queue to fix NULL deref
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fuse-uring: remove request-less entries from ent_w_req_queue to fix NULL deref If a copy into the userspace ring buffer fails, a request will be terminated and fuse_uring_req_end() will set ent->fuse_req to NULL but it will leave the entry on ent_w_req_queue in FRRS_FUSE_REQ state. This can lead to a NULL deref if the request expiration logic scans ent_w_req_queue in the window before the entry is moved off it. Fix this by taking the entry off ent_w_req_queue and changing its state from FRRS_FUSE_REQ to FRRS_INVALID before terminating the request.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 4fea593e625cd50d4d11be227007849b12f17bfb , < 0b466cf1b96e191b06b496c4de79da15315c3a9a (git)
    Affected: 4fea593e625cd50d4d11be227007849b12f17bfb , < 0a7f33010c0e4cd92937e088a54350381fd0fbf2 (git)
    Affected: 4fea593e625cd50d4d11be227007849b12f17bfb , < 1c57a69be962d459c5e705f5cb4355b841b3461c (git)
    Create a notification for this product.
    Linux Linux Affected: 6.16
    Unaffected: 0 , < 6.16 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "0b466cf1b96e191b06b496c4de79da15315c3a9a",
                  "status": "affected",
                  "version": "4fea593e625cd50d4d11be227007849b12f17bfb",
                  "versionType": "git"
                },
                {
                  "lessThan": "0a7f33010c0e4cd92937e088a54350381fd0fbf2",
                  "status": "affected",
                  "version": "4fea593e625cd50d4d11be227007849b12f17bfb",
                  "versionType": "git"
                },
                {
                  "lessThan": "1c57a69be962d459c5e705f5cb4355b841b3461c",
                  "status": "affected",
                  "version": "4fea593e625cd50d4d11be227007849b12f17bfb",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/fuse/dev_uring.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.16"
                },
                {
                  "lessThan": "6.16",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.16",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.16",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.16",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse-uring: remove request-less entries from ent_w_req_queue to fix NULL deref\n\nIf a copy into the userspace ring buffer fails, a request will be\nterminated and fuse_uring_req_end() will set ent-\u003efuse_req to NULL but\nit will leave the entry on ent_w_req_queue in FRRS_FUSE_REQ state. This\ncan lead to a NULL deref if the request expiration logic scans\nent_w_req_queue in the window before the entry is moved off it.\n\nFix this by taking the entry off ent_w_req_queue and changing its state\nfrom FRRS_FUSE_REQ to FRRS_INVALID before terminating the request."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:10.093Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/0b466cf1b96e191b06b496c4de79da15315c3a9a"
            },
            {
              "url": "https://git.kernel.org/stable/c/0a7f33010c0e4cd92937e088a54350381fd0fbf2"
            },
            {
              "url": "https://git.kernel.org/stable/c/1c57a69be962d459c5e705f5cb4355b841b3461c"
            }
          ],
          "title": "fuse-uring: remove request-less entries from ent_w_req_queue to fix NULL deref",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64258",
        "datePublished": "2026-07-25T08:49:10.093Z",
        "dateReserved": "2026-07-19T15:36:31.773Z",
        "dateUpdated": "2026-07-25T08:49:10.093Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64257 (GCVE-0-2026-64257)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    smb: client: reject overlapping data areas in SMB2 responses
    Summary
    In the Linux kernel, the following vulnerability has been resolved: smb: client: reject overlapping data areas in SMB2 responses Commit 53b7c271f06b ("smb: client: restrict implied bcc[0] exemption to responses without data area") restricted the implied bcc[0] length exception to responses without a data area. However, the overlap handling in __smb2_calc_size() clears data_length, which can make an invalid response appear to have no data area and so qualify for the exception. Track data area overlap separately and reject such responses before applying the length compatibility exceptions.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 31c6312608c60b72a1feb99a5afb680645a3e8a3 , < 445ece263131780dee273d727a4d6f11934feec7 (git)
    Affected: 573e502d14714d2947e22e7eff40ec20a6a44a42 , < 36bfa52459e45c0d5b668de2f1c91f6dc5c67775 (git)
    Affected: 419ec1b604d7fb60c10aec2dc062371f9fcd4940 , < 4a9d2657d3e05f6ed09c148cb127b4e58702275f (git)
    Affected: ceb875a375dedbf51c9425c1d13a2d7a8435c08c , < fdafa1e68dc75045b7b617e6e7d2854950804d83 (git)
    Affected: 6e9d10f62773b99bd927940fd9cbdfe7207e23ff , < 57cba95f0e97c6f6e45e6731da30aff091bd7460 (git)
    Affected: 53b7c271f06be4dd5cfc8c6ef552a8355c891a7f , < 8986c932905ea508d66da421eb2eb6e676ace1fe (git)
    Affected: 8d0bbc78046d264bbf6a574ea6f9072258a43e35 (git)
    Affected: b6a381c01e2ac98a48e32ac0f2a45bbadd9e26b0 (git)
    Affected: 5.10.261 , < 5.11 (semver)
    Affected: 5.15.212 , < 5.16 (semver)
    Create a notification for this product.
    Linux Linux Affected: 7.2-rc3
    Unaffected: 0 , < 7.2-rc3 (semver)
    Unaffected: 7.2-rc4 , ≤ * (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/smb2misc.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "445ece263131780dee273d727a4d6f11934feec7",
                  "status": "affected",
                  "version": "31c6312608c60b72a1feb99a5afb680645a3e8a3",
                  "versionType": "git"
                },
                {
                  "lessThan": "36bfa52459e45c0d5b668de2f1c91f6dc5c67775",
                  "status": "affected",
                  "version": "573e502d14714d2947e22e7eff40ec20a6a44a42",
                  "versionType": "git"
                },
                {
                  "lessThan": "4a9d2657d3e05f6ed09c148cb127b4e58702275f",
                  "status": "affected",
                  "version": "419ec1b604d7fb60c10aec2dc062371f9fcd4940",
                  "versionType": "git"
                },
                {
                  "lessThan": "fdafa1e68dc75045b7b617e6e7d2854950804d83",
                  "status": "affected",
                  "version": "ceb875a375dedbf51c9425c1d13a2d7a8435c08c",
                  "versionType": "git"
                },
                {
                  "lessThan": "57cba95f0e97c6f6e45e6731da30aff091bd7460",
                  "status": "affected",
                  "version": "6e9d10f62773b99bd927940fd9cbdfe7207e23ff",
                  "versionType": "git"
                },
                {
                  "lessThan": "8986c932905ea508d66da421eb2eb6e676ace1fe",
                  "status": "affected",
                  "version": "53b7c271f06be4dd5cfc8c6ef552a8355c891a7f",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "8d0bbc78046d264bbf6a574ea6f9072258a43e35",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "b6a381c01e2ac98a48e32ac0f2a45bbadd9e26b0",
                  "versionType": "git"
                },
                {
                  "lessThan": "5.11",
                  "status": "affected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThan": "5.16",
                  "status": "affected",
                  "version": "5.15.212",
                  "versionType": "semver"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/smb/client/smb2misc.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "7.2-rc3"
                },
                {
                  "lessThan": "7.2-rc3",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc4",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc4",
                      "versionStartIncluding": "7.2-rc3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "5.10.261",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "5.15.212",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: reject overlapping data areas in SMB2 responses\n\nCommit 53b7c271f06b (\"smb: client: restrict implied bcc[0] exemption to\nresponses without data area\") restricted the implied bcc[0] length\nexception to responses without a data area. However, the overlap\nhandling in __smb2_calc_size() clears data_length, which can make an\ninvalid response appear to have no data area and so qualify for the\nexception.\n\nTrack data area overlap separately and reject such responses before\napplying the length compatibility exceptions."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 9.1,
                "baseSeverity": "CRITICAL",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:N - A malicious or compromised SMB server can deliver the crafted SMB2 response over TCP during client negotiation.\nAC:L - The overlapping offset and oversized length are attacker-controlled and deterministically bypass validation; no race or uncontrolled memory layout is required to trigger the out-of-bounds read.\nPR:N - The vulnerable NEGOTIATE response is processed before SMB authentication or signature verification, requiring no privileges or credentials on the target.\nUI:N - An already configured SMB mount can negotiate during automatic mounting or reconnection without a human opening crafted content.\nS:U - The vulnerable parser and the affected kernel memory remain within the Linux kernel\u0027s security authority.\nC:H - The validation mismatch permits an attacker-controlled ASN.1 length to read far beyond the 448-byte receive object, potentially traversing tens of kilobytes of adjacent kernel memory.\nI:N - The investigated paths provide an out-of-bounds read but no out-of-bounds write, use-after-free, type confusion, or other arbitrary modification primitive.\nA:H - The slab out-of-bounds access is repeatable and can produce a kernel fault or panic, particularly on hardened or memory-safety-instrumented deployments."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:19.248Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/445ece263131780dee273d727a4d6f11934feec7"
            },
            {
              "url": "https://git.kernel.org/stable/c/36bfa52459e45c0d5b668de2f1c91f6dc5c67775"
            },
            {
              "url": "https://git.kernel.org/stable/c/4a9d2657d3e05f6ed09c148cb127b4e58702275f"
            },
            {
              "url": "https://git.kernel.org/stable/c/fdafa1e68dc75045b7b617e6e7d2854950804d83"
            },
            {
              "url": "https://git.kernel.org/stable/c/57cba95f0e97c6f6e45e6731da30aff091bd7460"
            },
            {
              "url": "https://git.kernel.org/stable/c/8986c932905ea508d66da421eb2eb6e676ace1fe"
            }
          ],
          "title": "smb: client: reject overlapping data areas in SMB2 responses",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64257",
        "datePublished": "2026-07-25T08:49:09.345Z",
        "dateReserved": "2026-07-19T15:36:31.773Z",
        "dateUpdated": "2026-08-05T12:40:19.248Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64256 (GCVE-0-2026-64256)

    Vulnerability from nvd – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    xfs: don't wrap around quota ids in dqiterate
    Summary
    In the Linux kernel, the following vulnerability has been resolved: xfs: don't wrap around quota ids in dqiterate LOLLM noticed that q_id is an unsigned 32-bit variable. If it happens to be set to XFS_DQ_ID_MAX due to a filesystem that actually has a dquot for ID_MAX, then this addition will truncate to zero and the iteration starts over. Fix this by casting to u64.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 21d7500929c8a0b10e22a6755850c6f9a9280284 , < 249e311c2ba392ceaf9ebfc145a46922946f069a (git)
    Affected: 21d7500929c8a0b10e22a6755850c6f9a9280284 , < d1c4c40599c376aeb0c93068a2ae344e79ee4b90 (git)
    Affected: 21d7500929c8a0b10e22a6755850c6f9a9280284 , < 2b14fe1e0924c6b901f4256456342569c5397abe (git)
    Affected: 21d7500929c8a0b10e22a6755850c6f9a9280284 , < d766e4e5e85d829629c3ba503802fe1303d7b591 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.8
    Unaffected: 0 , < 6.8 (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc4 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/xfs/scrub/dqiterate.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "249e311c2ba392ceaf9ebfc145a46922946f069a",
                  "status": "affected",
                  "version": "21d7500929c8a0b10e22a6755850c6f9a9280284",
                  "versionType": "git"
                },
                {
                  "lessThan": "d1c4c40599c376aeb0c93068a2ae344e79ee4b90",
                  "status": "affected",
                  "version": "21d7500929c8a0b10e22a6755850c6f9a9280284",
                  "versionType": "git"
                },
                {
                  "lessThan": "2b14fe1e0924c6b901f4256456342569c5397abe",
                  "status": "affected",
                  "version": "21d7500929c8a0b10e22a6755850c6f9a9280284",
                  "versionType": "git"
                },
                {
                  "lessThan": "d766e4e5e85d829629c3ba503802fe1303d7b591",
                  "status": "affected",
                  "version": "21d7500929c8a0b10e22a6755850c6f9a9280284",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/xfs/scrub/dqiterate.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.8"
                },
                {
                  "lessThan": "6.8",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc4",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "6.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc4",
                      "versionStartIncluding": "6.8",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nxfs: don\u0027t wrap around quota ids in dqiterate\n\nLOLLM noticed that q_id is an unsigned 32-bit variable.  If it happens\nto be set to XFS_DQ_ID_MAX due to a filesystem that actually has a dquot\nfor ID_MAX, then this addition will truncate to zero and the iteration\nstarts over.  Fix this by casting to u64."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:08.676Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/249e311c2ba392ceaf9ebfc145a46922946f069a"
            },
            {
              "url": "https://git.kernel.org/stable/c/d1c4c40599c376aeb0c93068a2ae344e79ee4b90"
            },
            {
              "url": "https://git.kernel.org/stable/c/2b14fe1e0924c6b901f4256456342569c5397abe"
            },
            {
              "url": "https://git.kernel.org/stable/c/d766e4e5e85d829629c3ba503802fe1303d7b591"
            }
          ],
          "title": "xfs: don\u0027t wrap around quota ids in dqiterate",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64256",
        "datePublished": "2026-07-25T08:49:08.676Z",
        "dateReserved": "2026-07-19T15:36:31.773Z",
        "dateUpdated": "2026-07-25T08:49:08.676Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64298 (GCVE-0-2026-64298)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    NFSv4: include MAY_WRITE in open permission mask for O_TRUNC
    Summary
    In the Linux kernel, the following vulnerability has been resolved: NFSv4: include MAY_WRITE in open permission mask for O_TRUNC POSIX requires write permission to truncate a file, so an open() that specifies O_TRUNC must be authorized for write access regardless of the O_ACCMODE access mode. nfs_open_permission_mask() builds the access mask passed to nfs_may_open(), which is the local authorization gate for OPENs the client serves itself from a cached write delegation via the can_open_delegated() path in nfs4_try_open_cached(). The mask is derived from O_ACCMODE alone, so an open(O_RDONLY | O_TRUNC) against a file the caller cannot write requests only MAY_READ and passes the local check. The OPEN is then satisfied locally and the truncation is issued to the server as a SETATTR(size=0) over the delegation stateid, which the server accepts under standard write-delegation semantics. POSIX requires that this open fail with EACCES. Include MAY_WRITE in the mask whenever O_TRUNC is set so the local check matches the access the server would have enforced.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 4817c8974315b666e895b7d1bb83cd3664c323b1 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < cb148a2762d644bff1894728e8835a9a4b84f9ea (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 30fdf4df6c3c00efec947e4ddf97f0fdd4473628 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 22c1fd1355ad4ca27aa7f0fa02719122dd92d9de (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 6bd7d0a06b53c4e797e1a9cea0d2d41aa1b26230 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < a937e92c1d00534b5c2e3e9f4381b7e988180797 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < e36501b7d4abdcd6d69a7cb901b2f286b7a3d041 (git)
    Affected: af22f94ae02ab9dd4fd7fe628c8434a59cc293be , < 5140f099ecd8a2f2808b7f7b720ee1bad8468974 (git)
    Create a notification for this product.
    Linux Linux Affected: 2.6.24
    Unaffected: 0 , < 2.6.24 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (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.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-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/nfs/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "4817c8974315b666e895b7d1bb83cd3664c323b1",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "cb148a2762d644bff1894728e8835a9a4b84f9ea",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "30fdf4df6c3c00efec947e4ddf97f0fdd4473628",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "22c1fd1355ad4ca27aa7f0fa02719122dd92d9de",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "6bd7d0a06b53c4e797e1a9cea0d2d41aa1b26230",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "a937e92c1d00534b5c2e3e9f4381b7e988180797",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "e36501b7d4abdcd6d69a7cb901b2f286b7a3d041",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                },
                {
                  "lessThan": "5140f099ecd8a2f2808b7f7b720ee1bad8468974",
                  "status": "affected",
                  "version": "af22f94ae02ab9dd4fd7fe628c8434a59cc293be",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/nfs/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "2.6.24"
                },
                {
                  "lessThan": "2.6.24",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc3",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.10.261",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc3",
                      "versionStartIncluding": "2.6.24",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nNFSv4: include MAY_WRITE in open permission mask for O_TRUNC\n\nPOSIX requires write permission to truncate a file, so an open() that\nspecifies O_TRUNC must be authorized for write access regardless of the\nO_ACCMODE access mode.\n\nnfs_open_permission_mask() builds the access mask passed to\nnfs_may_open(), which is the local authorization gate for OPENs the\nclient serves itself from a cached write delegation via the\ncan_open_delegated() path in nfs4_try_open_cached().  The mask is\nderived from O_ACCMODE alone, so an open(O_RDONLY | O_TRUNC) against a\nfile the caller cannot write requests only MAY_READ and passes the\nlocal check.  The OPEN is then satisfied locally and the truncation is\nissued to the server as a SETATTR(size=0) over the delegation stateid,\nwhich the server accepts under standard write-delegation semantics.\nPOSIX requires that this open fail with EACCES.\n\nInclude MAY_WRITE in the mask whenever O_TRUNC is set so the local\ncheck matches the access the server would have enforced."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.1,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - An unprivileged local process triggers the flaw through open/openat with O_RDONLY|O_TRUNC on an accessible NFSv4-mounted file. The resulting NFS RPC is outbound and does not make the attack remotely reachable.\nAC:L - Once the client holds a standard cached write delegation, a single deterministic open triggers the unauthorized truncation without a race or timing requirement. Delegations persist and the attacker can repeatedly target files actively written through the same client.\nPR:L - The attacker needs only ordinary local access and read/search permission for the target path; no capability or administrative privilege is required. User namespaces are unnecessary.\nUI:N - The attacker invokes open directly and no contemporaneous action by another user is required.\nS:U - The faulty client-side permission check and modification of the delegated NFS file remain within the NFS filesystem access-control authority.\nC:N - The flaw discloses no kernel or file data beyond content the caller was already authorized to read, and it involves no memory corruption.\nI:H - The attacker can irreversibly truncate the complete contents of a file for which write access was denied, causing total integrity loss of that resource.\nA:H - Truncating critical NFS-hosted executables, configuration, databases, or operational data can completely disable dependent systems or services, and the attack can be repeated against additional delegated files."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:41.562Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/4817c8974315b666e895b7d1bb83cd3664c323b1"
            },
            {
              "url": "https://git.kernel.org/stable/c/cb148a2762d644bff1894728e8835a9a4b84f9ea"
            },
            {
              "url": "https://git.kernel.org/stable/c/30fdf4df6c3c00efec947e4ddf97f0fdd4473628"
            },
            {
              "url": "https://git.kernel.org/stable/c/22c1fd1355ad4ca27aa7f0fa02719122dd92d9de"
            },
            {
              "url": "https://git.kernel.org/stable/c/6bd7d0a06b53c4e797e1a9cea0d2d41aa1b26230"
            },
            {
              "url": "https://git.kernel.org/stable/c/a937e92c1d00534b5c2e3e9f4381b7e988180797"
            },
            {
              "url": "https://git.kernel.org/stable/c/e36501b7d4abdcd6d69a7cb901b2f286b7a3d041"
            },
            {
              "url": "https://git.kernel.org/stable/c/5140f099ecd8a2f2808b7f7b720ee1bad8468974"
            }
          ],
          "title": "NFSv4: include MAY_WRITE in open permission mask for O_TRUNC",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64298",
        "datePublished": "2026-07-25T08:49:35.101Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-08-05T12:40:41.562Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64297 (GCVE-0-2026-64297)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    module: decompress: check return value of module_extend_max_pages()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: module: decompress: check return value of module_extend_max_pages() module_extend_max_pages() calls kvrealloc() internally and returns -ENOMEM on allocation failure. The return value is never checked. If the initial allocation fails, info->pages remains NULL and info->max_pages remains 0. Subsequent calls to module_get_next_page() will attempt to dynamically grow the array by calling module_extend_max_pages(info, 0) since info->used_pages is 0. This results in kvrealloc(NULL, 0) returning ZERO_SIZE_PTR, which is treated as a success, leading to a dereference of ZERO_SIZE_PTR and a kernel oops. Fix: add the missing error check after module_extend_max_pages() and return immediately on failure. This matches the pattern used by every other kvrealloc() caller in the module loading path. [Sami: Corrected the analysis in the commit message.]
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < e7f174715f9f0cbcb9e87b52e4fc4ef149baac98 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < afcc0515bbdd28d509a2b5870faaa89b137f5d53 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < 168072baf9ad516d5a06046514c7fea4c0671990 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < a82e170637e050a803b4f37542371ef216bf66d2 (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < e7da02659c229f73492fb1ed87ceda4090153aaa (git)
    Affected: b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7 , < 786d2d84416a9a1c1a47b71a68d679d886284be2 (git)
    Create a notification for this product.
    Linux Linux Affected: 5.17
    Unaffected: 0 , < 5.17 (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "kernel/module/decompress.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "e7f174715f9f0cbcb9e87b52e4fc4ef149baac98",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "afcc0515bbdd28d509a2b5870faaa89b137f5d53",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "168072baf9ad516d5a06046514c7fea4c0671990",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "a82e170637e050a803b4f37542371ef216bf66d2",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "e7da02659c229f73492fb1ed87ceda4090153aaa",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                },
                {
                  "lessThan": "786d2d84416a9a1c1a47b71a68d679d886284be2",
                  "status": "affected",
                  "version": "b1ae6dc41eaaa98bb75671e0f3665bfda248c3e7",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "kernel/module/decompress.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.17"
                },
                {
                  "lessThan": "5.17",
                  "status": "unaffected",
                  "version": "0",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "5.17",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmodule: decompress: check return value of module_extend_max_pages()\n\nmodule_extend_max_pages() calls kvrealloc() internally and returns\n-ENOMEM on allocation failure. The return value is never checked.\n\nIf the initial allocation fails, info-\u003epages remains NULL and\ninfo-\u003emax_pages remains 0. Subsequent calls to module_get_next_page()\nwill attempt to dynamically grow the array by calling\nmodule_extend_max_pages(info, 0) since info-\u003eused_pages is 0. This\nresults in kvrealloc(NULL, 0) returning ZERO_SIZE_PTR, which is treated\nas a success, leading to a dereference of ZERO_SIZE_PTR and a kernel\noops.\n\nFix: add the missing error check after module_extend_max_pages() and\nreturn immediately on failure. This matches the pattern used by every\nother kvrealloc() caller in the module loading path.\n\n[Sami: Corrected the analysis in the commit message.]"
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:34.486Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/e7f174715f9f0cbcb9e87b52e4fc4ef149baac98"
            },
            {
              "url": "https://git.kernel.org/stable/c/afcc0515bbdd28d509a2b5870faaa89b137f5d53"
            },
            {
              "url": "https://git.kernel.org/stable/c/168072baf9ad516d5a06046514c7fea4c0671990"
            },
            {
              "url": "https://git.kernel.org/stable/c/a82e170637e050a803b4f37542371ef216bf66d2"
            },
            {
              "url": "https://git.kernel.org/stable/c/e7da02659c229f73492fb1ed87ceda4090153aaa"
            },
            {
              "url": "https://git.kernel.org/stable/c/786d2d84416a9a1c1a47b71a68d679d886284be2"
            }
          ],
          "title": "module: decompress: check return value of module_extend_max_pages()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64297",
        "datePublished": "2026-07-25T08:49:34.486Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:34.486Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64296 (GCVE-0-2026-64296)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    exfat: bound uniname advance in exfat_find_dir_entry()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: exfat: bound uniname advance in exfat_find_dir_entry() In exfat_find_dir_entry(), each TYPE_EXTEND (file name) entry advances the output pointer by a fixed amount while the loop guard only tracks the accumulated name length: if (++order == 2) uniname = p_uniname->name; else uniname += EXFAT_FILE_NAME_LEN; len = exfat_extract_uni_name(ep, entry_uniname); name_len += len; unichar = *(uniname+len); *(uniname+len) = 0x0; uniname grows by EXFAT_FILE_NAME_LEN (15) per name entry, but name_len grows only by the actual extracted length, which is shorter when a name fragment contains an early NUL. The only guard is `name_len >= MAX_NAME_LENGTH`, so a crafted directory with many short name fragments lets uniname run far past the p_uniname->name[MAX_NAME_LENGTH + 3] buffer while name_len stays small, causing an out-of-bounds read and write at *(uniname+len). The sibling extractor exfat_get_uniname_from_ext_entry() already stops on a short fragment (the lockstep `len != EXFAT_FILE_NAME_LEN` guard added in commit d42334578eba ("exfat: check if filename entries exceeds max filename length")); exfat_find_dir_entry() never got the equivalent. Track the per-entry write offset as a count and reject a fragment once the offset, or the offset plus the extracted length, would exceed MAX_NAME_LENGTH, before forming the output pointer.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 72a2589d82eb001c94b74bcfe6f9a599bd9bef60 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < fae76a94b35ee8c0e2eb6f64caca01d75c6d34e4 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < cf85180b8a015029ee147694eaf4e0b3537e9432 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < ce4736c1e6c4cfbf1ac409a8c328a0b69546c9a0 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 727bf7783a2936ffd55c628dddfd69343e511dcf (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 33c0b96d7e1672be1de0053786637ea46fb81507 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < c8e041c68c0bbb73aa62371ee63947bb6949d8b2 (git)
    Affected: ca06197382bde0a3bc20215595d1c9ce20c6e341 , < 3a1230e7b043c62737b05a3e9275ca83a43ad20a (git)
    Create a notification for this product.
    Linux Linux Affected: 5.7
    Unaffected: 0 , < 5.7 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (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.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/exfat/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "72a2589d82eb001c94b74bcfe6f9a599bd9bef60",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "fae76a94b35ee8c0e2eb6f64caca01d75c6d34e4",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "cf85180b8a015029ee147694eaf4e0b3537e9432",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "ce4736c1e6c4cfbf1ac409a8c328a0b69546c9a0",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "727bf7783a2936ffd55c628dddfd69343e511dcf",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "33c0b96d7e1672be1de0053786637ea46fb81507",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "c8e041c68c0bbb73aa62371ee63947bb6949d8b2",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                },
                {
                  "lessThan": "3a1230e7b043c62737b05a3e9275ca83a43ad20a",
                  "status": "affected",
                  "version": "ca06197382bde0a3bc20215595d1c9ce20c6e341",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/exfat/dir.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.7"
                },
                {
                  "lessThan": "5.7",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "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.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.10.261",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "5.7",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nexfat: bound uniname advance in exfat_find_dir_entry()\n\nIn exfat_find_dir_entry(), each TYPE_EXTEND (file name) entry advances the\noutput pointer by a fixed amount while the loop guard only tracks the\naccumulated name length:\n\n\tif (++order == 2)\n\t\tuniname = p_uniname-\u003ename;\n\telse\n\t\tuniname += EXFAT_FILE_NAME_LEN;\n\tlen = exfat_extract_uni_name(ep, entry_uniname);\n\tname_len += len;\n\tunichar = *(uniname+len);\n\t*(uniname+len) = 0x0;\n\nuniname grows by EXFAT_FILE_NAME_LEN (15) per name entry, but name_len\ngrows only by the actual extracted length, which is shorter when a name\nfragment contains an early NUL.  The only guard is\n`name_len \u003e= MAX_NAME_LENGTH`, so a crafted directory with many short\nname fragments lets uniname run far past the\np_uniname-\u003ename[MAX_NAME_LENGTH + 3] buffer while name_len stays small,\ncausing an out-of-bounds read and write at *(uniname+len).\n\nThe sibling extractor exfat_get_uniname_from_ext_entry() already stops\non a short fragment (the lockstep `len != EXFAT_FILE_NAME_LEN` guard\nadded in commit d42334578eba (\"exfat: check if filename entries exceeds\nmax filename length\")); exfat_find_dir_entry() never got the\nequivalent.  Track the per-entry write offset as a count and reject a\nfragment once the offset, or the offset plus the extracted length, would\nexceed MAX_NAME_LENGTH, before forming the output pointer."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - A crafted exFAT image is reached through local pathname operations such as openat(), which call exfat_lookup(), exfat_find(), and exfat_find_dir_entry(); loop-backed images make physical access unnecessary.\nAC:L - The attacker controls the stream hash, declared name length, extension-entry sequence, and early NUL characters, making the out-of-bounds access deterministic without a race or uncontrollable condition.\nPR:L - Although exFAT cannot be mounted directly from a user namespace, common storage brokers allow an active unprivileged user to mount a loop-backed non-system image. Once mounted, triggering lookup requires only ordinary directory search access and no capability.\nUI:N - The unprivileged attacker can mount the crafted image through such a storage broker and issue the triggering pathname lookup without another user\u0027s action.\nS:U - The vulnerable filesystem parser and the affected kernel memory belong to the same security authority; ordinary kernel privilege escalation does not change scope.\nC:H - Crafted entries cause repeated out-of-bounds 16-bit reads across the kernel stack, and filename comparison behavior can provide an oracle over attacker-selected stack locations. Successful control-flow corruption could disclose arbitrary kernel memory.\nI:H - The function writes zero beyond the stack buffer, and the successful-match path can jump to found without restoring the overwritten value. Attacker-selected stack control data or pointers can therefore be corrupted, potentially enabling arbitrary writes or kernel code execution.\nA:H - Zero-length fragments can advance the pointer until it reaches a stack guard page or corrupts control data, causing an oops, panic, or persistent lockup."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:40.483Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/72a2589d82eb001c94b74bcfe6f9a599bd9bef60"
            },
            {
              "url": "https://git.kernel.org/stable/c/fae76a94b35ee8c0e2eb6f64caca01d75c6d34e4"
            },
            {
              "url": "https://git.kernel.org/stable/c/cf85180b8a015029ee147694eaf4e0b3537e9432"
            },
            {
              "url": "https://git.kernel.org/stable/c/ce4736c1e6c4cfbf1ac409a8c328a0b69546c9a0"
            },
            {
              "url": "https://git.kernel.org/stable/c/727bf7783a2936ffd55c628dddfd69343e511dcf"
            },
            {
              "url": "https://git.kernel.org/stable/c/33c0b96d7e1672be1de0053786637ea46fb81507"
            },
            {
              "url": "https://git.kernel.org/stable/c/c8e041c68c0bbb73aa62371ee63947bb6949d8b2"
            },
            {
              "url": "https://git.kernel.org/stable/c/3a1230e7b043c62737b05a3e9275ca83a43ad20a"
            }
          ],
          "title": "exfat: bound uniname advance in exfat_find_dir_entry()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64296",
        "datePublished": "2026-07-25T08:49:33.847Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-08-05T12:40:40.483Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64295 (GCVE-0-2026-64295)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    mm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access
    Summary
    In the Linux kernel, the following vulnerability has been resolved: mm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access The page_ext iteration API does not validate if the PFN still belongs to a valid section while advancing the iterator. When dynamically adding memory in the hotplug path, it can lead to a NULL pointer dereference during page_ext_lookup at the boundary of the last valid section when iterator count equals __pgcount. The for_each_page_ext() macro calls page_ext_iter_next() as its loop increment. for_each_page_ext() does a "__page_ext = page_ext_iter_next(&__iter)" at the end. This causes page_ext_iter_next() to increment iter->index past __pgcount and call page_ext_lookup(start_pfn + __pgcount). During memory hotplug (online), the PFN at start_pfn + __pgcount may belong to a section that has not yet been initialized, causing page_ext_lookup() to trigger a NULL pointer dereference. [ 14.555124][ T846] Call trace: [ 14.555125][ T846] lookup_page_ext+0x6c/0x108 (P) [ 14.555127][ T846] page_ext_lookup+0x30/0x3c [ 14.555129][ T846] __reset_page_owner+0x11c/0x260 [ 14.571201][ T846] __free_pages_ok+0x5e8/0x8e0 [ 14.571204][ T846] __free_pages_core+0x78/0xf0 [ 14.571206][ T846] generic_online_page+0x14/0x24 [ 14.597782][ T846] online_pages+0x178/0x30c [ 14.597784][ T846] memory_block_change_state+0x284/0x32c [ 14.597787][ T846] memory_subsys_online+0x4c/0x64 [ 14.597789][ T846] device_online+0x88/0xb0 [ 14.597791][ T846] online_memory_block+0x30/0x40 [ 14.597793][ T846] walk_memory_blocks+0xac/0xe8 [ 14.597794][ T846] add_memory_resource+0x280/0x298 [ 14.656161][ T846] add_memory+0x60/0x98 Move the iteration boundary enforcement inside the iterator functions, so callers cannot inadvertently access beyond the requested range.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 9039b9096ea27a20f0349d1537537663c935c8ed , < 8dcaa0f87a88d720d13106f3a306c6b61d189d86 (git)
    Affected: 9039b9096ea27a20f0349d1537537663c935c8ed , < 377b1cd6bbcf327338cd951cc2fd74bc75540235 (git)
    Affected: 9039b9096ea27a20f0349d1537537663c935c8ed , < ffd017237cfe99e6e5602ab14179b0e6878a0840 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc3 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "include/linux/page_ext.h"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "8dcaa0f87a88d720d13106f3a306c6b61d189d86",
                  "status": "affected",
                  "version": "9039b9096ea27a20f0349d1537537663c935c8ed",
                  "versionType": "git"
                },
                {
                  "lessThan": "377b1cd6bbcf327338cd951cc2fd74bc75540235",
                  "status": "affected",
                  "version": "9039b9096ea27a20f0349d1537537663c935c8ed",
                  "versionType": "git"
                },
                {
                  "lessThan": "ffd017237cfe99e6e5602ab14179b0e6878a0840",
                  "status": "affected",
                  "version": "9039b9096ea27a20f0349d1537537663c935c8ed",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "include/linux/page_ext.h"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc3",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc3",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access\n\nThe page_ext iteration API does not validate if the PFN still belongs to a\nvalid section while advancing the iterator.  When dynamically adding\nmemory in the hotplug path, it can lead to a NULL pointer dereference\nduring page_ext_lookup at the boundary of the last valid section when\niterator count equals __pgcount.\n\nThe for_each_page_ext() macro calls page_ext_iter_next() as its loop\nincrement.  for_each_page_ext() does a \"__page_ext =\npage_ext_iter_next(\u0026__iter)\" at the end.  This causes page_ext_iter_next()\nto increment iter-\u003eindex past __pgcount and call page_ext_lookup(start_pfn\n+ __pgcount).  During memory hotplug (online), the PFN at start_pfn +\n__pgcount may belong to a section that has not yet been initialized,\ncausing page_ext_lookup() to trigger a NULL pointer dereference.\n\n[   14.555124][  T846] Call trace:\n[   14.555125][  T846]  lookup_page_ext+0x6c/0x108 (P)\n[   14.555127][  T846]  page_ext_lookup+0x30/0x3c\n[   14.555129][  T846]  __reset_page_owner+0x11c/0x260\n[   14.571201][  T846]  __free_pages_ok+0x5e8/0x8e0\n[   14.571204][  T846]  __free_pages_core+0x78/0xf0\n[   14.571206][  T846]  generic_online_page+0x14/0x24\n[   14.597782][  T846]  online_pages+0x178/0x30c\n[   14.597784][  T846]  memory_block_change_state+0x284/0x32c\n[   14.597787][  T846]  memory_subsys_online+0x4c/0x64\n[   14.597789][  T846]  device_online+0x88/0xb0\n[   14.597791][  T846]  online_memory_block+0x30/0x40\n[   14.597793][  T846]  walk_memory_blocks+0xac/0xe8\n[   14.597794][  T846]  add_memory_resource+0x280/0x298\n[   14.656161][  T846]  add_memory+0x60/0x98\n\nMove the iteration boundary enforcement inside the iterator functions, so\ncallers cannot inadvertently access beyond the requested range."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:33.194Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/8dcaa0f87a88d720d13106f3a306c6b61d189d86"
            },
            {
              "url": "https://git.kernel.org/stable/c/377b1cd6bbcf327338cd951cc2fd74bc75540235"
            },
            {
              "url": "https://git.kernel.org/stable/c/ffd017237cfe99e6e5602ab14179b0e6878a0840"
            }
          ],
          "title": "mm: page_ext: add count limit to page_ext_iter_next to prevent invalid PFN access",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64295",
        "datePublished": "2026-07-25T08:49:33.194Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:33.194Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64294 (GCVE-0-2026-64294)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    mm: do file ownership checks with the proper mount idmap
    Summary
    In the Linux kernel, the following vulnerability has been resolved: mm: do file ownership checks with the proper mount idmap Ever since idmapped mounts were introduced, inode ownership checks (for side-channel protection) in mincore() and madvise(MADV_PAGEOUT) were done against the nop_mnt_idmap, which completely ignores the file's mount's idmap. This results in odd edgecases like: 1) mount/bind-mount with an idmap userA:userB:1 2) userB runs an owner_or_capable() check on file that is owned by userA on-disk/in-memory, but owned by userB after idmap translation 3) owner_or_capable() mysteriously fails as the correct idmap wasn't supplied In the case of mincore/madvise MADV_PAGEOUT, this is usually benign, because file_permission(file, MAY_WRITE) will probably succeed, as it uses the proper idmap internally, but it does not need to be the case on e.g a 0444 file where even the owner itself doesn't have permissions to write to it. Since this is clearly not trivial to get right, introduce a file_owner_or_capable() that can carry the correct semantics, and switch the various users in mm to it. The issue was found by manual code inspection & an off-list discussion with Jan Kara.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 744b23aa430d52f5c8e4dbff7d71496d6643bed2 (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 8344bdf0629457e532797b42d9d2bbf2a2900bbf (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 5c942ad7df75925ee166e7f0fb36892d8dde376b (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < 04ba248d02d9eaa3d9077b00a6134caa75fa3e90 (git)
    Affected: 9caccd41541a6f7d6279928d9f971f6642c361af , < e187bc02f8fa4226d62814592cf064ee4557c470 (git)
    Create a notification for this product.
    Linux Linux Affected: 5.12
    Unaffected: 0 , < 5.12 (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc3 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "include/linux/fs.h",
                "mm/filemap.c",
                "mm/madvise.c",
                "mm/mincore.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "744b23aa430d52f5c8e4dbff7d71496d6643bed2",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "8344bdf0629457e532797b42d9d2bbf2a2900bbf",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "5c942ad7df75925ee166e7f0fb36892d8dde376b",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "04ba248d02d9eaa3d9077b00a6134caa75fa3e90",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                },
                {
                  "lessThan": "e187bc02f8fa4226d62814592cf064ee4557c470",
                  "status": "affected",
                  "version": "9caccd41541a6f7d6279928d9f971f6642c361af",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "include/linux/fs.h",
                "mm/filemap.c",
                "mm/madvise.c",
                "mm/mincore.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.12"
                },
                {
                  "lessThan": "5.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc3",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc3",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmm: do file ownership checks with the proper mount idmap\n\nEver since idmapped mounts were introduced, inode ownership checks (for\nside-channel protection) in mincore() and madvise(MADV_PAGEOUT) were done\nagainst the nop_mnt_idmap, which completely ignores the file\u0027s mount\u0027s\nidmap.  This results in odd edgecases like:\n\n1) mount/bind-mount with an idmap userA:userB:1\n2) userB runs an owner_or_capable() check on file that is owned by userA\non-disk/in-memory, but owned by userB after idmap translation\n3) owner_or_capable() mysteriously fails as the correct idmap wasn\u0027t supplied\n\nIn the case of mincore/madvise MADV_PAGEOUT, this is usually benign,\nbecause file_permission(file, MAY_WRITE) will probably succeed, as it uses\nthe proper idmap internally, but it does not need to be the case on e.g a\n0444 file where even the owner itself doesn\u0027t have permissions to write to\nit.\n\nSince this is clearly not trivial to get right, introduce a\nfile_owner_or_capable() that can carry the correct semantics, and switch\nthe various users in mm to it.\n\nThe issue was found by manual code inspection \u0026 an off-list discussion\nwith Jan Kara."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:32.570Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/744b23aa430d52f5c8e4dbff7d71496d6643bed2"
            },
            {
              "url": "https://git.kernel.org/stable/c/8344bdf0629457e532797b42d9d2bbf2a2900bbf"
            },
            {
              "url": "https://git.kernel.org/stable/c/5c942ad7df75925ee166e7f0fb36892d8dde376b"
            },
            {
              "url": "https://git.kernel.org/stable/c/04ba248d02d9eaa3d9077b00a6134caa75fa3e90"
            },
            {
              "url": "https://git.kernel.org/stable/c/e187bc02f8fa4226d62814592cf064ee4557c470"
            }
          ],
          "title": "mm: do file ownership checks with the proper mount idmap",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64294",
        "datePublished": "2026-07-25T08:49:32.570Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:32.570Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64293 (GCVE-0-2026-64293)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
    VLAI
    Title
    iommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read
    Summary
    In the Linux kernel, the following vulnerability has been resolved: iommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read The bound-check in iommufd_veventq_fops_read() for the normal vEVENT path uses sizeof(hdr) where the surrounding code uses sizeof(*hdr): if (!vevent_for_lost_events_header(cur) && sizeof(hdr) + cur->data_len > count - done) { hdr is declared as struct iommufd_vevent_header *, so sizeof(hdr) evaluates to the size of the pointer. Surrounding code uses sizeof(*hdr) consistently: if (done >= count || sizeof(*hdr) > count - done) { ... if (copy_to_user(buf + done, hdr, sizeof(*hdr))) { ... done += sizeof(*hdr); struct iommufd_vevent_header is currently 8 bytes (two __u32 fields, flags and sequence), so on 64-bit (sizeof(void *) == 8) the two expressions happen to be equal and the check works as intended. On 32-bit (sizeof(void *) == 4) the check under-counts the header by 4 bytes: a vEVENT whose data_len causes 8 + cur->data_len to exceed count - done while 4 + cur->data_len does not will pass the check, then the loop will copy_to_user 8 bytes of header followed by data_len bytes of payload, writing past the user-supplied buffer. It is also a latent bug for any future expansion of struct iommufd_vevent_header beyond sizeof(void *) on 64-bit; the check should not depend on the type happening to match the host pointer width. Use sizeof(*hdr) to match the rest of the function and the actual amount that will be copied.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 04a177f91160ee18da98f5689482cf0f589ec869 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 0cdbb97a4dbd69abdd2ab998b4fbc7803d4b0b72 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < be93d186ae88a92e7aa77e122d4e661fa57b1e39 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "04a177f91160ee18da98f5689482cf0f589ec869",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "0cdbb97a4dbd69abdd2ab998b4fbc7803d4b0b72",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "be93d186ae88a92e7aa77e122d4e661fa57b1e39",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read\n\nThe bound-check in iommufd_veventq_fops_read() for the normal vEVENT\npath uses sizeof(hdr) where the surrounding code uses sizeof(*hdr):\n\n\tif (!vevent_for_lost_events_header(cur) \u0026\u0026\n\t    sizeof(hdr) + cur-\u003edata_len \u003e count - done) {\n\nhdr is declared as struct iommufd_vevent_header *, so sizeof(hdr)\nevaluates to the size of the pointer.  Surrounding code uses\nsizeof(*hdr) consistently:\n\n\tif (done \u003e= count || sizeof(*hdr) \u003e count - done) {\n\t...\n\tif (copy_to_user(buf + done, hdr, sizeof(*hdr))) {\n\t...\n\tdone += sizeof(*hdr);\n\nstruct iommufd_vevent_header is currently 8 bytes (two __u32 fields,\nflags and sequence), so on 64-bit (sizeof(void *) == 8) the two\nexpressions happen to be equal and the check works as intended.\n\nOn 32-bit (sizeof(void *) == 4) the check under-counts the header by\n4 bytes: a vEVENT whose data_len causes 8 + cur-\u003edata_len to exceed\ncount - done while 4 + cur-\u003edata_len does not will pass the check,\nthen the loop will copy_to_user 8 bytes of header followed by data_len\nbytes of payload, writing past the user-supplied buffer.\n\nIt is also a latent bug for any future expansion of struct\niommufd_vevent_header beyond sizeof(void *) on 64-bit; the check\nshould not depend on the type happening to match the host pointer\nwidth.\n\nUse sizeof(*hdr) to match the rest of the function and the actual\namount that will be copied."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The vulnerable function is reached through read() on a locally held iommufd vEVENTQ file descriptor; it is not directly network- or device-packet-facing.\nAC:L - On an affected 32-bit deployment, the attacker can deterministically queue an event and choose a count that is one to four bytes too small; no race or uncontrollable condition is required.\nPR:L - No capability check occurs during the vulnerable read, and an unprivileged VMM or user granted an iommufd/vEVENTQ descriptor can invoke it without real init-namespace root.\nUI:N - Exploitation requires only attacker-controlled event generation and a read syscall; no separate victim action is required.\nS:U - The corruption occurs through the host kernel\u0027s userspace API and does not itself bypass an IOMMU boundary or demonstrate a guest-to-host escape.\nC:H - The four-byte overwrite can replace a complete pointer or control word in a 32-bit event consumer, potentially enabling code execution and disclosure of arbitrary process secrets.\nI:H - The kernel writes up to four payload bytes beyond the declared userspace buffer, which can corrupt a full 32-bit control value and potentially permit control-flow hijacking.\nA:H - The overwrite can crash a privileged VMM or other event-consuming service, and controllable event generation permits the condition to be triggered repeatedly."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:40:39.398Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/04a177f91160ee18da98f5689482cf0f589ec869"
            },
            {
              "url": "https://git.kernel.org/stable/c/0cdbb97a4dbd69abdd2ab998b4fbc7803d4b0b72"
            },
            {
              "url": "https://git.kernel.org/stable/c/be93d186ae88a92e7aa77e122d4e661fa57b1e39"
            }
          ],
          "title": "iommufd: Use sizeof(*hdr) instead of sizeof(hdr) in veventq read",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64293",
        "datePublished": "2026-07-25T08:49:31.945Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-08-05T12:40:39.398Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64292 (GCVE-0-2026-64292)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    iommufd: Move vevent memory allocation outside spinlock
    Summary
    In the Linux kernel, the following vulnerability has been resolved: iommufd: Move vevent memory allocation outside spinlock The veventq memory allocation happens inside the spinlock. Given its depth is decided by the user space, this leaves a vulnerability, where userspace can allocate large queues to exhaust atomic memory reserves. Move the allocation outside the spinlock and use GFP_NOWAIT, which can fail fast under memory pressure without dipping into the GFP_ATOMIC reserves or direct-reclaiming from the threaded IRQ handler. On allocation failure, queue the lost_events_header (so userspace learns of the drop) and return -ENOMEM so the caller learns of the kernel-side memory pressure. This is intentionally distinct from the queue-overflow path, which also queues the lost_events_header but returns 0: a full queue is an expected userspace-pacing condition rather than a kernel error. A subsequent change will cap the upper bound of the veventq_depth.
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 779480ea79551c31964e74b9aef0e730faa3aa11 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 6c5fc40200cd0a87d66a368eee00df4d1cca946e (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 47443565d10c51366c9382dbc8597cd6c460b8a2 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.40 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/driver.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "779480ea79551c31964e74b9aef0e730faa3aa11",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6c5fc40200cd0a87d66a368eee00df4d1cca946e",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "47443565d10c51366c9382dbc8597cd6c460b8a2",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/driver.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.40",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.40",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommufd: Move vevent memory allocation outside spinlock\n\nThe veventq memory allocation happens inside the spinlock. Given its depth\nis decided by the user space, this leaves a vulnerability, where userspace\ncan allocate large queues to exhaust atomic memory reserves.\n\nMove the allocation outside the spinlock and use GFP_NOWAIT, which can fail\nfast under memory pressure without dipping into the GFP_ATOMIC reserves or\ndirect-reclaiming from the threaded IRQ handler. On allocation failure,\nqueue the lost_events_header (so userspace learns of the drop) and return\n-ENOMEM so the caller learns of the kernel-side memory pressure.\n\nThis is intentionally distinct from the queue-overflow path, which also\nqueues the lost_events_header but returns 0: a full queue is an expected\nuserspace-pacing condition rather than a kernel error.\n\nA subsequent change will cap the upper bound of the veventq_depth."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:31.325Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/779480ea79551c31964e74b9aef0e730faa3aa11"
            },
            {
              "url": "https://git.kernel.org/stable/c/6c5fc40200cd0a87d66a368eee00df4d1cca946e"
            },
            {
              "url": "https://git.kernel.org/stable/c/47443565d10c51366c9382dbc8597cd6c460b8a2"
            }
          ],
          "title": "iommufd: Move vevent memory allocation outside spinlock",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64292",
        "datePublished": "2026-07-25T08:49:31.325Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:31.325Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64291 (GCVE-0-2026-64291)

    Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-07-25 08:49
    VLAI
    Title
    iommufd: Set veventq_depth upper bound
    Summary
    In the Linux kernel, the following vulnerability has been resolved: iommufd: Set veventq_depth upper bound iommufd_veventq_alloc() accepts any !0 veventq_depth from userspace, with an upper bound at U32_MAX. This leaves a vulnerability where userspace can allocate excessively large queues to exhaust kernel memory reserves. Cap the veventq_depth (maximum number of entries) to 1 << 19, matching the maximum number of entries in the SMMUv3 EVTQ (the largest use case today).
    Severity
    No CVSS data available.
    Assigner
    Impacted products
    Vendor Product Version
    Linux Linux Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < f565297edf316016be4a1a9e2eb9f39359313f43 (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < e7b5e55652746b1221b9c10ff80eae8a154101ba (git)
    Affected: e36ba5ab808ef6237c3148d469c8238674230e2b , < 6ebf2eb46fbd5b40393ff8fbb847ba96925beaff (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "f565297edf316016be4a1a9e2eb9f39359313f43",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "e7b5e55652746b1221b9c10ff80eae8a154101ba",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6ebf2eb46fbd5b40393ff8fbb847ba96925beaff",
                  "status": "affected",
                  "version": "e36ba5ab808ef6237c3148d469c8238674230e2b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/iommu/iommufd/eventq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.2-rc1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2-rc1",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommufd: Set veventq_depth upper bound\n\niommufd_veventq_alloc() accepts any !0 veventq_depth from userspace, with\nan upper bound at U32_MAX.\n\nThis leaves a vulnerability where userspace can allocate excessively large\nqueues to exhaust kernel memory reserves.\n\nCap the veventq_depth (maximum number of entries) to 1 \u003c\u003c 19, matching the\nmaximum number of entries in the SMMUv3 EVTQ (the largest use case today)."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-25T08:49:30.686Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/f565297edf316016be4a1a9e2eb9f39359313f43"
            },
            {
              "url": "https://git.kernel.org/stable/c/e7b5e55652746b1221b9c10ff80eae8a154101ba"
            },
            {
              "url": "https://git.kernel.org/stable/c/6ebf2eb46fbd5b40393ff8fbb847ba96925beaff"
            }
          ],
          "title": "iommufd: Set veventq_depth upper bound",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64291",
        "datePublished": "2026-07-25T08:49:30.686Z",
        "dateReserved": "2026-07-19T15:36:31.778Z",
        "dateUpdated": "2026-07-25T08:49:30.686Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }