CVE-2026-89785 PUBLISHED

fs/ntfs3: fix out-of-bounds read of INDEX_ROOT in reparse/objid init

Assigner: Linux
Reserved: 11.09.2026 Published: 16.09.2026 Updated: 16.09.2026

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

fs/ntfs3: fix out-of-bounds read of INDEX_ROOT in reparse/objid init

ntfs_reparse_init() and ntfs_objid_init() parse the index root of the $Extend/$Reparse and $Extend/$ObjId metafiles (the INDEX_ROOT attributes named $R and $O). They read its type and rule fields through resident_data(), which does not check that the resident attribute is large enough to hold them.

mi_enum_attr() accepts a resident attribute with data_off == asize and data_size == 0. For such an attribute placed last in its MFT record, resident_data() returns a pointer to the end of the record_size buffer, so reading root->type / root->rule reads past the allocation.

Use resident_data_ex(attr, sizeof(struct INDEX_ROOT)) and bail out when it returns NULL, as ntfs_security_init() already does for $SDH / $SII.

The attribute is only parsed while mounting a crafted image, so this needs CAP_SYS_ADMIN.

BUG: KASAN: slab-out-of-bounds in ntfs_reparse_init (fs/ntfs3/fsntfs.c:2306) Read of size 4 at addr ffff88801219dc00 by task mount ntfs_reparse_init (fs/ntfs3/fsntfs.c:2306) ntfs_fill_super (fs/ntfs3/super.c:1604) get_tree_bdev_flags (fs/super.c:1703) vfs_get_tree (fs/super.c:1758) path_mount (fs/namespace.c:4131) __x64_sys_mount (fs/namespace.c:4360)

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 82cae269cfa953032fbb8980a7d554d60fb00b17 to eb80003744e32a7366a523015e4acfe0a2ac7d88 (excl.)
  • affected from 82cae269cfa953032fbb8980a7d554d60fb00b17 to bd631e2005290a55c8edda87363bc0d594c01705 (excl.)
  • affected from 82cae269cfa953032fbb8980a7d554d60fb00b17 to 94fce1d3e74fe011e21f17490ba58491709fd7e5 (excl.)
  • affected from 82cae269cfa953032fbb8980a7d554d60fb00b17 to 66c074eab6f966fbe48a0fc4b3a45b2a2e2df527 (excl.)
  • affected from 82cae269cfa953032fbb8980a7d554d60fb00b17 to 64bb6000bfbdf241a6dd578199acd90321a4243e (excl.)
  • affected from 82cae269cfa953032fbb8980a7d554d60fb00b17 to 72caafbc95c5dca8266a942b8e96ad81d8d9adc7 (excl.)
  • affected from 82cae269cfa953032fbb8980a7d554d60fb00b17 to 2064bc663f89e61b8681c1fb9d1ce445de72063d (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.15 is affected
  • unaffected from 0 to 5.15 (excl.)
  • unaffected from 5.15.221 to 5.15.* (incl.)
  • unaffected from 6.1.188 to 6.1.* (incl.)
  • unaffected from 6.6.157 to 6.6.* (incl.)
  • unaffected from 6.12.110 to 6.12.* (incl.)
  • unaffected from 6.18.52 to 6.18.* (incl.)
  • unaffected from 7.2.6 to 7.2.* (incl.)
  • unaffected from 7.3-rc1 to * (incl.)

References