Description
In the Linux kernel, the following vulnerability has been resolved:

ntfs3: fix out-of-bounds read in ntfs_dir_emit() and hdr_find_e()

The bounds check in ntfs_dir_emit() compares fname->name_len (a
character count) against e->size (a byte count) without accounting
for the 2-byte-per-character UTF-16LE encoding or the ATTR_FILE_NAME
header size:

if (fname->name_len + sizeof(struct NTFS_DE) > le16_to_cpu(e->size))

This computes: name_len + 16 > e_size

The correct check must account for the ATTR_FILE_NAME header (66 bytes
before the name) and the UTF-16LE character size (2 bytes each):

sizeof(NTFS_DE) + offsetof(ATTR_FILE_NAME, name) +
name_len * sizeof(short) > e_size

Which computes: 16 + 66 + name_len * 2 > e_size

The correct calculation already exists as fname_full_size() in ntfs.h
and is used in cmp_fnames(), namei.c, and fslog.c, but was not used
in the readdir path.

A crafted NTFS image with an index entry containing a small e->size
but large fname->name_len bypasses the current check, causing
ntfs_utf16_to_nls() to read past the entry boundary.

Additionally, add a key_size validation in hdr_find_e() to ensure the
declared key_size does not exceed the available entry data, preventing
comparison functions from reading past entry boundaries on the lookup
path.
Published: 2026-09-24
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: Information Disclosure
Action: Apply Patch
AI Analysis

Impact

An incorrect bounds check in the Linux kernel’s NTFS driver compares a UTF‑16LE filename length, measured in characters, to a length field expressed in bytes, ignoring the double‑byte character size and the 66‑byte header that precedes the name. When a malicious NTFS image supplies an entry whose byte size is smaller than the miscalculated name length, the driver performs an out‑of‑bounds read during ntfs_utf16_to_nls() and can expose content beyond the intended entry boundary. The fix replaces the faulty calculation with the correct size check and adds key_size validation to prevent similar boundary violations on the lookup path.

Affected Systems

The flaw resides in the generic ntfs3 driver that ships with the Linux kernel. All Linux systems that load this driver to mount or read NTFS volumes are potentially affected until they upgrade to a kernel version containing the corrected size check and header validation.

Risk and Exploitability

The vulnerability requires local access: an attacker must provide a specially crafted NTFS filesystem to the kernel, such as by mounting an infected volume or during boot. The CVSS score of 7.1 indicates high severity, and the EPSS score of < 1% suggests a low probability of exploitation. The issue is not listed in the CISA KEV catalog. The eventual impact is limited to information disclosure of kernel memory; there is no evidence of remote code execution or guaranteed denial of service.

Generated by OpenCVE AI on October 1, 2026 at 12:47 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a release that includes the ntfs3 bounds‑check fix.
  • Reboot the system after the kernel update so the patched driver is loaded into memory.
  • If possible, unmount any NTFS file systems before applying the update to avoid inadvertent exposure during the process.

Generated by OpenCVE AI on October 1, 2026 at 12:47 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4817-1 linux-6.12 security update
Debian DSA Debian DSA DSA-6528-1 linux security update
History

Sat, 03 Oct 2026 11:15:00 +0000


Wed, 30 Sep 2026 00:15:00 +0000


Sat, 26 Sep 2026 01:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-120

Fri, 25 Sep 2026 11:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119

Fri, 25 Sep 2026 05:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119

Fri, 25 Sep 2026 05:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.1, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:H'}


Thu, 24 Sep 2026 16:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: ntfs3: fix out-of-bounds read in ntfs_dir_emit() and hdr_find_e() The bounds check in ntfs_dir_emit() compares fname->name_len (a character count) against e->size (a byte count) without accounting for the 2-byte-per-character UTF-16LE encoding or the ATTR_FILE_NAME header size: if (fname->name_len + sizeof(struct NTFS_DE) > le16_to_cpu(e->size)) This computes: name_len + 16 > e_size The correct check must account for the ATTR_FILE_NAME header (66 bytes before the name) and the UTF-16LE character size (2 bytes each): sizeof(NTFS_DE) + offsetof(ATTR_FILE_NAME, name) + name_len * sizeof(short) > e_size Which computes: 16 + 66 + name_len * 2 > e_size The correct calculation already exists as fname_full_size() in ntfs.h and is used in cmp_fnames(), namei.c, and fslog.c, but was not used in the readdir path. A crafted NTFS image with an index entry containing a small e->size but large fname->name_len bypasses the current check, causing ntfs_utf16_to_nls() to read past the entry boundary. Additionally, add a key_size validation in hdr_find_e() to ensure the declared key_size does not exceed the available entry data, preventing comparison functions from reading past entry boundaries on the lookup path.
Title ntfs3: fix out-of-bounds read in ntfs_dir_emit() and hdr_find_e()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-03T10:58:22.091Z

Reserved: 2026-09-24T14:53:16.869Z

Link: CVE-2026-97437

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-24T17:17:21.810

Modified: 2026-10-03T11:17:55.200

Link: CVE-2026-97437

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-24T00:00:00Z

Links: CVE-2026-97437 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T13:00:07Z

Weaknesses
  • CWE-120

    Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')

  • CWE-125

    Out-of-bounds Read