CVE-2024-53220: f2fs: fix to account dirty data in __get_secs_required()
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix to account dirty data in __get_secs_required()
It will trigger system panic w/ testcase in [1]:
------------[ cut here ]------------
kernel BUG at fs/f2fs/segment.c:2752!
RIP: 0010:new_curseg+0xc81/0x2110
Call Trace:
f2fs_allocate_data_block+0x1c91/0x4540
do_write_page+0x163/0xdf0
f2fs_outplace_write_data+0x1aa/0x340
f2fs_do_write_data_page+0x797/0x2280
f2fs_write_single_data_page+0x16cd/0x2190
f2fs_write_cache_pages+0x994/0x1c80
f2fs_write_data_pages+0x9cc/0xea0
do_writepages+0x194/0x7a0
filemap_fdatawrite_wbc+0x12b/0x1a0
__filemap_fdatawrite_range+0xbb/0xf0
file_write_and_wait_range+0xa1/0x110
f2fs_do_sync_file+0x26f/0x1c50
f2fs_sync_file+0x12b/0x1d0
vfs_fsync_range+0xfa/0x230
do_fsync+0x3d/0x80
__x64_sys_fsync+0x37/0x50
x64_sys_call+0x1e88/0x20d0
do_syscall_64+0x4b/0x110
entry_SYSCALL_64_after_hwframe+0x76/0x7e
The root cause is if checkpoint_disabling and lfs_mode are both on,
it will trigger OPU for all overwritten data, it may cost more free
segment than expected, so f2fs must account those data correctly to
calculate cosumed free segments later, and return ENOSPC earlier to
avoid run out of free segment during block allocation.
[1] https://lore.kernel.org/fstests/20241015025106.3203676-1-chao@kernel.org/
Security readout for executives and security teams
Plain-English summary
A flaw in Linux’s F2FS filesystem can cause a kernel panic when specific storage modes exhaust free segments unexpectedly. Affected systems may crash, interrupting workloads and potentially requiring recovery. Exploitation requires local, low-privileged access and the relevant F2FS configuration; the supplied evidence does not establish remote or active exploitation.
Executive priority
Treat as a high-priority availability risk for systems meeting the F2FS configuration preconditions, especially multi-user or operationally critical hosts. Patch through supported kernel channels after normal compatibility testing. Systems not using F2FS, or not using both relevant modes, appear less exposed based on the supplied evidence.
Technical view
When checkpoint disabling and LFS mode are enabled, overwritten dirty data uses out-of-place updates. F2FS undercounts the free segments required, allowing allocation to continue until a kernel BUG occurs. The correction accounts for dirty data and returns ENOSPC earlier instead of reaching the panic condition.
Likely exposure
Exposure is concentrated on Linux systems using F2FS with checkpoint disabling and LFS mode enabled, particularly under storage pressure. The bundle identifies affected Linux releases but provides ambiguous version boundaries, so kernel-package status should be confirmed through the applicable distributor or vendor advisory.
Exploitation context
The CVSS vector indicates a local, low-complexity attack requiring low privileges and no user interaction. A public filesystem test case reproduced the panic. The CVE is not listed as KEV in the supplied bundle, and no source provided here confirms malicious exploitation in the wild.
Researcher notes
The demonstrated failure occurs in new_curseg during data writeback and fsync. The security consequence directly supported by the description is kernel panic from free-segment exhaustion. Although the supplied CVSS assigns high confidentiality, integrity, and availability impacts, the provided technical narrative does not explain data disclosure or modification; those impacts remain unsubstantiated here.
Mitigation direction
Install a vendor-supported kernel containing the applicable stable F2FS correction.
Use the relevant Linux distributor advisory to confirm the fixed kernel package.
If patching is delayed, consult vendor guidance before changing F2FS configuration.
Prioritize systems where local untrusted users can interact with affected F2FS storage.
Validation and detection
Inventory systems and confirm whether any mounted filesystems use F2FS.
Determine whether checkpoint disabling and LFS mode are enabled together.
Compare each running kernel package with its vendor’s fixed-version advisory.
Review kernel logs for F2FS allocation failures, BUG messages, or unexplained panics.
After updating, verify the running kernel contains the applicable stable correction.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-53220 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
7Source links
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.