In the Linux kernel, the following vulnerability has been resolved:
bpf, skmsg: Fix NULL pointer dereference in sk_psock_skb_ingress_enqueue
Fix NULL pointer data-races in sk_psock_skb_ingress_enqueue() which syzbot reported [1].
[1] BUG: KCSAN: data-race in sk_psock_drop / sk_psock_skb_ingress_enqueue
write to 0xffff88814b3278b8 of 8 bytes by task 10724 on cpu 1: sk_psock_stop_verdict net/core/skmsg.c:1257 [inline] sk_psock_drop+0x13e/0x1f0 net/core/skmsg.c:843 sk_psock_put include/linux/skmsg.h:459 [inline] sock_map_close+0x1a7/0x260 net/core/sock_map.c:1648 unix_release+0x4b/0x80 net/unix/af_unix.c:1048 __sock_release net/socket.c:659 [inline] sock_close+0x68/0x150 net/socket.c:1421 __fput+0x2c1/0x660 fs/file_table.c:422 __fput_sync+0x44/0x60 fs/file_table.c:507 __do_sys_close fs/open.c:1556 [inline] __se_sys_close+0x101/0x1b0 fs/open.c:1541 __x64_sys_close+0x1f/0x30 fs/open.c:1541 do_syscall_64+0xd3/0x1d0 entry_SYSCALL_64_after_hwframe+0x6d/0x75
read to 0xffff88814b3278b8 of 8 bytes by task 10713 on cpu 0: sk_psock_data_ready include/linux/skmsg.h:464 [inline] sk_psock_skb_ingress_enqueue+0x32d/0x390 net/core/skmsg.c:555 sk_psock_skb_ingress_self+0x185/0x1e0 net/core/skmsg.c:606 sk_psock_verdict_apply net/core/skmsg.c:1008 [inline] sk_psock_verdict_recv+0x3e4/0x4a0 net/core/skmsg.c:1202 unix_read_skb net/unix/af_unix.c:2546 [inline] unix_stream_read_skb+0x9e/0xf0 net/unix/af_unix.c:2682 sk_psock_verdict_data_ready+0x77/0x220 net/core/skmsg.c:1223 unix_stream_sendmsg+0x527/0x860 net/unix/af_unix.c:2339 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg+0x140/0x180 net/socket.c:745 ____sys_sendmsg+0x312/0x410 net/socket.c:2584 ___sys_sendmsg net/socket.c:2638 [inline] __sys_sendmsg+0x1e9/0x280 net/socket.c:2667 __do_sys_sendmsg net/socket.c:2676 [inline] __se_sys_sendmsg net/socket.c:2674 [inline] __x64_sys_sendmsg+0x46/0x50 net/socket.c:2674 do_syscall_64+0xd3/0x1d0 entry_SYSCALL_64_after_hwframe+0x6d/0x75
value changed: 0xffffffff83d7feb0 -> 0x0000000000000000
Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 10713 Comm: syz-executor.4 Tainted: G W 6.8.0-syzkaller-08951-gfe46a7dd189e #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/29/2024
Prior to this, commit 4cd12c6065df ("bpf, sockmap: Fix NULL pointer dereference in sk_psock_verdict_data_ready()") fixed one NULL pointer similarly due to no protection of saved_data_ready. Here is another different caller causing the same issue because of the same reason. So we should protect it with sk_callback_lock read lock because the writer side in the sk_psock_drop() uses "write_lock_bh(&sk->sk_callback_lock);".
To avoid errors that could happen in future, I move those two pairs of lock into the sk_psock_data_ready(), which is suggested by John Fastabend.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/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-develUpgrade perfUpgrade perf-debuginfoUpgrade kernel-tools-develUpgrade kernel-livepatch-5.10.223-211.872Upgrade kernel-debuginfoUpgrade kernelUpgrade bpftoolUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools-debuginfoUpgrade kernel-toolsUpgrade kernel-headersUpgrade python-perfUpgrade kernel-livepatch-5.15.160-104.158Upgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-x86_64 | Jun 12, 2024 | May 30, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-headersUpgrade perfUpgrade kernel-livepatch-6.1.91-99.172Upgrade kernel-debuginfoUpgrade kernel-tools-develUpgrade perf-debuginfoUpgrade kernel-modules-extra-commonUpgrade python3-perfUpgrade bpftoolUpgrade kernel-modules-extraUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade python3-perf-debuginfoUpgrade kernel-toolsUpgrade bpftool-debuginfoUpgrade kernelUpgrade kernel-libbpfUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-develUpgrade kernel-libbpf-develUpgrade kernel-libbpf-static | Feb 17, 2025 | May 30, 2024 |
| Debian | — | Upgrade linux | Jul 30, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-tools-libsUpgrade kernelUpgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade python3-perf | Oct 8, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernelUpgrade bpftoolUpgrade python3-perf | Oct 8, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernelUpgrade python3-perfUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade bpftool | Oct 9, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade python3-perfUpgrade kernelUpgrade kernel-toolsUpgrade kernel-tools-libs | Oct 8, 2024 | May 30, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | May 30, 2024 |
| Suse | — | Upgrade kernel-default-develUpgrade kernel-default-manUpgrade kernel-macrosUpgrade kernel-rtUpgrade kselftests-kmp-defaultUpgrade dtb-armUpgrade gfs2-kmp-64kbUpgrade dtb-qcomUpgrade dtb-lgUpgrade dtb-amazonUpgrade kernel-azure-develUpgrade kernel-zfcpdumpUpgrade kernel-debug-develUpgrade kernel-azure-livepatch-develUpgrade kernel-symsUpgrade kernel-debug-livepatch-develUpgrade dtb-amlogicUpgrade kernel-devel-azureUpgrade kernel-obs-qaUpgrade dtb-xilinxUpgrade kernel-rt-develUpgrade cluster-md-kmp-defaultUpgrade dtb-freescaleUpgrade dtb-socionextUpgrade kernel-sourceUpgrade dtb-exynosUpgrade dtb-apmUpgrade kernel-devel-rtUpgrade cluster-md-kmp-azureUpgrade kernel-source-azureUpgrade dtb-mediatekUpgrade kernel-kvmsmallUpgrade dtb-hisiliconUpgrade kernel-kvmsmall-develUpgrade kernel-syms-azureUpgrade dlm-kmp-azureUpgrade kernel-64kb-develUpgrade kernel-syms-rtUpgrade kernel-azure-extraUpgrade kernel-azure-vdsoUpgrade kselftests-kmp-64kbUpgrade kernel-docsUpgrade kernel-rt_debugUpgrade kernel-rt-livepatch-develUpgrade dtb-appleUpgrade ocfs2-kmp-rtUpgrade gfs2-kmp-rtUpgrade kernel-rt_debug-vdsoUpgrade kernel-64kb-livepatch-develUpgrade dlm-kmp-64kbUpgrade kernel-64kbUpgrade kernel-debugUpgrade kernel-64kb-optionalUpgrade reiserfs-kmp-azureUpgrade kernel-default-extraUpgrade kernel-kvmsmall-livepatch-develUpgrade reiserfs-kmp-64kbUpgrade cluster-md-kmp-64kbUpgrade dtb-amdUpgrade dtb-renesasUpgrade dtb-allwinnerUpgrade kernel-64kb-extraUpgrade kselftests-kmp-azureUpgrade kernel-docs-htmlUpgrade kernel-default-livepatchUpgrade dtb-marvellUpgrade ocfs2-kmp-defaultUpgrade dtb-broadcomUpgrade ocfs2-kmp-64kbUpgrade dtb-caviumUpgrade kernel-rt-livepatchUpgrade kernel-rt-vdsoUpgrade kernel-rt-optionalUpgrade kernel-kvmsmall-vdsoUpgrade dtb-rockchipUpgrade cluster-md-kmp-rtUpgrade kernel-debug-vdsoUpgrade kernel-default-baseUpgrade dtb-sprdUpgrade reiserfs-kmp-defaultUpgrade kernel-source-vanillaUpgrade gfs2-kmp-defaultUpgrade dtb-nvidiaUpgrade dtb-alteraUpgrade kernel-rt-extraUpgrade kernel-obs-buildUpgrade kernel-default-optionalUpgrade kernel-azure-optionalUpgrade kernel-azureUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-default-livepatch-develUpgrade kernel-develUpgrade kernel-default-vdsoUpgrade dlm-kmp-rtUpgrade dlm-kmp-defaultUpgrade reiserfs-kmp-rtUpgrade kernel-source-rtUpgrade kselftests-kmp-rtUpgrade kernel-default-base-rebuildUpgrade kernel-rt_debug-develUpgrade kernel-azure-baseUpgrade gfs2-kmp-azureUpgrade ocfs2-kmp-azureUpgrade kernel-default | Jun 13, 2024 | May 30, 2024 |
| Ubuntu | — | Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.4.0-1045-iotUpgrade linux-image-6.8.0-1010-oemUpgrade linux-image-5.15.0-118-generic-64kUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-40-lowlatencyUpgrade linux-image-awsUpgrade linux-image-6.8.0-40-genericUpgrade linux-image-virtualUpgrade linux-image-5.15.0-1064-kvmUpgrade linux-image-6.8.0-1011-nvidia-lowlatency-64kUpgrade linux-image-5.15.0-1062-intel-iotgUpgrade linux-image-6.8.0-1008-gkeUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-bluefieldUpgrade linux-image-azure-cvmUpgrade linux-image-intelUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-oemUpgrade linux-image-oracleUpgrade linux-image-oracle-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.4.0-1096-bluefieldUpgrade linux-image-gcpUpgrade linux-image-5.15.0-118-genericUpgrade linux-image-5.15.0-1062-nvidiaUpgrade linux-image-5.4.0-1083-ibmUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-oem-24.04aUpgrade linux-image-5.15.0-1070-azure-fdeUpgrade linux-image-raspi-nolpaeUpgrade linux-image-5.15.0-118-generic-lpaeUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-5.4.0-1120-raspiUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-5.15.0-1060-ibmUpgrade linux-image-gkeop-5.15Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-5.15.0-118-lowlatencyUpgrade linux-image-6.8.0-1010-oracleUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-6.8.0-1011-nvidia-lowlatencyUpgrade linux-image-5.15.0-1062-nvidia-lowlatencyUpgrade linux-image-intel-iotgUpgrade linux-image-oem-osp1Upgrade linux-image-oem-24.04Upgrade linux-image-oracle-lts-20.04Upgrade linux-image-nvidia-64kUpgrade linux-image-kvmUpgrade linux-image-oem-20.04Upgrade linux-image-5.15.0-1067-awsUpgrade linux-image-6.8.0-1009-raspiUpgrade linux-image-5.15.0-1060-raspiUpgrade linux-image-5.15.0-1050-gkeopUpgrade linux-image-6.8.0-1010-oracle-64kUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-5.4.0-1055-xilinx-zynqmpUpgrade linux-image-5.4.0-1140-gcpUpgrade linux-image-gkeUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-1012-azure-fdeUpgrade linux-image-5.15.0-1064-gkeUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-6.8.0-1011-nvidia-64kUpgrade linux-image-lowlatencyUpgrade linux-image-oem-20.04bUpgrade linux-image-6.8.0-1010-ibmUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-40-lowlatency-64kUpgrade linux-image-aws-lts-20.04Upgrade linux-image-raspiUpgrade linux-image-aws-lts-22.04Upgrade linux-image-ibmUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1012-gcpUpgrade linux-image-raspi2Upgrade linux-image-5.4.0-1124-kvmUpgrade linux-image-6.8.0-1011-nvidiaUpgrade linux-image-nvidiaUpgrade linux-image-generic-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-1070-azureUpgrade linux-image-gkeopUpgrade linux-image-azureUpgrade linux-image-generic-lpaeUpgrade linux-image-5.4.0-1142-azureUpgrade linux-image-5.4.0-1136-awsUpgrade linux-image-6.8.0-1013-awsUpgrade linux-image-6.8.0-40-generic-64kUpgrade linux-image-azure-lts-22.04Upgrade linux-image-ibm-classicUpgrade linux-image-gke-5.15Upgrade linux-image-oem-20.04dUpgrade linux-image-oem-20.04cUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-5.15.0-1065-oracleUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-6.8.0-1012-azureUpgrade linux-image-5.4.0-1135-oracleUpgrade linux-image-5.4.0-202-generic-lpaeUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-5.15.0-1066-gcpUpgrade linux-image-genericUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-5.15.0-118-lowlatency-64kUpgrade linux-image-azure-lts-20.04Upgrade linux-image-5.4.0-202-lowlatencyUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-5.4.0-202-generic | Aug 9, 2024 | May 30, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | May 30, 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