CVE-2024-41040·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: net/sched: Fix UAF when resolving a clash KASAN reports the following UAF: BUG: KASAN: slab-use-after-free in tcf_ct_flow_table_process_conn+0x12b/0x380 [act_ct] Read of size 1 at addr ffff888c07603600 by task handler130/6469 Call Trace: <IRQ> dump_stack_lvl+0x48/0x70 print_address_description.constprop.0+0x33/0x3d0 print_report+0xc0/0x2b0 kasan_report+0xd0/0x120 __asan_load1+0x6c/0x80 tcf_ct_flow_table_process_conn+0x12b/0x380 [act_ct] tcf_ct_act+0x886/0x1350 [act_ct] tcf_action_exec+0xf8/0x1f0 fl_classify+0x355/0x360 [cls_flower] __tcf_classify+0x1fd/0x330 tcf_classify+0x21c/0x3c0 sch_handle_ingress.constprop.0+0x2c5/0x500 __netif_receive_skb_core.constprop.0+0xb25/0x1510 __netif_receive_skb_list_core+0x220/0x4c0 netif_receive_skb_list_internal+0x446/0x620 napi_complete_done+0x157/0x3d0 gro_cell_poll+0xcf/0x100 __napi_poll+0x65/0x310 net_rx_action+0x30c/0x5c0 __do_softirq+0x14f/0x491 __irq_exit_rcu+0x82/0xc0 irq_exit_rcu+0xe/0x20 common_interrupt+0xa1/0xb0 </IRQ> <TASK> asm_common_interrupt+0x27/0x40 Allocated by task 6469: kasan_save_stack+0x38/0x70 kasan_set_track+0x25/0x40 kasan_save_alloc_info+0x1e/0x40 __kasan_krealloc+0x133/0x190 krealloc+0xaa/0x130 nf_ct_ext_add+0xed/0x230 [nf_conntrack] tcf_ct_act+0x1095/0x1350 [act_ct] tcf_action_exec+0xf8/0x1f0 fl_classify+0x355/0x360 [cls_flower] __tcf_classify+0x1fd/0x330 tcf_classify+0x21c/0x3c0 sch_handle_ingress.constprop.0+0x2c5/0x500 __netif_receive_skb_core.constprop.0+0xb25/0x1510 __netif_receive_skb_list_core+0x220/0x4c0 netif_receive_skb_list_internal+0x446/0x620 napi_complete_done+0x157/0x3d0 gro_cell_poll+0xcf/0x100 __napi_poll+0x65/0x310 net_rx_action+0x30c/0x5c0 __do_softirq+0x14f/0x491 Freed by task 6469: kasan_save_stack+0x38/0x70 kasan_set_track+0x25/0x40 kasan_save_free_info+0x2b/0x60 ____kasan_slab_free+0x180/0x1f0 __kasan_slab_free+0x12/0x30 slab_free_freelist_hook+0xd2/0x1a0 __kmem_cache_free+0x1a2/0x2f0 kfree+0x78/0x120 nf_conntrack_free+0x74/0x130 [nf_conntrack] nf_ct_destroy+0xb2/0x140 [nf_conntrack] __nf_ct_resolve_clash+0x529/0x5d0 [nf_conntrack] nf_ct_resolve_clash+0xf6/0x490 [nf_conntrack] __nf_conntrack_confirm+0x2c6/0x770 [nf_conntrack] tcf_ct_act+0x12ad/0x1350 [act_ct] tcf_action_exec+0xf8/0x1f0 fl_classify+0x355/0x360 [cls_flower] __tcf_classify+0x1fd/0x330 tcf_classify+0x21c/0x3c0 sch_handle_ingress.constprop.0+0x2c5/0x500 __netif_receive_skb_core.constprop.0+0xb25/0x1510 __netif_receive_skb_list_core+0x220/0x4c0 netif_receive_skb_list_internal+0x446/0x620 napi_complete_done+0x157/0x3d0 gro_cell_poll+0xcf/0x100 __napi_poll+0x65/0x310 net_rx_action+0x30c/0x5c0 __do_softirq+0x14f/0x491 The ct may be dropped if a clash has been resolved but is still passed to the tcf_ct_flow_table_process_conn function for further usage. This issue can be fixed by retrieving ct from skb again after confirming conntrack.
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.9.10
- 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 2% 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-41040 scores 7 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.9.10
Fixed in: 6.9.10
How to fix this CVE
Update your Linux kernel to version 6.9.10 or later to resolve a use-after-free vulnerability in the network traffic control scheduler that could lead to memory corruption. The vulnerability occurs when connection tracking clash resolution frees memory that is subsequently accessed by flow table processing. Systems running kernel versions 6.7 through 6.9.9 should prioritize this kernel update as part of routine security maintenance.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Run 'uname -r' to check your current kernel version. If the output shows a version between 6.7.0 and 6.9.9, your system is vulnerable.
- Verify traffic control (tc) classifier rules are in use by running 'tc qdisc show'. If flower classifiers with ct (conntrack) actions are configured, the vulnerable code path is active.
- Check kernel logs for KASAN warnings containing 'slab-use-after-free' and 'tcf_ct_flow_table_process_conn' by running 'journalctl -xe | grep -i "use-after-free\|tcf_ct"'.
- After updating, confirm the new kernel is running with 'uname -r' and verify it matches or exceeds version 6.9.10.
FAQ
What is CVE-2024-41040?
CVE-2024-41040 is a use-after-free vulnerability in the Linux kernel's network traffic scheduler where connection tracking clash resolution prematurely frees memory that is later accessed during flow table operations, potentially causing system crashes or memory corruption.
Is CVE-2024-41040 being actively exploited?
No, CVE-2024-41040 is not listed in CISA's Known Exploited Vulnerabilities catalog and no public exploits are currently available. However, the vulnerability can be triggered through local network operations and should still be patched promptly.
What versions of Kernel are affected by CVE-2024-41040?
Linux kernel versions 6.7.0 through 6.9.9 are affected. The vulnerability was resolved in kernel version 6.9.10 and later.
How do I check if my server is vulnerable to CVE-2024-41040?
Run 'uname -r' to display your kernel version. If the output shows a version in the range 6.7.x to 6.9.9, your system is vulnerable and requires a kernel update.
Does Defensia detect CVE-2024-41040?
Yes — Defensia's CVE advisory scanner compares installed kernel package versions against the NVD database. If Linux kernel 6.7–6.9.9 is installed on a monitored server, CVE-2024-41040 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/26488172b0292bed837b95a006a3f3431d1898c3
- https://git.kernel.org/stable/c/2b4d68df3f57ea746c430941ba9c03d7d8b5a23f
- https://git.kernel.org/stable/c/4e71b10a100861fb27d9c5755dfd68f615629fae
- https://git.kernel.org/stable/c/799a34901b634008db4a7ece3900e2b971d4c932
- https://git.kernel.org/stable/c/b81a523d54ea689414f67c9fb81a5b917a41ed55
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-41040. Free for 1 server.
Get started free