CVE-2026-23233
Incorrect Block Mapping Vulnerability in Linux F2FS Swapfile Causes Data Corruption
Publication date: 2026-03-04
Last updated on: 2026-03-17
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | From 6.13 (inc) to 6.18.13 (exc) |
| linux | linux_kernel | From 6.19 (inc) to 6.19.3 (exc) |
| linux | linux_kernel | From 6.6.33 (inc) to 6.6.127 (exc) |
| linux | linux_kernel | From 6.9 (inc) to 6.12.74 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-787 | The product writes data past the end, or before the beginning, of the intended buffer. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in the Linux kernel's f2fs filesystem when using a swapfile smaller than 2MB with a fragmented physical layout on kernel versions 6.6 and above. The issue arises because the function check_swap_activate() incorrectly maps only the first extent of the swapfile if it is not aligned to section boundaries, treating it as the last extent. This causes subsequent extents to be unmapped, leading to incorrect swap writes that overwrite other files' data.
The problem manifests as data corruption, including dm-verity corruption errors and device reboots or F2FS node corruption errors causing boot hangs. The root cause is a logic error in how the kernel rounds up block counts and decides when an extent is the last one, resulting in incomplete mapping of the swapfile's physical blocks.
How can this vulnerability impact me? :
This vulnerability can lead to serious data corruption on devices using the affected Linux kernel versions with the f2fs filesystem and a small fragmented swapfile. The corruption can cause system instability such as device reboots, boot hangs, and loss or overwriting of data belonging to other files.
In practical terms, this means that systems relying on swapfiles under these conditions may experience unexpected crashes or become unbootable, potentially resulting in data loss and downtime.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by observing system behavior when running swap stress tests on an F2FS filesystem with kernel version 6.6 or later. Specifically, running stress-ng's swap stress test can reveal data corruption issues.
A suggested command to reproduce and detect the issue on Android devices is:
- adb shell "cd /data/stressng; ./stress-ng-64 --metrics-brief --timeout 60 --swap 0"
Additionally, kernel logs (ftrace) can be examined to check if only the first extent of the swapfile is mapped during the f2fs_map_blocks call, which indicates the presence of the vulnerability.
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation involves avoiding the use of fragmented swapfiles smaller than 2MB on F2FS filesystems with kernel version 6.6 or later.
Upgrading the Linux kernel to a version where this issue is fixed (post 6.6 with the patch applied) is recommended to prevent data corruption caused by incorrect physical block mapping.
Alternatively, using a different filesystem such as ext4 for swapfiles can avoid this issue, as ext4 is unaffected.