CVE-2025-21721
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
27/02/2025
Last modified:
13/03/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
nilfs2: handle errors that nilfs_prepare_chunk() may return<br />
<br />
Patch series "nilfs2: fix issues with rename operations".<br />
<br />
This series fixes BUG_ON check failures reported by syzbot around rename<br />
operations, and a minor behavioral issue where the mtime of a child<br />
directory changes when it is renamed instead of moved.<br />
<br />
<br />
This patch (of 2):<br />
<br />
The directory manipulation routines nilfs_set_link() and<br />
nilfs_delete_entry() rewrite the directory entry in the folio/page<br />
previously read by nilfs_find_entry(), so error handling is omitted on the<br />
assumption that nilfs_prepare_chunk(), which prepares the buffer for<br />
rewriting, will always succeed for these. And if an error is returned, it<br />
triggers the legacy BUG_ON() checks in each routine.<br />
<br />
This assumption is wrong, as proven by syzbot: the buffer layer called by<br />
nilfs_prepare_chunk() may call nilfs_get_block() if necessary, which may<br />
fail due to metadata corruption or other reasons. This has been there all<br />
along, but improved sanity checks and error handling may have made it more<br />
reproducible in fuzzing tests.<br />
<br />
Fix this issue by adding missing error paths in nilfs_set_link(),<br />
nilfs_delete_entry(), and their caller nilfs_rename().
Impact
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/1ee2d454baa361d2964e3e2f2cca9ee3f769d93c
- https://git.kernel.org/stable/c/481136234dfe96c7f92770829bec6111c7c5f5dd
- https://git.kernel.org/stable/c/607dc724b162f4452dc768865e578c1a509a1c8c
- https://git.kernel.org/stable/c/7891ac3b0a5c56f7148af507306308ab841cdc31
- https://git.kernel.org/stable/c/b38c6c260c2415c7f0968871305e7a093daabb4c
- https://git.kernel.org/stable/c/eddd3176b8c4c83a46ab974574cda7c3dfe09388
- https://git.kernel.org/stable/c/ee70999a988b8abc3490609142f50ebaa8344432
- https://git.kernel.org/stable/c/f70bd2d8ca454e0ed78970f72147ca321dbaa015