{"id":"CVE-2023-52444","revision":"60c854bcf8b747d68d99ba377ff899b1","records":[{"revision":"60c854bcf8b747d68d99ba377ff899b1","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2023-52444","aliases":[],"title":"f2fs: fix to avoid dirent corruption","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nf2fs: fix to avoid dirent corruption\n\nAs Al reported in link[1]:\n\nf2fs_rename()\n...\n\tif (old_dir != new_dir && !whiteout)\n\t\tf2fs_set_link(old_inode, old_dir_entry,\n\t\t\t\t\told_dir_page, new_dir);\n\telse\n\t\tf2fs_put_page(old_dir_page, 0);\n\nYou want correct inumber in the \"..\" link.  And cross-directory\nrename does move the source to new parent, even if you'd been asked\nto leave a whiteout in the old place.\n\n[1] https://lore.kernel.org/all/20231017055040.GN800259@ZenIV/\n\nWith below testcase, it may cause dirent corruption, due to it missed\nto call f2fs_set_link() to update \"..\" link to new directory.\n- mkdir -p dir/foo\n- renameat2 -w dir/foo bar\n\n[ASSERT] (__chk_dots_dentries:1421)  --> Bad inode number[0x4] for '..', parent parent ino is [0x3]\n[FSCK] other corrupted bugs                           [Fail]","state":0,"publishedAt":"2024-02-22T16:21:37.043+00:00","modifiedAt":"2026-10-15T00:16:56.306+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"fs/f2fs/namei.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"02160112e6d45c2610b049df6eb693d7a2e57b46\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"5624a3c1b1ebc8991318e1cce2aa719542991024\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"6f866885e147d33efc497f1095f35b2ee5ec7310\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"f100ba617d8be6c98a68f3744ef7617082975b77\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"f0145860c20be6bae6785c7a2249577674702ac7\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"d3c0b49aaa12a61d560528f5d605029ab57f0728\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"2fb4867f4405aea8c0519d7d188207f232a57862\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"7e01e7ad746bc8198a8b46163ddc73a1c7d22339\",\n                            \"lessThan\": \"53edb549565f55ccd0bdf43be3d66ce4c2d48b28\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"fs/f2fs/namei.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"4.2\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"4.2\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"4.19.306\",\n                            \"lessThanOrEqual\": \"4.19.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.4.268\",\n                            \"lessThanOrEqual\": \"5.4.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.209\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.148\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.75\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.14\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.7.2\",\n                            \"lessThanOrEqual\": \"6.7.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.8\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","score":7.8,"severity":"HIGH"}],"references":["https://git.kernel.org/stable/c/02160112e6d45c2610b049df6eb693d7a2e57b46","https://git.kernel.org/stable/c/5624a3c1b1ebc8991318e1cce2aa719542991024","https://git.kernel.org/stable/c/6f866885e147d33efc497f1095f35b2ee5ec7310","https://git.kernel.org/stable/c/f100ba617d8be6c98a68f3744ef7617082975b77","https://git.kernel.org/stable/c/f0145860c20be6bae6785c7a2249577674702ac7","https://git.kernel.org/stable/c/d3c0b49aaa12a61d560528f5d605029ab57f0728","https://git.kernel.org/stable/c/2fb4867f4405aea8c0519d7d188207f232a57862","https://git.kernel.org/stable/c/53edb549565f55ccd0bdf43be3d66ce4c2d48b28"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2023-52444","license":"CVE Program Terms of Use","key":"cve-program:CVE-2023-52444","identifiers":["CVE-2023-52444"]},"retained":false,"historicalAffected":[]}],"coverage":[]}