CVE-2026-31449

ext4: validate p_idx bounds in ext4_ext_correct_indexes

State
Published
Severity
7.8 High
Published
Apr 22, 2026
Updated
Oct 19, 2026
Reserved
Mar 9, 2026

Read the record on cve.org

Description

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

ext4: validate p_idx bounds in ext4_ext_correct_indexes

ext4_ext_correct_indexes() walks up the extent tree correcting index entries when the first extent in a leaf is modified. Before accessing path[k].p_idx->ei_block, there is no validation that p_idx falls within the valid range of index entries for that level.

If the on-disk extent header contains a corrupted or crafted eh_entries value, p_idx can point past the end of the allocated buffer, causing a slab-out-of-bounds read.

Fix this by validating path[k].p_idx against EXT_LAST_INDEX() at both access sites: before the while loop and inside it. Return -EFSCORRUPTED if the index pointer is out of range, consistent with how other bounds violations are handled in the ext4 extent tree code.

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:HLinux

Weaknesses

Affected Products

ProductVersions
LinuxLinux
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before 39d6e2b67651614bac0dc6592fa9836321910067Affected
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before c5839b34704c9c2f47f079451bdbb22de0da1ed1Affected
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before 10242e640b36b91ad03d25f3dc77854bbdff8358Affected
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before 4d08401aa13f1531216f1a7ae281ca4806e90a5cAffected
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before 407c944f217c17d4343148011acafebc604d55e1Affected
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before 93f2e975ed658ce09db4d4c2877ca2c06540df83Affected
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before 01bf1e0b997d82c0e353b51ed74ef99698043c33Affected
  • a86c61812637c7dd0c57e29880cffd477b62f2e7 to before 2acb5c12ebd860f30e4faf67e6cc8c44ddfe5fe8Affected
LinuxLinux
  • 2.6.19Affected
  • before 2.6.19Not affected
  • 5.10.259 through 5.10.*Not affected
  • 5.15.210 through 5.15.*Not affected
  • 6.1.175 through 6.1.*Not affected
  • 6.6.140 through 6.6.*Not affected
  • 6.12.80 through 6.12.*Not affected
  • 6.18.21 through 6.18.*Not affected
  • 6.19.11 through 6.19.*Not affected
  • 7.0 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.