CVE-2024-44941·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: f2fs: fix to cover read extent cache access with lock syzbot reports a f2fs bug as below: BUG: KASAN: slab-use-after-free in sanity_check_extent_cache+0x370/0x410 fs/f2fs/extent_cache.c:46 Read of size 4 at addr ffff8880739ab220 by task syz-executor200/5097 CPU: 0 PID: 5097 Comm: syz-executor200 Not tainted 6.9.0-rc6-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 Call Trace: <TASK> __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:114 print_address_description mm/kasan/report.c:377 [inline] print_report+0x169/0x550 mm/kasan/report.c:488 kasan_report+0x143/0x180 mm/kasan/report.c:601 sanity_check_extent_cache+0x370/0x410 fs/f2fs/extent_cache.c:46 do_read_inode fs/f2fs/inode.c:509 [inline] f2fs_iget+0x33e1/0x46e0 fs/f2fs/inode.c:560 f2fs_nfs_get_inode+0x74/0x100 fs/f2fs/super.c:3237 generic_fh_to_dentry+0x9f/0xf0 fs/libfs.c:1413 exportfs_decode_fh_raw+0x152/0x5f0 fs/exportfs/expfs.c:444 exportfs_decode_fh+0x3c/0x80 fs/exportfs/expfs.c:584 do_handle_to_path fs/fhandle.c:155 [inline] handle_to_path fs/fhandle.c:210 [inline] do_handle_open+0x495/0x650 fs/fhandle.c:226 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf5/0x240 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f We missed to cover sanity_check_extent_cache() w/ extent cache lock, so, below race case may happen, result in use after free issue. - f2fs_iget - do_read_inode - f2fs_init_read_extent_tree : add largest extent entry in to cache - shrink - f2fs_shrink_read_extent_tree - __shrink_extent_tree - __detach_extent_node : drop largest extent entry - sanity_check_extent_cache : access et->largest w/o lock let's refactor sanity_check_extent_cache() to avoid extent cache access and call it before f2fs_init_read_extent_tree() to fix this issue.
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.10.6
- Published
How likely is exploitation
FIRST's Exploit Prediction Scoring System puts the probability of this CVE being exploited in the next 30 days at <0.1% — higher than 9% of all published CVEs. EPSS is an independent forecast of exploitation, not a severity rating: it says nothing about how much damage a successful attack does, which is what a CVSS score measures.
Read the two together. CVE-2024-44941 scores 7.8 on CVSS, so a successful attack would be serious — but at <0.1%, almost nobody is currently attempting it. That is a different situation from a flaw under mass exploitation, and it is usually the difference between patching on your next maintenance window and patching tonight.
Affected versions
From: 6.7
Until: 6.10.6
Fixed in: 6.10.6
How to fix this CVE
Update your Linux kernel to version 6.10.6 or later to resolve a use-after-free vulnerability in the F2FS read extent cache. This flaw occurs when the extent cache is accessed without proper locking during concurrent inode initialization and memory shrinking operations. Immediate patching is recommended for systems running kernel versions 6.7 through 6.10.5.
sudo dnf update kernel kernel-headersDefensia detects this vulnerability
How to check if you are affected
- Check your current kernel version: uname -r
- Verify if kernel is between 6.7 and 6.10.5: if [[ $(uname -r | cut -d. -f1,2) == '6.7' ]] || [[ $(uname -r | cut -d. -f1,2) == '6.8' ]] || [[ $(uname -r | cut -d. -f1,2) == '6.9' ]] || [[ $(uname -r | cut -d. -f1,2) == '6.10' ]]; then echo 'Potentially vulnerable'; fi
- Check if F2FS is in use: grep -i f2fs /proc/filesystems or mount | grep f2fs
- Monitor dmesg for KASAN errors related to extent_cache: dmesg | grep -i 'slab-use-after-free\|extent_cache'
- Confirm patch application: grep CONFIG_F2FS /boot/config-$(uname -r) to verify F2FS support, then verify kernel version is 6.10.6+
FAQ
What is CVE-2024-44941?
CVE-2024-44941 is a use-after-free vulnerability in the Linux kernel's F2FS filesystem implementation. The flaw exists in the read extent cache handling, where concurrent access during inode loading and memory shrinking can cause the cache to reference already-freed memory.
Is CVE-2024-44941 being actively exploited?
No, according to CISA KEV data, CVE-2024-44941 is not currently being actively exploited in the wild. However, given its high CVSS score (7.8) and the availability of proof-of-concept code from syzbot, timely patching is still critical.
What versions of Kernel are affected by CVE-2024-44941?
Linux kernel versions 6.7.0 through 6.10.5 are affected. The vulnerability was resolved in kernel 6.10.6 and later stable releases.
How do I check if my server is vulnerable to CVE-2024-44941?
Run 'uname -r' to check your kernel version. If it reports a version between 6.7 and 6.10.5, and F2FS is mounted on your system (check with 'mount | grep f2fs'), your system is vulnerable.
Does Defensia detect CVE-2024-44941?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Kernel is installed on a monitored server, CVE-2024-44941 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-44941. Free for 1 server.
Get started free