In the Linux kernel, the following vulnerability has been resolved:
ntfs: validate index block header more strictly
Modify ntfs_index_block_inconsisent() to perform stricter validation of
INDEX_HEADER geometry in INDX blocks, and update
ntfs_lookup_inode_by_name() to use that function to validate INDX
blocks.
CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Score: 9.8
AV:N - Legacy fs/ntfs registers ntfs_export_ops; remote nfsd/ksmbd LOOKUP or open/stat on an exported crafted NTFS volume reaches ntfs_lookup→ntfs_lookup_inode_by_name INDX B+tree descent without attacker local shell access.
AC:L - The attacker fully controls on-disk INDX INDEX_HEADER geometry (entries_offset, index_length, allocated_size); pre-fix ntfs_lookup_inode_by_name omitted checks that ntfs_index_block_inconsistent enforced, enabling reliable malformed-index parsing with no race.
PR:N - Exploitation needs only a malicious NTFS image (USB, loop, dual-boot) mounted by root/udisks2/automount, or NFS/SMB read access to exported paths; no init-namespace root or CAP_SYS_ADMIN on the lookup trigger path.
UI:N - Automounting removable NTFS or fill_super lookups (e.g. into $Extend/Quota) invoke ntfs_lookup_inode_by_name against index-allocation blocks without further victim action beyond presenting the crafted volume.
S:U - Out-of-bounds INDX parsing impacts only the host kernel within its filesystem security authority; this is not a VM escape, IOMMU bypass, or cross-sandbox boundary crossing.
C:H - Missing entries_offset/index_length versus bytes_available validation lets lookup reinterpret INDX header bytes as index entries and read past the index area within the kmalloc page buffer into adjacent kernel memory.
I:H - The same unchecked INDX geometry is parsed by ntfs_ib_read for write-capable index operations; attacker-steerable header/entry walks can feed later memmove/insert paths and heap corruption beyond the intended index buffer.
A:H - Crafted INDX entries_offset/length fields can cause infinite index-entry loops, slab/page out-of-bounds reads on malformed walks, or unhandled faults that oops or panic the kernel during directory lookup or mount.
| Attack Vector |
Network |
Scope |
Unchanged |
| Attack Complexity |
Low |
Confidentiality Impact |
High |
| Privileges Required |
None |
Integrity Impact |
High |
| User Interaction |
None |
Availability Impact |
High |
AV:N - Legacy fs/ntfs registers ntfs_export_ops; remote nfsd/ksmbd LOOKUP or open/stat on an exported crafted NTFS volume reaches ntfs_lookup→ntfs_lookup_inode_by_name INDX B+tree descent without attacker local shell access.
AC:L - The attacker fully controls on-disk INDX INDEX_HEADER geometry (entries_offset, index_length, allocated_size); pre-fix ntfs_lookup_inode_by_name omitted checks that ntfs_index_block_inconsistent enforced, enabling reliable malformed-index parsing with no race.
PR:N - Exploitation needs only a malicious NTFS image (USB, loop, dual-boot) mounted by root/udisks2/automount, or NFS/SMB read access to exported paths; no init-namespace root or CAP_SYS_ADMIN on the lookup trigger path.
UI:N - Automounting removable NTFS or fill_super lookups (e.g. into $Extend/Quota) invoke ntfs_lookup_inode_by_name against index-allocation blocks without further victim action beyond presenting the crafted volume.
S:U - Out-of-bounds INDX parsing impacts only the host kernel within its filesystem security authority; this is not a VM escape, IOMMU bypass, or cross-sandbox boundary crossing.
C:H - Missing entries_offset/index_length versus bytes_available validation lets lookup reinterpret INDX header bytes as index entries and read past the index area within the kmalloc page buffer into adjacent kernel memory.
I:H - The same unchecked INDX geometry is parsed by ntfs_ib_read for write-capable index operations; attacker-steerable header/entry walks can feed later memmove/insert paths and heap corruption beyond the intended index buffer.
A:H - Crafted INDX entries_offset/length fields can cause infinite index-entry loops, slab/page out-of-bounds reads on malformed walks, or unhandled faults that oops or panic the kernel during directory lookup or mount.
CVSS 3.1