CVE-2026-80869

CVE-2026-80869

published September 4, 2026

CVSS
—
EPSS
0%
Percentile
9.0
In the wild
Unconfirmed
What it is

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

ntfs: bound the attribute-list entry in ntfs_read_inode_mount()

The $MFT attribute-list walk in ntfs_read_inode_mount() validates each

entry only with "(u8 *)al_entry + 6 > al_end" and

"(u8 *)al_entry + le16_to_cpu(al_entry->length) > al_end", but then reads

al_entry->lowest_vcn (an __le64 at offset 8) and al_entry->mft_reference

(offset 16) -- fields beyond the 6 bytes proven in range. al_entry->length

is attacker-controlled and only required non-zero, so a short entry (e.g.

length 8) placed at the tail passes both checks while the lowest_vcn /

mft_reference reads fall past al_end.

al_end is ni->attr_list + attr_list_size (the on-disk size); the buffer is

kvzalloc(round_up(attr_list_size, SECTOR_SIZE)), so the sector rounding

usually absorbs the over-read -- but when attr_list_size is a multiple of

SECTOR_SIZE there is no slack and a crafted $MFT attribute list produces an

out-of-bounds read at mount time.

Validate the entry with ntfs_attr_list_entry_is_valid() (added in patch

1/3) before dereferencing it, matching the bound the other attribute-list

walks now use. The validator already requires the length to cover the fixed

header, which makes the separate "!al_entry->length" check redundant, so

drop it too.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00198 · 9.0th percentile
Published
2026-09-04T21:16Z
References (2)
EPSS history
Timeline
  • 06 SEP 03:33Z
    EPSS moved — → 0%
    epss
  • 04 SEP 16:48Z
    ntfs: bound the attribute-list entry in ntfs_read_inode_mount()
    cvelistv5