CVE-2026-89616

Source
https://cve.org/CVERecord?id=CVE-2026-89616
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-89616.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-89616
Downstream
Published
2026-09-11T19:45:16Z
Modified
2026-09-14T03:46:21Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N CVSS Calculator
Summary
fs/ntfs3: fix info-leak on partial LZNT decompress in ni_read_frame()
Details

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

fs/ntfs3: fix info-leak on partial LZNT decompress in ni_read_frame()

ni_read_frame() decompresses an LZNT $DATA frame into the vmapped target pages and then trusts decompress_lznt()'s return value:

unc_size = decompress_lznt(frame_ondisk, ondisk_size, frame_mem, frame_size); if ((ssize_t)unc_size < 0) err = unc_size; else if (!unc_size || unc_size > frame_size) err = -EINVAL;

decompress_lznt() stops as soon as the compressed stream is exhausted (e.g. a zero chunk header) and returns the number of bytes it actually wrote, which may be far less than frame_size. The bytes between unc_size and frame_size are never written. The only memset() that follows zeroes the region beyond i_valid; when the frame lies entirely within the file's valid size that memset() does not run, so the gap retains whatever was in the just-vmapped pages. All pages are then marked uptodate and returned to userspace, disclosing uninitialized (recently-freed) kernel page memory. A crafted compressed file whose stream decompresses to only a few bytes leaks the remainder of every frame on a plain read(2), which is enough to recover kernel pointers and defeat KASLR.

Zero the [unc_size, frame_size) tail immediately after a successful LZNT decompress so the remainder reads back as zero.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89616.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
4342306f0f0d5ff4315a204d315c1b51b914fca5
Fixed
0f699ddb290a24b37e1bc9bf1e3c9dbccf564bea
Fixed
376ee45659a4b943df672ad275c63da00655f929
Fixed
4a1b39b2e10eb8de86265e80cf2be4396bc1dce4
Fixed
35d1ea92c7d946e2ebdbe36cdb2c969c8704bebd

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-89616.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.15.0
Fixed
6.12.109
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.50
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.2.4

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-89616.json"