CVE-2026-31694

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
01/05/2026
Last modified:
06/05/2026

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> fuse: reject oversized dirents in page cache<br /> <br /> fuse_add_dirent_to_cache() computes a serialized dirent size from the<br /> server-controlled namelen field and copies the dirent into a single<br /> page-cache page. The existing logic only checks whether the dirent fits<br /> in the remaining space of the current page and advances to a fresh page<br /> if not. It never checks whether the dirent itself exceeds PAGE_SIZE.<br /> <br /> As a result, a malicious FUSE server can return a dirent with<br /> namelen=4095, producing a serialized record size of 4120 bytes. On 4 KiB<br /> page systems this causes memcpy() to overflow the cache page by 24 bytes<br /> into the following kernel page.<br /> <br /> Reject dirents that cannot fit in a single page before copying them into<br /> the readdir cache.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.20 (including) 6.6.136 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.12.84 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.13 (including) 6.18.25 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.19 (including) 7.0.2 (excluding)
cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*