KernelScan.io

CRITICAL Introduced in 7.1

ntfs BitmapScan OOB

CVE-2026-89614

CVSS 9.8 / 10.0 NVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

KernelScan AI6.0MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: ntfs: bound the free-cluster bitmap scan to the volume vol->lcn_empty_bits_per_page is sized from vol->nr_clusters at mount, but ntfs_cluster_alloc() bounds its scan of that array by the size of $Bitmap. Those are independent on-disk quantities and the mount-time check only rejects a $Bitmap that is too small, so an image whose $Bitmap covers more clusters than the volume has lets the scan index past the array. A run whose LCN lies in that gap takes the allocator straight there, since the caller passes the file's own last LCN as its locality hint. KASAN reports a slab out-of-bounds read when a file on such a volume is extended. Clamp the scan to what that array covers, mirroring the max_index calculation the mount-time scan already uses, and reject a decoded LCN at or beyond nr_clusters in the mapping pairs decoder. Conforming volumes are unaffected.

02

Engine v0.6.0

Risk summary

A crafted NTFS filesystem image whose $Bitmap covers more clusters than the volume actually contains causes the cluster allocator to read past the end of an internal array, leaking kernel slab memory and potentially crashing the kernel. Exploitation requires mounting the malicious image, which needs real root privileges, and is triggered when a file on the volume is extended. Systems that never mount untrusted NTFS images are not affected.

Affectedfs/ntfs/lcnalloc.c, fs/ntfs/runlist.c (ntfs filesystem)

Vulnerability analysis

The NTFS driver builds an internal array during mount based on the volume's true cluster count, but later scans it using the size of an on-disk metadata file. Because the mount check only rejects a file that is too small, a crafted image with an oversized file causes the scan to read past the array, leaking kernel memory when a file is extended. The fix restricts the scan to the array's actual size and adds a boundary check that rejects cluster references beyond the volume. Triggering the flaw requires mounting a malicious NTFS image, which needs real root privileges, and then extending a file on that volume.

03

BranchIntroducedFixed inPatch commit
7.27.17.2.4dc15a9f5307d
mainline7.17.3-rc119cac7902a8a