---
id: CVE-2026-89785
title: |-
  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…
summary: |-
  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…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 82cae269cfa953032fbb8980a7d554d60fb00b17 <
    eb80003744e32a7366a523015e4acfe0a2ac7d88
  - >-
    Linux >= 82cae269cfa953032fbb8980a7d554d60fb00b17 <
    bd631e2005290a55c8edda87363bc0d594c01705
  - >-
    Linux >= 82cae269cfa953032fbb8980a7d554d60fb00b17 <
    94fce1d3e74fe011e21f17490ba58491709fd7e5
  - >-
    Linux >= 82cae269cfa953032fbb8980a7d554d60fb00b17 <
    66c074eab6f966fbe48a0fc4b3a45b2a2e2df527
  - >-
    Linux >= 82cae269cfa953032fbb8980a7d554d60fb00b17 <
    64bb6000bfbdf241a6dd578199acd90321a4243e
  - >-
    Linux >= 82cae269cfa953032fbb8980a7d554d60fb00b17 <
    72caafbc95c5dca8266a942b8e96ad81d8d9adc7
  - >-
    Linux >= 82cae269cfa953032fbb8980a7d554d60fb00b17 <
    2064bc663f89e61b8681c1fb9d1ce445de72063d
  - Linux 5.15
published: '2026-09-16'
updated: '2026-09-16'
sourceUpdated: '2026-09-16T09:17:09.203'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-89785'
references:
  - url: 'https://git.kernel.org/stable/c/2064bc663f89e61b8681c1fb9d1ce445de72063d'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/64bb6000bfbdf241a6dd578199acd90321a4243e'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/66c074eab6f966fbe48a0fc4b3a45b2a2e2df527'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/72caafbc95c5dca8266a942b8e96ad81d8d9adc7'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/94fce1d3e74fe011e21f17490ba58491709fd7e5'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/bd631e2005290a55c8edda87363bc0d594c01705'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/eb80003744e32a7366a523015e4acfe0a2ac7d88'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-09-16T08:52:29.591Z'
epss: 0.00206
epssPercentile: 0.09401
---

## Overview

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)

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
