f2fs: fix to avoid dirent corruption
Summary
| CVE | CVE-2023-52444 |
|---|---|
| State | PUBLISHED |
| Assigner | Linux |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2024-02-22 17:15:08 UTC |
| Updated | 2026-08-04 10:18:27 UTC |
| Description | In the Linux kernel, the following vulnerability has been resolved: f2fs: fix to avoid dirent corruption As Al reported in link[1]: f2fs_rename() ... if (old_dir != new_dir && !whiteout) f2fs_set_link(old_inode, old_dir_entry, old_dir_page, new_dir); else f2fs_put_page(old_dir_page, 0); You want correct inumber in the ".." link. And cross-directory rename does move the source to new parent, even if you'd been asked to leave a whiteout in the old place. [1] https://lore.kernel.org/all/20231017055040.GN800259@ZenIV/ With below testcase, it may cause dirent corruption, due to it missed to call f2fs_set_link() to update ".." link to new directory. - mkdir -p dir/foo - renameat2 -w dir/foo bar [ASSERT] (__chk_dots_dentries:1421) --> Bad inode number[0x4] for '..', parent parent ino is [0x3] [FSCK] other corrupted bugs [Fail] |
Risk And Classification
Primary CVSS: v3.1 7.8 HIGH from [email protected]
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Problem Types: CWE-119
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | [email protected] | Primary | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 3.1 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Secondary | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 3.1 | CNA | DECLARED | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
CVSS v3.1 Breakdown
Attack Vector
LocalAttack Complexity
LowPrivileges Required
LowUser Interaction
NoneScope
UnchangedConfidentiality
HighIntegrity
HighAvailability
HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
NVD Known Affected Configurations (CPE 2.3)
| Type | Vendor | Product | Version | Update | Edition | Language |
|---|---|---|---|---|---|---|
| Operating System | Linux | Linux Kernel | All | All | All | All |
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 02160112e6d45c2610b049df6eb693d7a2e57b46 git | Not specified |
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 5624a3c1b1ebc8991318e1cce2aa719542991024 git | Not specified |
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 6f866885e147d33efc497f1095f35b2ee5ec7310 git | Not specified |
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 f100ba617d8be6c98a68f3744ef7617082975b77 git | Not specified |
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 f0145860c20be6bae6785c7a2249577674702ac7 git | Not specified |
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 d3c0b49aaa12a61d560528f5d605029ab57f0728 git | Not specified |
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 2fb4867f4405aea8c0519d7d188207f232a57862 git | Not specified |
| CNA | Linux | Linux | affected 7e01e7ad746bc8198a8b46163ddc73a1c7d22339 53edb549565f55ccd0bdf43be3d66ce4c2d48b28 git | Not specified |
| CNA | Linux | Linux | affected 4.2 | Not specified |
| CNA | Linux | Linux | unaffected 4.2 semver | Not specified |
| CNA | Linux | Linux | unaffected 4.19.306 4.19.* semver | Not specified |
| CNA | Linux | Linux | unaffected 5.4.268 5.4.* semver | Not specified |
| CNA | Linux | Linux | unaffected 5.10.209 5.10.* semver | Not specified |
| CNA | Linux | Linux | unaffected 5.15.148 5.15.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.1.75 6.1.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.6.14 6.6.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.7.2 6.7.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.8 * original_commit_for_fix | Not specified |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| git.kernel.org/stable/c/6f866885e147d33efc497f1095f35b2ee5ec7310 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| git.kernel.org/stable/c/53edb549565f55ccd0bdf43be3d66ce4c2d48b28 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| lists.debian.org/debian-lts-announce/2024/06/msg00016.html | af854a3a-2127-422b-91ae-364da2661108 | lists.debian.org | |
| git.kernel.org/stable/c/f100ba617d8be6c98a68f3744ef7617082975b77 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| git.kernel.org/stable/c/f0145860c20be6bae6785c7a2249577674702ac7 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| git.kernel.org/stable/c/d3c0b49aaa12a61d560528f5d605029ab57f0728 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| git.kernel.org/stable/c/02160112e6d45c2610b049df6eb693d7a2e57b46 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| lists.debian.org/debian-lts-announce/2024/06/msg00020.html | af854a3a-2127-422b-91ae-364da2661108 | lists.debian.org | |
| git.kernel.org/stable/c/2fb4867f4405aea8c0519d7d188207f232a57862 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| git.kernel.org/stable/c/5624a3c1b1ebc8991318e1cce2aa719542991024 | af854a3a-2127-422b-91ae-364da2661108 | git.kernel.org | Patch |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.