{"id":"CVE-2023-52444","revision":null,"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":[{"source":"cisa-kev:global","scope":"Complete CISA KEV catalog; all vendors. Missing entries do not establish absence of exploitation.","generation":"2026-11-09T22:04:21.7510311+00:00","complete":true,"records":1773,"lastAttemptAt":"2026-11-09T22:04:21.7510311+00:00","lastSuccessAt":"2026-11-09T22:04:21.9174281+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:04:21.9174285+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"cve-program","scope":"Official CVE Program baseline and cumulative hourly delta; all vendors, published and rejected records","generation":"cve-24e6fde7b744113daefb8f6135035fb8a5c69c9617c9c0d40574a0376532ffd3-496c6c80845a4235d695039f4a651d70f3b55bc53fc01f5ca259c734136db852","complete":true,"records":421688,"lastAttemptAt":"2026-11-09T22:02:15.6116354+00:00","lastSuccessAt":"2026-11-09T22:02:15.4777453+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:02:15.6116354+00:00","snapshotPublishedAt":"2026-11-09T21:30:28+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"euvd","scope":"Rolling EUVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global EUVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-5522e4ae35aa4bdc9d39e95136c0428b","complete":false,"records":13672,"lastAttemptAt":"2026-11-09T22:17:03.1981375+00:00","lastSuccessAt":"2026-11-09T22:17:03.194+00:00","error":"27 identifier lookups failed; latest failures include HTTP 403. Other identifiers were checked independently.","lastVerifiedAt":"2026-11-09T22:17:03.194+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13207,"expectedIdentifiers":13725,"failedIdentifiers":27},{"source":"first-epss:nuget","scope":"FIRST EPSS for explicit CVE aliases in the collected public NuGet archive. Not a global EPSS backfill.","generation":"2026-11-09T22:04:21.7510311+00:00","complete":true,"records":1096,"lastAttemptAt":"2026-11-09T22:04:21.7510311+00:00","lastSuccessAt":"2026-11-09T22:04:21.9181937+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:04:21.9181977+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"nvd","scope":"Rolling NVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global NVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-8b527f7960454708a3fcfe8f37f191e9","complete":false,"records":13680,"lastAttemptAt":"2026-11-09T22:04:47.0464678+00:00","lastSuccessAt":"2026-11-09T22:04:47.043+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:04:47.043+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13704,"expectedIdentifiers":13725,"failedIdentifiers":0},{"source":"osv:Go","scope":"Complete OSV Go ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"go-422f1ff5212ec8e62457b7c5d867c0d7ff5bdd57ee4fe937d3d7712d35f862bb","complete":true,"records":9919,"lastAttemptAt":"2026-11-09T22:04:21.6095423+00:00","lastSuccessAt":"2026-11-09T22:04:21.3703177+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:04:21.6095423+00:00","snapshotPublishedAt":"2026-11-09T22:03:02+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:NuGet","scope":"Complete OSV NuGet ecosystem archive, including GitHub Advisory Database records; NuGet version matching only","generation":"nuget-26503967ae4379db8f374089589d6e03fb15bd31f820c9e992aaf93840c2236c","complete":true,"records":1971,"lastAttemptAt":"2026-11-09T22:02:15.7662034+00:00","lastSuccessAt":"2026-11-09T21:02:20.472473+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:02:15.7662034+00:00","snapshotPublishedAt":"2026-11-09T20:18:18+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:crates.io","scope":"Complete OSV crates.io ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"crates.io-761ecc9061239b0da572dc9254c6f384c1d19339eb08408c436647a2f26129e9","complete":true,"records":3064,"lastAttemptAt":"2026-11-09T22:04:21.7141844+00:00","lastSuccessAt":"2026-11-09T17:05:03.4044794+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:04:21.7141844+00:00","snapshotPublishedAt":"2026-11-09T16:33:20+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:npm","scope":"Complete OSV npm ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"npm-cefd5e58c60b69931053d90de4b49991fc540e6131b53c29cfa39467d9128b3a","complete":true,"records":231328,"lastAttemptAt":"2026-11-09T22:04:12.3749697+00:00","lastSuccessAt":"2026-11-09T22:04:10.8762138+00:00","error":null,"lastVerifiedAt":"2026-11-09T22:04:12.3749697+00:00","snapshotPublishedAt":"2026-11-09T21:48:24+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null}]}