In the Linux kernel, the following vulnerability has been resolved:
net: fix data-races around sk->sk_forward_alloc
Syzkaller reported this warning: ------------[ cut here ]------------ WARNING: CPU: 0 PID: 16 at net/ipv4/af_inet.c:156 inet_sock_destruct+0x1c5/0x1e0 Modules linked in: CPU: 0 UID: 0 PID: 16 Comm: ksoftirqd/0 Not tainted 6.12.0-rc5 #26 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014 RIP: 0010:inet_sock_destruct+0x1c5/0x1e0 Code: 24 12 4c 89 e2 5b 48 c7 c7 98 ec bb 82 41 5c e9 d1 18 17 ff 4c 89 e6 5b 48 c7 c7 d0 ec bb 82 41 5c e9 bf 18 17 ff 0f 0b eb 83 <0f> 0b eb 97 0f 0b eb 87 0f 0b e9 68 ff ff ff 66 66 2e 0f 1f 84 00 RSP: 0018:ffffc9000008bd90 EFLAGS: 00010206 RAX: 0000000000000300 RBX: ffff88810b172a90 RCX: 0000000000000007 RDX: 0000000000000002 RSI: 0000000000000300 RDI: ffff88810b172a00 RBP: ffff88810b172a00 R08: ffff888104273c00 R09: 0000000000100007 R10: 0000000000020000 R11: 0000000000000006 R12: ffff88810b172a00 R13: 0000000000000004 R14: 0000000000000000 R15: ffff888237c31f78 FS: 0000000000000000(0000) GS:ffff888237c00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007ffc63fecac8 CR3: 000000000342e000 CR4: 00000000000006f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: <TASK> ? __warn+0x88/0x130 ? inet_sock_destruct+0x1c5/0x1e0 ? report_bug+0x18e/0x1a0 ? handle_bug+0x53/0x90 ? exc_invalid_op+0x18/0x70 ? asm_exc_invalid_op+0x1a/0x20 ? inet_sock_destruct+0x1c5/0x1e0 __sk_destruct+0x2a/0x200 rcu_do_batch+0x1aa/0x530 ? rcu_do_batch+0x13b/0x530 rcu_core+0x159/0x2f0 handle_softirqs+0xd3/0x2b0 ? __pfx_smpboot_thread_fn+0x10/0x10 run_ksoftirqd+0x25/0x30 smpboot_thread_fn+0xdd/0x1d0 kthread+0xd3/0x100 ? __pfx_kthread+0x10/0x10 ret_from_fork+0x34/0x50 ? __pfx_kthread+0x10/0x10 ret_from_fork_asm+0x1a/0x30 </TASK> ---[ end trace 0000000000000000 ]---
Its possible that two threads call tcp_v6_do_rcv()/sk_forward_alloc_add() concurrently when sk->sk_state == TCP_LISTEN with sk->sk_lock unlocked, which triggers a data-race around sk->sk_forward_alloc: tcp_v6_rcv tcp_v6_do_rcv skb_clone_and_charge_r sk_rmem_schedule __sk_mem_schedule sk_forward_alloc_add() skb_set_owner_r sk_mem_charge sk_forward_alloc_add() __kfree_skb skb_release_all skb_release_head_state sock_rfree sk_mem_uncharge sk_forward_alloc_add() sk_mem_reclaim // set local var reclaimable __sk_mem_reclaim sk_forward_alloc_add()
In this syzkaller testcase, two threads call tcp_v6_do_rcv() with skb->truesize=768, the sk_forward_alloc changes like this: (cpu 1) | (cpu 2) | sk_forward_alloc ... | ... | 0 __sk_mem_schedule() | | +4096 = 4096 | __sk_mem_schedule() | +4096 = 8192 sk_mem_charge() | | -768 = 7424 | sk_mem_charge() | -768 = 6656 ... | ... | sk_mem_uncharge() | | +768 = 7424 reclaimable=7424 | | | sk_mem_uncharge() | +768 = 8192 | reclaimable=8192 | __sk_mem_reclaim() | | -4096 = 4096 | __sk_mem_reclaim() | -8192 = -4096 != 0
The skb_clone_and_charge_r() should not be called in tcp_v6_do_rcv() when sk->sk_state is TCP_LISTEN, it happens later in tcp_v6_syn_recv_sock(). Fix the same issue in dccp_v6_do_rcv().
CVSS Details
- CVSS 3.1 Base Score: 7.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools-develUpgrade kernel-headersUpgrade perfUpgrade bpftool-debuginfoUpgrade perf-debuginfoUpgrade kernel-livepatch-5.10.234-225.895Upgrade kernel-develUpgrade kernel-debuginfoUpgrade kernel-toolsUpgrade python-perfUpgrade kernel-debuginfo-common-x86_64Upgrade kernelUpgrade python-perf-debuginfoUpgrade kernel-livepatch-5.15.178-120.178Upgrade bpftool | Feb 26, 2025 | Dec 2, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-debuginfo-common-x86_64Upgrade kernel-headersUpgrade kernel-libbpf-develUpgrade kernelUpgrade kernel-modules-extra-commonUpgrade bpftool-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-modules-extraUpgrade kernel-libbpfUpgrade python3-perf-debuginfoUpgrade kernel-tools-develUpgrade kernel-livepatch-6.1.127-135.201Upgrade kernel-develUpgrade perf-debuginfoUpgrade kernel-toolsUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools-debuginfoUpgrade python3-perfUpgrade perfUpgrade bpftool | Mar 27, 2025 | Dec 2, 2024 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Feb 10, 2025 | Dec 2, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade python3-perfUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade kernel-tools | May 13, 2025 | Dec 2, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernelUpgrade kernel-abi-stablelistsUpgrade python3-perfUpgrade bpftoolUpgrade kernel-tools-libsUpgrade kernel-tools | Apr 11, 2025 | Dec 2, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade bpftoolUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perf | Feb 11, 2025 | Dec 2, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernelUpgrade kernel-tools-libsUpgrade python3-perfUpgrade kernel-tools | Mar 18, 2025 | Dec 2, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Mar 12, 2025 | Dec 2, 2024 |
| Redhat_linux | — | Upgrade kernel-rtNo solution existsUpgrade kernel | May 15, 2025 | Dec 2, 2024 |
| Ubuntu | — | Upgrade linux-image-lowlatencyUpgrade linux-image-gcp-4.15Upgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-raspiUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-awsUpgrade linux-image-oem-24.04bUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-5.15.0-136-genericUpgrade linux-image-azure-cvmUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.8.0-1027-ibmUpgrade linux-image-raspi-nolpaeUpgrade linux-image-6.8.0-1029-nvidia-lowlatency-64kUpgrade linux-image-virtual-6.8Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-4.15.0-243-lowlatencyUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-lowlatency-lts-xenialUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-5.15.0-1074-nvidiaUpgrade linux-image-5.15.0-1081-gcpUpgrade linux-image-5.4.0-1048-iotUpgrade linux-image-6.8.0-1031-gcpUpgrade linux-image-6.8.0-1026-gkeUpgrade linux-image-generic-lpaeUpgrade linux-image-azure-fips-4.15Upgrade linux-image-gcp-fips-4.15Upgrade linux-image-5.15.0-1074-nvidia-lowlatencyUpgrade linux-image-6.8.0-1030-aws-64kUpgrade linux-image-6.11.0-1009-azureUpgrade linux-image-generic-lts-xenialUpgrade linux-image-4.15.0-1141-fipsUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.15.0-135-lowlatencyUpgrade linux-image-5.15.0-1062-gkeopUpgrade linux-image-5.4.0-211-generic-lpaeUpgrade linux-image-4.15.0-2104-azure-fipsUpgrade linux-image-oemUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-gcp-fipsUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-62-lowlatency-64kUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1030-azure-fdeUpgrade linux-image-6.8.0-62-genericUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-aws-lts-20.04Upgrade linux-image-5.4.0-1142-awsUpgrade linux-image-5.15.0-135-fipsUpgrade linux-image-5.4.0-1060-xilinx-zynqmpUpgrade linux-image-aws-lts-18.04Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-azure-nvidiaUpgrade linux-image-azure-lts-20.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.8.0-1029-nvidiaUpgrade linux-image-5.15.0-1076-kvmUpgrade linux-image-gcp-64kUpgrade linux-image-5.15.0-136-generic-64kUpgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-aws-hweUpgrade linux-image-5.4.0-1129-kvmUpgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-6.8.0-1031-gcp-64kUpgrade linux-image-generic-hwe-16.04Upgrade linux-image-5.15.0-1021-nvidia-tegra-igx-rtUpgrade linux-image-6.8.0-62-lowlatencyUpgrade linux-image-6.11.0-1009-awsUpgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-5.4.0-1140-oracleUpgrade linux-image-5.4.0-1116-fipsUpgrade linux-image-5.15.0-1083-azure-fipsUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-bluefieldUpgrade linux-image-5.4.0-1101-bluefieldUpgrade linux-image-azure-fdeUpgrade linux-image-azure-fipsUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-oem-22.04Upgrade linux-image-6.8.0-1030-awsUpgrade linux-image-gkeop-5.15Upgrade linux-image-oem-22.04dUpgrade linux-image-5.15.0-135-generic-lpaeUpgrade linux-image-fipsUpgrade linux-image-generic-64k-6.8Upgrade linux-image-4.4.0-1149-awsUpgrade linux-image-5.15.0-1079-gcp-fipsUpgrade linux-image-azureUpgrade linux-image-4.4.0-274-lowlatencyUpgrade linux-image-4.15.0-2087-gcp-fipsUpgrade linux-image-6.8.0-1029-nvidia-lowlatencyUpgrade linux-image-oracleUpgrade linux-image-6.8.0-1029-oemUpgrade linux-image-aws-fipsUpgrade linux-image-oem-20.04bUpgrade linux-image-gcp-lts-18.04Upgrade linux-image-5.15.0-135-lowlatency-64kUpgrade linux-image-6.8.0-1013-gkeopUpgrade linux-image-5.4.0-1142-aws-fipsUpgrade linux-image-6.8.0-1030-azureUpgrade linux-image-5.4.0-1088-ibmUpgrade linux-image-virtualUpgrade linux-image-generic-6.8Upgrade linux-image-5.15.0-135-genericUpgrade linux-image-5.15.0-1080-realtimeUpgrade linux-image-5.15.0-1073-intel-iot-realtimeUpgrade linux-image-5.4.0-1147-azureUpgrade linux-image-4.15.0-2124-aws-fipsUpgrade linux-image-6.8.0-62-generic-64kUpgrade linux-image-oem-22.04aUpgrade linux-image-oem-22.04bUpgrade linux-image-ibm-classicUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-6.8.0-1027-oracle-64kUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.15.0-1079-gcpUpgrade linux-image-5.15.0-1044-xilinx-zynqmpUpgrade linux-image-5.15.0-1021-nvidia-tegra-igxUpgrade linux-image-4.15.0-243-genericUpgrade linux-image-4.15.0-1186-awsUpgrade linux-image-5.4.0-1145-gcpUpgrade linux-image-4.4.0-1150-kvmUpgrade linux-image-oracle-lts-18.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-raspi-hwe-18.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-2024-raspi-realtimeUpgrade linux-image-intelUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.8.0-1029-raspiUpgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-nvidiaUpgrade linux-image-5.4.0-1145-gcp-fipsUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-5.15.0-1080-aws-fipsUpgrade linux-image-oem-20.04cUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-5.15.0-1033-nvidia-tegraUpgrade linux-image-nvidia-tegraUpgrade linux-image-oem-20.04Upgrade linux-image-4.4.0-274-genericUpgrade linux-image-4.15.0-1148-oracleUpgrade linux-image-aws-fips-4.15Upgrade linux-image-realtimeUpgrade linux-image-gkeop-6.8Upgrade linux-image-5.15.0-1033-nvidia-tegra-rtUpgrade linux-image-5.15.0-1077-oracleUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-aws-64kUpgrade linux-image-5.4.0-1090-ibmUpgrade linux-image-oem-24.04Upgrade linux-image-4.15.0-1194-azureUpgrade linux-image-oem-osp1Upgrade linux-image-4.4.0-1187-awsUpgrade linux-image-5.15.0-135-generic-64kUpgrade linux-image-5.15.0-1084-azureUpgrade linux-image-5.15.0-1080-awsUpgrade linux-image-6.11.0-1015-oemUpgrade linux-image-5.4.0-211-lowlatencyUpgrade linux-image-5.4.0-1147-azure-fipsUpgrade linux-image-5.15.0-136-generic-lpaeUpgrade linux-image-5.15.0-1077-gkeUpgrade linux-image-azure-lts-24.04Upgrade linux-image-oem-22.04cUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-virtual-hwe-16.04Upgrade linux-image-raspi-realtimeUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-oracle-64kUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-generic-hwe-18.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-aws-lts-22.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.15.0-1072-ibmUpgrade linux-image-ibmUpgrade linux-image-oracle-4.15Upgrade linux-image-gcp-lts-20.04Upgrade linux-image-aws-4.15Upgrade linux-image-6.8.1-1023-realtimeUpgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-6.11.0-18-genericUpgrade linux-image-4.15.0-1168-kvmUpgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-gcpUpgrade linux-image-gkeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-generic-64kUpgrade linux-image-6.8.0-1027-oracleUpgrade linux-image-5.15.0-1086-azureUpgrade linux-image-4.4.0-1119-fipsUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-gkeopUpgrade linux-image-virtual-lts-xenialUpgrade linux-image-5.15.0-1074-raspiUpgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-6.8.0-64-generic-64kUpgrade linux-image-5.15.0-1075-intel-iotgUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-intel-iotgUpgrade linux-image-genericUpgrade linux-image-6.8.0-1018-azure-nvidiaUpgrade linux-image-6.11.0-1011-oracle-64kUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-oem-20.04dUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oem-24.04aUpgrade linux-image-6.8.0-1029-nvidia-64kUpgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-4.15.0-1179-gcpUpgrade linux-image-5.15.0-1077-intel-iotgUpgrade linux-image-azure-lts-18.04Upgrade linux-image-nvidia-64kUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-raspi2Upgrade linux-image-kvmUpgrade linux-image-gke-5.15Upgrade linux-image-5.4.0-211-genericUpgrade linux-image-6.8.0-64-genericUpgrade linux-image-azure-4.15Upgrade linux-image-5.15.0-1086-azure-fdeUpgrade linux-image-6.11.0-1011-oracle | Feb 20, 2025 | Dec 2, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 2, 2025 | Dec 2, 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