CVEvulnerability
CVE-2026-89615
8.4 HIGH
Official page ↗
- Status
- Received
- Published
- 2026-09-11
- Last modified
- 2026-10-19
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 (416baaa9-dc9f-4396-8d5f-8c081fb06d67)
- 8.4 HIGH — CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Description
In the Linux kernel, the following vulnerability has been resolved:
fs/ntfs3: bound page_lcns[] index by the log record
The copy_lcns loop and the redo shorten loop index page_lcns[] at j + i,
where i runs up to the log record's lcns_follow. That count is checked only
against the record's own length, not the target entry, so check_dp_table()
(which validates the entry's lcns_follow) does not cover it: the copy_lcns
entry may even be freshly allocated after that check, and find_dp() bounds j
but not i. A crafted record thus overflows page_lcns[] of an otherwise valid
entry.
Add dp_range_ok() and reject, before each loop, any record whose run does
not fit the entry. These are the only two page_lcns[] accesses indexed by
the record rather than the entry, so together with the entry validation
every access is now bounded.
[[email protected]: original patch contained changes to the problem already handled, applied partly]
References
- https://git.kernel.org/stable/c/1135ebc225996b3ac1a295652b19a0a706737a6c git.kernel.org
- https://git.kernel.org/stable/c/31fdd11f75da9823500168cecb07aa45130915a3 git.kernel.org
- https://git.kernel.org/stable/c/61ca8cbbf68f77f25b699ed4358bd232f94ed43b git.kernel.org
- https://git.kernel.org/stable/c/6f7b9dbdc1b7520206abce0049bdd143eb536e75 git.kernel.org
- https://git.kernel.org/stable/c/7ccb94901f38a062034b56b43c774050b113758f git.kernel.org
- https://git.kernel.org/stable/c/bb742d1030864c0fe140666f639428ba4e90b2ca git.kernel.org
- https://git.kernel.org/stable/c/f4c1bc6d7331f344ffcea93c2a37badcbe15baa6 git.kernel.org