CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's F2FS filesystem, specifically in how it handles the compressed cache inode when the compress_cache option is disabled. An attacker could exploit this flaw to create a corrupted directory entry that points to an invalid inode, potentially leading to unauthorized access or system instability. System administrators and developers managing Linux environments that utilize the F2FS filesystem should prioritize applying the relevant patches to mitigate this high-severity risk.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: f2fs: validate compress cache inode only when enabled F2FS_COMPRESS_INO() uses NM_I(sbi)->max_nid as the synthetic inode number for the compressed page cache inode. That inode only exists when the compress_cache mount option is enabled. When compress_cache is disabled, max_nid is outside the valid inode range. A corrupted directory entry that points to ino == max_nid should therefore be rejected by f2fs_check_nid_range(). However, is_meta_ino() currently treats F2FS_COMPRESS_INO() as a meta inode unconditionally, so f2fs_iget() bypasses do_read_inode() and its nid range check, and instantiates a fake internal inode instead. Gate the compressed cache inode case on COMPRESS_CACHE, matching f2fs_init_compress_inode(). With compress_cache disabled, ino == max_nid now follows the normal inode path and is rejected as an out-of-range nid.