Skip to content
CVE PROGRAM SOURCE RECORD8.4 High

CVE-2025-40068

fs: ntfs3: Fix integer overflow in run_unpack()

Description

In the Linux kernel, the following vulnerability has been resolved: fs: ntfs3: Fix integer overflow in run_unpack() The MFT record relative to the file being opened contains its runlist, an array containing information about the file's location on the physical disk. Analysis of all Call Stack paths showed that the values of the runlist array, from which LCNs are calculated, are not validated before run_unpack function. The run_unpack function decodes the compressed runlist data format from MFT attributes (for example, $DATA), converting them into a runs_tree structure, which describes the mapping of virtual clusters (VCN) to logical clusters (LCN). The NTFS3 subsystem also has a shortcut for deleting files from MFT records - in this case, the RUN_DEALLOCATE command is sent to the run_unpack input, and the function logic provides that all data transferred to the runlist about file or directory is deleted without creating a runs_tree structure. Substituting the runlist in the $DATA attribute of the MFT record for an arbitrary file can lead either to access to arbitrary data on the disk bypassing access checks to them (since the inode access check occurs above) or to destruction of arbitrary data on the disk. Add overflow check for addition operation. Found by Linux Verification Center (linuxtesting.org) with SVACE.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 4342306f0f0d5ff4315a204d315c1b51b914fca5 to < f6b36cfd25cbadad63447c673743cf771090e756affected
  • 4342306f0f0d5ff4315a204d315c1b51b914fca5 to < 3ac37e100385b59ac821a62118494442238aaac4affected
  • 4342306f0f0d5ff4315a204d315c1b51b914fca5 to < a86c8b9d03f7101e1750233846fe989df6f0d631affected
  • 4342306f0f0d5ff4315a204d315c1b51b914fca5 to < 9378cfe228c2c679564a4116bcb28c8e89dff989affected
  • 4342306f0f0d5ff4315a204d315c1b51b914fca5 to < 5aa5799d162ad1b8e8b699d48b6218143c695a78affected
  • 4342306f0f0d5ff4315a204d315c1b51b914fca5 to < 736fc7bf5f68f6b74a0925b7e072c571838657d2affected

Linux Linux

Default version status: affected

  • 5.15affected
  • 0 to < 5.15unaffected
  • 5.15.195 to ≤ 5.15.*unaffected
  • 6.1.156 to ≤ 6.1.*unaffected
  • 6.6.112 to ≤ 6.6.*unaffected
  • 6.12.53 to ≤ 6.12.*unaffected
  • 6.17.3 to ≤ 6.17.*unaffected
  • 6.18 to ≤ *unaffected

References