Vulnerability · Published Apr 16, 2025 · Assigned by Linux

CVE-2025-22123f2fs: fix to avoid accessing uninitialized curseg

Medium 5.5

In plain English

A medium-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 8% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS NVD)5.5Medium
Exploit odds (30 days)0.2%top 91.8% of all CVEs
Exploited in the wildNo reportsnot in CISA KEV
Attack toolingNoneno public tooling known

Official description

In the Linux kernel, the following vulnerability has been resolved: f2fs: fix to avoid accessing uninitialized curseg syzbot reports a f2fs bug as below: F2FS-fs (loop3): Stopped filesystem due to reason: 7 kworker/u8:7: attempt to access beyond end of device BUG: unable to handle page fault for address: ffffed1604ea3dfa RIP: 0010:get_ckpt_valid_blocks fs/f2fs/segment.h:361 [inline] RIP: 0010:has_curseg_enough_space fs/f2fs/segment.h:570 [inline] RIP: 0010:__get_secs_required fs/f2fs/segment.h:620 [inline] RIP: 0010:has_not_enough_free_secs fs/f2fs/segment.h:633 [inline] RIP: 0010:has_enough_free_secs+0x575/0x1660 fs/f2fs/segment.h:649 <TASK> f2fs_is_checkpoint_ready fs/f2fs/segment.h:671 [inline] f2fs_write_inode+0x425/0x540 fs/f2fs/inode.c:791 write_inode fs/fs-writeback.c:1525 [inline] __writeback_single_inode+0x708/0x10d0 fs/fs-writeback.c:1745 writeback_sb_inodes+0x820/0x1360 fs/fs-writeback.c:1976 wb_writeback+0x413/0xb80 fs/fs-writeback.c:2156 wb_do_writeback fs/fs-writeback.c:2303 [inline] wb_workfn+0x410/0x1080 fs/fs-writeback.c:2343 process_one_work kernel/workqueue.c:3236 [inline] process_scheduled_works+0xa66/0x1840 kernel/workqueue.c:3317 worker_thread+0x870/0xd30 kernel/workqueue.c:3398 kthread+0x7a9/0x920 kernel/kthread.c:464 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 Commit 8b10d3653735 ("f2fs: introduce FAULT_NO_SEGMENT") allows to trigger no free segment fault in allocator, then it will update curseg->segno to NULL_SEGNO, though, CP_ERROR_FLAG has been set, f2fs_write_inode() missed to check the flag, and access invalid curseg->segno directly in below call path, then resulting in panic: - f2fs_write_inode - f2fs_is_checkpoint_ready - has_enough_free_secs - has_not_enough_free_secs - __get_secs_required - has_curseg_enough_space - get_ckpt_valid_blocks : access invalid curseg->segno To avoid this issue, let's: - check CP_ERROR_FLAG flag in prior to f2fs_is_checkpoint_ready() in f2fs_write_inode(). - in has_curseg_enough_space(), save curseg->segno into a temp variable, and verify its validation before use.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:13linux6.12.33-1DEBIAN-CVE-2025-22123
Debian:14linux6.12.33-1DEBIAN-CVE-2025-22123
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-azure-6.11no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-azure-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:25.10linux-azure-fdeno fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-gcp-6.11no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-gcp-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-hwe-6.11no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-hwe-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-intel-iot-realtimeno fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-lowlatency-hwe-6.11no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-nvidia-6.11no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-nvidia-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-oem-6.11no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-oem-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-oracle-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-raspi-realtimeno fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2025-22123
Ubuntu:24.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-riscv-6.5no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2025-22123
Ubuntu:22.04:LTSlinux-starfive-6.5no fix listedUBUNTU-CVE-2025-22123

Affected products (as reported)

VendorProductVersions
Linux Linux 8b10d3653735e117bc1954ade80d75ad7b46b801 – before bf49527089ec1ba894c6e587affabbfb2329f52e8b10d3653735e117bc1954ade80d75ad7b46b801 – before 7f90e5d423cd2d4c74b2abb527872f335108637f8b10d3653735e117bc1954ade80d75ad7b46b801 – before 986c50f6bca109c6cf362b4e2babcb85aba958f6
Linux Linux 6.9

References