In the Linux kernel, the following vulnerability has been resolved:
tcp/dccp: Don't use timer_pending() in reqsk_queue_unlink().
Martin KaFai Lau reported use-after-free [0] in reqsk_timer_handler().
""" We are seeing a use-after-free from a bpf prog attached to trace_tcp_retransmit_synack. The program passes the req->sk to the bpf_sk_storage_get_tracing kernel helper which does check for null before using it. """
The commit 83fccfc3940c ("inet: fix potential deadlock in reqsk_queue_unlink()") added timer_pending() in reqsk_queue_unlink() not to call del_timer_sync() from reqsk_timer_handler(), but it introduced a small race window.
Before the timer is called, expire_timers() calls detach_timer(timer, true) to clear timer->entry.pprev and marks it as not pending.
If reqsk_queue_unlink() checks timer_pending() just after expire_timers() calls detach_timer(), TCP will miss del_timer_sync(); the reqsk timer will continue running and send multiple SYN+ACKs until it expires.
The reported UAF could happen if req->sk is close()d earlier than the timer expiration, which is 63s by default.
The scenario would be
1. inet_csk_complete_hashdance() calls inet_csk_reqsk_queue_drop(), but del_timer_sync() is missed
2. reqsk timer is executed and scheduled again
3. req->sk is accept()ed and reqsk_put() decrements rsk_refcnt, but reqsk timer still has another one, and inet_csk_accept() does not clear req->sk for non-TFO sockets
4. sk is close()d
5. reqsk timer is executed again, and BPF touches req->sk
Let's not use timer_pending() by passing the caller context to __inet_csk_reqsk_queue_drop().
Note that reqsk timer is pinned, so the issue does not happen in most use cases. [1]
[0] BUG: KFENCE: use-after-free read in bpf_sk_storage_get_tracing+0x2e/0x1b0
Use-after-free read at 0x00000000a891fb3a (in kfence-#1): bpf_sk_storage_get_tracing+0x2e/0x1b0 bpf_prog_5ea3e95db6da0438_tcp_retransmit_synack+0x1d20/0x1dda bpf_trace_run2+0x4c/0xc0 tcp_rtx_synack+0xf9/0x100 reqsk_timer_handler+0xda/0x3d0 run_timer_softirq+0x292/0x8a0 irq_exit_rcu+0xf5/0x320 sysvec_apic_timer_interrupt+0x6d/0x80 asm_sysvec_apic_timer_interrupt+0x16/0x20 intel_idle_irq+0x5a/0xa0 cpuidle_enter_state+0x94/0x273 cpu_startup_entry+0x15e/0x260 start_secondary+0x8a/0x90 secondary_startup_64_no_verify+0xfa/0xfb
kfence-#1: 0x00000000a72cc7b6-0x00000000d97616d9, size=2376, cache=TCPv6
allocated by task 0 on cpu 9 at 260507.901592s: sk_prot_alloc+0x35/0x140 sk_clone_lock+0x1f/0x3f0 inet_csk_clone_lock+0x15/0x160 tcp_create_openreq_child+0x1f/0x410 tcp_v6_syn_recv_sock+0x1da/0x700 tcp_check_req+0x1fb/0x510 tcp_v6_rcv+0x98b/0x1420 ipv6_list_rcv+0x2258/0x26e0 napi_complete_done+0x5b1/0x2990 mlx5e_napi_poll+0x2ae/0x8d0 net_rx_action+0x13e/0x590 irq_exit_rcu+0xf5/0x320 common_interrupt+0x80/0x90 asm_common_interrupt+0x22/0x40 cpuidle_enter_state+0xfb/0x273 cpu_startup_entry+0x15e/0x260 start_secondary+0x8a/0x90 secondary_startup_64_no_verify+0xfa/0xfb
freed by task 0 on cpu 9 at 260507.927527s: rcu_core_si+0x4ff/0xf10 irq_exit_rcu+0xf5/0x320 sysvec_apic_timer_interrupt+0x6d/0x80 asm_sysvec_apic_timer_interrupt+0x16/0x20 cpuidle_enter_state+0xfb/0x273 cpu_startup_entry+0x15e/0x260 start_secondary+0x8a/0x90 secondary_startup_64_no_verify+0xfa/0xfb
CVSS Details
- CVSS 3.1 Base Score: 9.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-rt-debug-modulesUpgrade kernel-64k-debug-coreUpgrade python3-perfUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-coreUpgrade kernel-64k-debug-develUpgrade kernel-rt-modules-extraUpgrade kernel-uki-virt-addonsUpgrade kernel-tools-libsUpgrade kernel-64k-modules-extraUpgrade kernel-debug-modules-coreUpgrade kernel-64k-debug-modules-coreUpgrade kernel-rt-develUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-coreUpgrade rvUpgrade kernel-rt-modulesUpgrade kernel-rtUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-toolsUpgrade perfUpgrade kernel-debug-uki-virtUpgrade kernel-modules-extraUpgrade bpftoolUpgrade kernel-debug-coreUpgrade kernel-rt-debugUpgrade kernel-rt-debug-modules-coreUpgrade kernel-develUpgrade kernel-64k-debug-modulesUpgrade kernel-64k-develUpgrade kernel-64k-modulesUpgrade kernel-64k-modules-coreUpgrade kernel-devel-matchedUpgrade kernel-debugUpgrade kernel-abi-stablelistsUpgrade kernel-uki-virtUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-develUpgrade kernel-coreUpgrade kernel-rt-debug-develUpgrade kernel-modulesUpgrade kernel-docUpgrade rtlaUpgrade kernelUpgrade kernel-zfcpdump-modulesUpgrade kernel-64kUpgrade kernel-tools-libs-develUpgrade kernel-debug-devel-matchedUpgrade kernel-debug-develUpgrade kernel-cross-headersUpgrade kernel-zfcpdump-coreUpgrade libperfUpgrade kernel-64k-coreUpgrade kernel-debug-modules-extraUpgrade kernel-rt-modules-coreUpgrade kernel-64k-devel-matchedUpgrade kernel-64k-debug-modules-extraUpgrade kernel-modules-coreUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-headersUpgrade kernel-rt-debug-modules-extraUpgrade kernel-64k-debugUpgrade kernel-zfcpdump-modules-extra | Jan 27, 2025 | Nov 7, 2024 |
| Amazon Linux Ami 2 | — | Upgrade kernel-livepatch-5.10.237-230.949Upgrade perf-debuginfoUpgrade kernel-headersUpgrade kernel-tools-debuginfoUpgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-tools-develUpgrade kernel-livepatch-5.15.173-118.169Upgrade kernel-debuginfoUpgrade perfUpgrade python-perfUpgrade kernel-develUpgrade kernel-debuginfo-common-x86_64Upgrade bpftoolUpgrade kernel-toolsUpgrade kernel-debuginfo-common-aarch64Upgrade kernel | Jan 22, 2025 | Nov 7, 2024 |
| Amazon_linux_2023 | — | Upgrade bpftoolUpgrade kernel-tools-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-libbpf-develUpgrade kernel-develUpgrade python3-perf-debuginfoUpgrade kernel-toolsUpgrade kernel-modules-extra-commonUpgrade kernel-livepatch-6.1.115-126.197Upgrade kernel-modules-extraUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-debuginfo-common-aarch64Upgrade kernelUpgrade bpftool-debuginfoUpgrade perfUpgrade kernel-headersUpgrade kernel-tools-develUpgrade kernel-debuginfoUpgrade kernel-libbpfUpgrade perf-debuginfoUpgrade python3-perf | Feb 17, 2025 | Nov 7, 2024 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Nov 11, 2024 | Nov 7, 2024 |
| Dell Powerstore Dsa2025223 | — | Upgrade Dell PowerStoreOS to the latest version | Oct 23, 2025 | May 27, 2025 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernelUpgrade kernel-abi-stablelistsUpgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-tools | Jan 14, 2025 | Nov 7, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-toolsUpgrade bpftoolUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perf | Feb 11, 2025 | Nov 7, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade bpftoolUpgrade python3-perfUpgrade kernel | Feb 11, 2025 | Nov 7, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-toolsUpgrade kernelUpgrade kernel-tools-libsUpgrade python3-perf | Jan 15, 2025 | Nov 7, 2024 |
| Oracle_linux | — | Upgrade kernel-uekUpgrade kernel | Jan 23, 2025 | Nov 7, 2024 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | Jan 23, 2025 | Nov 7, 2024 |
| Rocky_linux | — | Upgrade kernel-debug-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-tools-debuginfoUpgrade kernel-rt-debug-kvmUpgrade kernel-rt-debuginfo-common-x86_64Upgrade python3-perf-debuginfoUpgrade kernel-debug-debuginfoUpgrade kernel-debug-develUpgrade bpftool-debuginfoUpgrade kernel-tools-libsUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-debug-modules-extraUpgrade kernel-debug-modulesUpgrade bpftoolUpgrade kernel-modulesUpgrade kernel-rt-debuginfoUpgrade kernel-rt-debugUpgrade kernel-rt-kvmUpgrade kernel-toolsUpgrade kernel-rtUpgrade kernel-debuginfoUpgrade kernel-modules-extraUpgrade kernel-rt-modulesUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-debug-coreUpgrade kernel-coreUpgrade kernel-rt-develUpgrade kernel-rt-debug-develUpgrade kernel-debugUpgrade kernelUpgrade kernel-tools-libs-develUpgrade kernel-rt-modules-extraUpgrade perf-debuginfoUpgrade python3-perfUpgrade kernel-rt-debug-modules-extraUpgrade kernel-headersUpgrade kernel-cross-headersUpgrade kernel-rt-coreUpgrade perfUpgrade kernel-devel | Feb 5, 2026 | Jul 29, 2025 |
| Ubuntu | — | Upgrade linux-image-oem-20.04cUpgrade linux-image-oem-20.04dUpgrade linux-image-6.8.0-1028-gcp-64kUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.11.0-1015-oemUpgrade linux-image-5.15.0-1078-awsUpgrade linux-image-5.15.0-133-lowlatencyUpgrade linux-image-awsUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gcpUpgrade linux-image-6.11.0-18-genericUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-kvmUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-1026-nvidia-64kUpgrade linux-image-5.15.0-133-generic-lpaeUpgrade linux-image-5.15.0-1080-awsUpgrade linux-image-5.15.0-134-generic-lpaeUpgrade linux-image-6.8.0-58-generic-64kUpgrade linux-image-oracle-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.11.0-1009-awsUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-1081-azureUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1075-oracleUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-1024-ibmUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.8.0-1026-oemUpgrade linux-image-5.15.0-134-generic-64kUpgrade linux-image-nvidia-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-oem-22.04bUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-raspiUpgrade linux-image-oem-24.04aUpgrade linux-image-oem-20.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-5.15.0-1070-ibmUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-1027-azureUpgrade linux-image-5.15.0-1060-gkeopUpgrade linux-image-6.8.0-58-lowlatency-64kUpgrade linux-image-6.8.0-1027-azure-fdeUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-6.8.0-1023-gkeUpgrade linux-image-5.15.0-1072-nvidia-lowlatencyUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-5.15.0-1075-gkeUpgrade linux-image-5.15.0-134-genericUpgrade linux-image-gcp-64kUpgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-5.15.0-1077-gcpUpgrade linux-image-5.15.0-133-generic-64kUpgrade linux-image-6.8.0-1010-gkeopUpgrade linux-image-azureUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-1024-oracleUpgrade linux-image-realtimeUpgrade linux-image-5.15.0-1044-xilinx-zynqmpUpgrade linux-image-gkeUpgrade linux-image-oracleUpgrade linux-image-5.15.0-1073-intel-iotgUpgrade linux-image-5.15.0-1072-nvidiaUpgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.1-1020-realtimeUpgrade linux-image-gkeopUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-1024-oracle-64kUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-5.15.0-133-genericUpgrade linux-image-azure-fdeUpgrade linux-image-5.15.0-1081-azure-fdeUpgrade linux-image-6.8.0-58-genericUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1076-kvmUpgrade linux-image-genericUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-tegraUpgrade linux-image-generic-64kUpgrade linux-image-ibm-classicUpgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-6.8.0-1028-gcpUpgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-azure-lts-24.04Upgrade linux-image-oem-22.04cUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-generic-lpaeUpgrade linux-image-intel-iotgUpgrade linux-image-virtualUpgrade linux-image-oem-22.04aUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-ibmUpgrade linux-image-azure-nvidiaUpgrade linux-image-6.11.0-1011-oracleUpgrade linux-image-azure-lts-22.04Upgrade linux-image-6.11.0-1009-azureUpgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-oem-24.04bUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidiaUpgrade linux-image-gke-5.15Upgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1026-nvidia-lowlatency-64kUpgrade linux-image-5.15.0-1033-nvidia-tegra-rtUpgrade linux-image-lowlatency-64kUpgrade linux-image-oem-24.04Upgrade linux-image-intelUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-5.15.0-1033-nvidia-tegraUpgrade linux-image-5.15.0-133-lowlatency-64kUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1027-awsUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.8.0-58-lowlatencyUpgrade linux-image-5.15.0-1021-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1021-nvidia-tegra-igxUpgrade linux-image-oem-22.04Upgrade linux-image-oem-20.04bUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.8.0-1026-nvidiaUpgrade linux-image-5.15.0-1072-raspiUpgrade linux-image-raspi-nolpaeUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1026-nvidia-lowlatencyUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-6.11.0-1011-oracle-64k | Feb 20, 2025 | Nov 7, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Nov 7, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub