Skip to content
Heist/ feed
Back to feed
CriticalFix available

ntfs: sanitize MFT references returned from ntfs_lookup_inode_by_name()

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: ntfs: sanitize MFT references returned from ntfs_lookup_inode_by_name() ntfs_lookup_inode_by_name() returns MFT references read from directory index entries on disk. These values are untrusted, but the function can currently return an error-marked MFT reference to its callers without validating it. Callers later decode lookup failures with MREF_ERR(). A crafted NTFS image can set the MREF error bit while leaving the low bits as an arbitrary value, causing callers to consume a bogus pseudo-errno instead of treating the lookup result as corrupted on-disk metadata. Fix this at the source by normalizing every error-marked MFT reference returned from ntfs_lookup_inode_by_name() to ERR_MREF(-EIO). Apply this to all four directory lookup return paths so every caller gets a validated result without needing additional checks or an API change. This keeps the sanitization in the common lookup helper, which is cleaner than duplicating validation in each caller.

Products
Kernel
Affected versions
Not specified
Fixed versions
7.1.5
CVEs
CVE-2026-72188
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 13:30 UTC · Revision 1

Source evidence

ntfs: sanitize MFT references returned from ntfs_lookup_inode_by_name()

core-osv · Original source

Published 15 Aug 2026, 05:53 UTC

In the Linux kernel, the following vulnerability has been resolved: ntfs: sanitize MFT references returned from ntfs_lookup_inode_by_name() ntfs_lookup_inode_by_name() returns MFT references read from directory index entries on disk. These values are untrusted, but the function can currently return an error-marked MFT reference to its callers without validating it. Callers later decode lookup failures with MREF_ERR(). A crafted NTFS image can set the MREF error bit while leaving the low bits as an arbitrary value, causing callers to consume a bogus pseudo-errno instead of treating the lookup result as corrupted on-disk metadata. Fix this at the source by normalizing every error-marked MFT reference returned from ntfs_lookup_inode_by_name() to ERR_MREF(-EIO). Apply this to all four directory lookup return paths so every caller gets a validated result without needing additional checks or an API change. This keeps the sanitization in the common lookup helper, which is cleaner than duplicating validation in each caller.

osv:CVE-2026-72188

Kernel

Fixed versions: 7.1.5

Complete source record
{
  "id": "d5b82331166924755d09fd91bfb2f94f5a9df8010448f51fd8bd205fc6e6286c",
  "url": "https://osv.dev/vulnerability/CVE-2026-72188",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "ntfs: sanitize MFT references returned from ntfs_lookup_inode_by_name()",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: ntfs: sanitize MFT references returned from ntfs_lookup_inode_by_name() ntfs_lookup_inode_by_name() returns MFT references read from directory index entries on disk. These values are untrusted, but the function can currently return an error-marked MFT reference to its callers without validating it. Callers later decode lookup failures with MREF_ERR(). A crafted NTFS image can set the MREF error bit while leaving the low bits as an arbitrary value, causing callers to consume a bogus pseudo-errno instead of treating the lookup result as corrupted on-disk metadata. Fix this at the source by normalizing every error-marked MFT reference returned from ntfs_lookup_inode_by_name() to ERR_MREF(-EIO). Apply this to all four directory lookup return paths so every caller gets a validated result without needing additional checks or an API change. This keeps the sanitization in the common lookup helper, which is cleaner than duplicating validation in each caller.",
    "evidence": "osv:CVE-2026-72188",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "7.1.5",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "critical",
    "structured": {
      "id": "CVE-2026-72188",
      "aliases": [
        "CVE-2026-72188"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "1e9ea7e04472d4e5e12e58c881eaacfb3e49b669"
                },
                {
                  "fixed": "83f396d881c4fd312c7fd5fff2c157fc21104464"
                },
                {
                  "fixed": "d97a36bae86a9a4021562ded2987f904e6bcb1d7"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72188.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "7.1.0"
                },
                {
                  "fixed": "7.1.5"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72188.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:28.961945779Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/83f396d881c4fd312c7fd5fff2c157fc21104464",
        "https://git.kernel.org/stable/c/d97a36bae86a9a4021562ded2987f904e6bcb1d7",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72188.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-72188",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72188.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-72188",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 495868,
  "published_at": "2026-08-15T05:53:49.593+00:00"
}