CVE-2026-90132 (GCVE-0-2026-90132)

Vulnerability from cvelistv5 – Published: 2026-09-17 16:06 – Updated: 2026-09-18 17:53
VLAI
Title
ntfs: reject unprivileged writes to reserved $LX* xattrs
Summary
In the Linux kernel, the following vulnerability has been resolved: ntfs: reject unprivileged writes to reserved $LX* xattrs Reject setxattr of the reserved $LXUID, $LXGID, $LXMOD and $LXDEV names from userspace unless the caller has CAP_SYS_ADMIN.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: fc053f05ca282a5e760b41f6560ac835c4e28037 , < 86f46508016bc1f2bffb3a52dc2664f942fb9802 (git)
Affected: fc053f05ca282a5e760b41f6560ac835c4e28037 , < ea6a67ef64451d2da298f15baa35865b4bb6372a (git)
guessed Create a notification for this product.
Linux Linux Affected: 7.1
Unaffected: 0 , < 7.1 (semver)
Unaffected: 7.2.6 , ≤ 7.2.* (semver)
Unaffected: 7.3-rc1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/ntfs/ea.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "86f46508016bc1f2bffb3a52dc2664f942fb9802",
              "status": "affected",
              "version": "fc053f05ca282a5e760b41f6560ac835c4e28037",
              "versionType": "git"
            },
            {
              "lessThan": "ea6a67ef64451d2da298f15baa35865b4bb6372a",
              "status": "affected",
              "version": "fc053f05ca282a5e760b41f6560ac835c4e28037",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/ntfs/ea.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "7.1"
            },
            {
              "lessThan": "7.1",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3-rc1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.6",
                  "versionStartIncluding": "7.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3-rc1",
                  "versionStartIncluding": "7.1",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nntfs: reject unprivileged writes to reserved $LX* xattrs\n\nReject setxattr of the reserved $LXUID, $LXGID, $LXMOD and $LXDEV names\nfrom userspace unless the caller has CAP_SYS_ADMIN."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.1,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The attacker-controlled $LXUID/$LXGID/$LXMOD/$LXDEV name and 4-byte value enter via setxattr/fsetxattr/lsetxattr into ntfs_setxattr(); ksmbd SMB2 SET_INFO and nfsd4_decode_xattr_name both prefix user., so those paths cannot store the unprefixed EAs that ntfs_ea_get_wsl_inode() loads.\nAC:L - ntfs_setxattr() persists the EAs through ntfs_set_ea() without changing live i_uid/i_mode; the attacker then drops refs and forces icache reclaim so ntfs_read_locked_inode() runs ntfs_ea_get_wsl_inode() and applies the planted uid and S_ISUID mode. No uninfluenced race is required.\nPR:L - xattr_permission() only requires inode_permission(MAY_WRITE) for these unprefixed names, and pre-fix ntfs_setxattr() had no capable() check. Default ntfs mounts leave vol-\u003euid INVALID_UID (so $LXUID is applied) and files mode 0777, so any unprivileged writer can set the EAs.\nUI:N - The attacker issues setxattr on a file they can already write on an ntfs volume that is already mounted; no other user must insert media, mount an image, or open the planted file.\nS:U - ntfs_ea_get_wsl_inode() copies planted $LXUID/$LXMOD into the host inode\u0027s i_uid and i_mode. That is local privilege escalation inside the same kernel authority, not a VM, IOMMU, or sandbox escape.\nC:H - On reload, ntfs_ea_get_wsl_inode() does i_uid_write() from $LXUID and assigns inode-\u003ei_mode from $LXMOD; planting uid 0 and S_ISUID on an executable the attacker wrote yields euid 0 and full disclosure of host files.\nI:H - The same $LXUID/$LXMOD plant lets the attacker execute their own binary as root after ntfs_read_locked_inode() reloads the inode, giving unrestricted modification of host data. The bug is an unauthorized write of kernel-trusted WSL permission EAs.\nA:N - ntfs_set_ea() of $LXUID/$LXGID/$LXMOD/$LXDEV only stores NTFS extended attributes, and ntfs_ea_get_wsl_inode() only assigns i_uid, i_gid, i_mode, and rdev. That path has no kernel crash, hang, UAF, or BUG_ON."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-18T17:53:13.727Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/86f46508016bc1f2bffb3a52dc2664f942fb9802"
        },
        {
          "url": "https://git.kernel.org/stable/c/ea6a67ef64451d2da298f15baa35865b4bb6372a"
        }
      ],
      "title": "ntfs: reject unprivileged writes to reserved $LX* xattrs",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-90132",
    "datePublished": "2026-09-17T16:06:32.576Z",
    "dateReserved": "2026-09-11T19:38:34.788Z",
    "dateUpdated": "2026-09-18T17:53:13.727Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-90132",
      "date": "2026-09-25",
      "epss": "0.00163",
      "percentile": "0.04852"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "fs/ntfs/ea.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "86f46508016bc1f2bffb3a52dc2664f942fb9802",
                    "status": "affected",
                    "version": "fc053f05ca282a5e760b41f6560ac835c4e28037",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "ea6a67ef64451d2da298f15baa35865b4bb6372a",
                    "status": "affected",
                    "version": "fc053f05ca282a5e760b41f6560ac835c4e28037",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "fs/ntfs/ea.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "7.1"
                  },
                  {
                    "lessThan": "7.1",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.2.*",
                    "status": "unaffected",
                    "version": "7.2.6",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.3-rc1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nntfs: reject unprivileged writes to reserved $LX* xattrs\n\nReject setxattr of the reserved $LXUID, $LXGID, $LXMOD and $LXDEV names\nfrom userspace unless the caller has CAP_SYS_ADMIN."
          }
        ],
        "id": "CVE-2026-90132",
        "lastModified": "2026-09-18T18:17:43.013",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "NONE",
                "baseScore": 7.1,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 5.2,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-09-17T17:17:05.733",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/86f46508016bc1f2bffb3a52dc2664f942fb9802"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/ea6a67ef64451d2da298f15baa35865b4bb6372a"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "suse_vex": {
      "aggregate_severity": "important",
      "current_release_date": "2026-09-21T16:32:39Z",
      "cve": "CVE-2026-90132",
      "id": "CVE-2026-90132",
      "initial_release_date": "2026-09-18T00:20:57Z",
      "product_status:known_not_affected": "347",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-90132",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-90132.json",
      "version": "4"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

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


Loading…