9.1

CVE-2026-89786

ext4: fix out-of-bounds read in ext4_read_inline_dir()

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

ext4: fix out-of-bounds read in ext4_read_inline_dir()

ext4_read_inline_dir() can read a dirent header past the end of its inline
buffer, triggering a slab-out-of-bounds read during getdents64():

  BUG: KASAN: slab-out-of-bounds in __ext4_check_dir_entry
  Read of size 2 at addr ffff88800f3dd23c by task exploit/148
   ...
   __ext4_check_dir_entry
   ext4_read_inline_dir
   iterate_dir

The dirent payload lives in a buffer of exactly inline_size bytes:

	dir_buf = kmalloc(inline_size, GFP_NOFS);

but iteration runs in a position space extra_offset bytes larger
(extra_size = extra_offset + inline_size) so the synthetic "." and ".."
land at their block-dir offsets. A dirent is formed at "dir_buf + pos -
extra_offset", yet the ext4_check_dir_entry() length argument uses the
larger extra_size. A position whose dirent header would extend past
extra_size is therefore accepted, and the rescan loop's rec_len probe and
ext4_check_dir_entry() dereference de->rec_len before the entry is rejected.

Reject a position whose minimum-size dirent header would not fit within
extra_size before forming de, in both the rescan and main loops, and pass
inline_size rather than extra_size to ext4_check_dir_entry() so the length
check matches the physical buffer.
Daten sind bereitgestellt durch das CVE Programm von einer CVE Numbering Authority (CNA) (Unstrukturiert).
HerstellerLinux
≫
Produkt Linux
Default Statusunaffected
Version c4d8b0235aa98f8c26bf94d308be3fdd24154572
Version < d1e7c186555ad65554fd2f2b02f5a539aa35ae48
Status affected
Version c4d8b0235aa98f8c26bf94d308be3fdd24154572
Version < 5fd20d4e50dd6e460b3ea8e4396f8553d4526f8f
Status affected
Version c4d8b0235aa98f8c26bf94d308be3fdd24154572
Version < 1a1dea633b724a1c042dbcdb1fed27f410916688
Status affected
Version c4d8b0235aa98f8c26bf94d308be3fdd24154572
Version < b060861f662d4826dc700a1c3584243bb3474cfe
Status affected
Version c4d8b0235aa98f8c26bf94d308be3fdd24154572
Version < 6702c7da86d8cdb88d0fc57166286e115ffeb8c0
Status affected
Version c4d8b0235aa98f8c26bf94d308be3fdd24154572
Version < 36bf17bb90cdf7a623499b624b05acde4d2feef5
Status affected
Version c4d8b0235aa98f8c26bf94d308be3fdd24154572
Version < 9333cc809f0a89e001b814155a6cb8903a6274df
Status affected
HerstellerLinux
≫
Produkt Linux
Default Statusaffected
Version 3.10
Status affected
Version 0
Version < 3.10
Status unaffected
Version <= 5.15.*
Version 5.15.221
Status unaffected
Version <= 6.1.*
Version 6.1.188
Status unaffected
Version <= 6.6.*
Version 6.6.157
Status unaffected
Version <= 6.12.*
Version 6.12.110
Status unaffected
Version <= 6.18.*
Version 6.18.52
Status unaffected
Version <= 7.2.*
Version 7.2.6
Status unaffected
Version <= *
Version 7.3-rc1
Status unaffected
VulnDex Vulnerability Enrichment
Diese Information steht angemeldeten Benutzern zur Verfügung. Login Login
Zu dieser CVE wurde keine Warnung gefunden.
EPSS Metriken
Typ Quelle Score Percentile
EPSS FIRST.org 0.21% 0.108
CVSS Metriken
Quelle Base Score Exploit Score Impact Score Vector String
416baaa9-dc9f-4396-8d5f-8c081fb06d67 9.1 3.9 5.2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
Es wurden noch keine Informationen zu CWE veröffentlicht.
https://git.kernel.org/stable/c/d1e7c186555ad65554fd2f2b02f5a539aa35ae48
https://git.kernel.org/stable/c/5fd20d4e50dd6e460b3ea8e4396f8553d4526f8f
https://git.kernel.org/stable/c/1a1dea633b724a1c042dbcdb1fed27f410916688
https://git.kernel.org/stable/c/b060861f662d4826dc700a1c3584243bb3474cfe
https://git.kernel.org/stable/c/6702c7da86d8cdb88d0fc57166286e115ffeb8c0
https://git.kernel.org/stable/c/36bf17bb90cdf7a623499b624b05acde4d2feef5
https://git.kernel.org/stable/c/9333cc809f0a89e001b814155a6cb8903a6274df