CVE-2026-45935 PUBLISHED

fs/ntfs3: Fix slab-out-of-bounds read in DeleteIndexEntryRoot

Assigner: Linux
Reserved: 13.05.2026 Published: 27.05.2026 Updated: 27.05.2026

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

fs/ntfs3: Fix slab-out-of-bounds read in DeleteIndexEntryRoot

In the 'DeleteIndexEntryRoot' case of the 'do_action' function, the entry size ('esize') is retrieved from the log record without adequate bounds checking.

Specifically, the code calculates the end of the entry ('e2') using: e2 = Add2Ptr(e1, esize);

It then calculates the size for memmove using 'PtrOffset(e2, ...)', which subtracts the end pointer from the buffer limit. If 'esize' is maliciously large, 'e2' exceeds the used buffer size. This results in a negative offset which, when cast to size_t for memmove, interprets as a massive unsigned integer, leading to a heap buffer overflow.

This commit adds a check to ensure that the entry size ('esize') strictly fits within the remaining used space of the index header before performing memory operations.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from b46acd6a6a627d876898e1c84d3f84902264b445 to 36c03f7f177b34d51f1cf1d2304b1074607bf4b0 (excl.)
  • affected from b46acd6a6a627d876898e1c84d3f84902264b445 to b271c9cb85927210b1b799e55ee7f702d12b4336 (excl.)
  • affected from b46acd6a6a627d876898e1c84d3f84902264b445 to a584b9d1059b29e97e17c919274e9adfb846f2a0 (excl.)
  • affected from b46acd6a6a627d876898e1c84d3f84902264b445 to c065541b71b79874c83d418a9acd18ad5826339b (excl.)
  • affected from b46acd6a6a627d876898e1c84d3f84902264b445 to 78942172d5bff4d4afed8674abc09cc560ce44a0 (excl.)
  • affected from b46acd6a6a627d876898e1c84d3f84902264b445 to f3b437a4c3e022a1449658ae9f3dd34859894513 (excl.)
  • affected from b46acd6a6a627d876898e1c84d3f84902264b445 to b2bc7c44ed1779fc9eaab9a186db0f0d01439622 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.15 is affected
  • unaffected from 0 to 5.15 (excl.)
  • unaffected from 5.15.202 to 5.15.* (incl.)
  • unaffected from 6.1.165 to 6.1.* (incl.)
  • unaffected from 6.6.128 to 6.6.* (incl.)
  • unaffected from 6.12.75 to 6.12.* (incl.)
  • unaffected from 6.18.14 to 6.18.* (incl.)
  • unaffected from 6.19.4 to 6.19.* (incl.)
  • unaffected from 7.0 to * (incl.)

References