CVE Catalog

CVE-2026-90118

HighCVSS 7.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.16%

6th percentile - higher than 6% of all known CVEs

Summary

In the Linux kernel, ntfs_decompress() has an off-by-one range check where dp_addr == dp_sb_end falls through to the symbol copy, writing one byte past the destination page. A corrupted compressed $DATA attribute can produce a bounded run of out-of-bounds writes when the file is read.

Risk Assessment

Out-of-bounds writes may corrupt kernel memory, leading to a system crash or potential privilege escalation when reading a maliciously crafted NTFS file.

Recommendation

Update the Linux kernel to a version with the fix that breaks as soon as dp_addr reaches dp_sb_end.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: ntfs: fix off-by-one page overflow in ntfs_decompress() The per-token range check in ntfs_decompress() uses if (cb >= cb_sb_end || dp_addr > dp_sb_end) break; so dp_addr == dp_sb_end falls through to the symbol copy `*dp_addr++ = *cb++`, writing one byte past the destination page. Since NTFS_SB_SIZE == PAGE_SIZE the destination is a single page, so the byte lands in the adjacent page, and *dest_ofs is left one past the sub-block end (the later `*dest_ofs &= ~PAGE_MASK` then yields 1, not 0, so the page is never finalized and later sub-blocks keep writing further past it). A corrupted compressed $DATA attribute thus produces a bounded run of out-of-bounds writes when the file is read. Break as soon as dp_addr reaches dp_sb_end; a full sub-block still completes, as its final copy advances dp_addr to exactly dp_sb_end.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS