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-tools-debuginfoUpgrade perfUpgrade bpftoolUpgrade kernel-develUpgrade kernelUpgrade kernel-debuginfoUpgrade perf-debuginfoUpgrade kernel-livepatch-5.10.223-211.872Upgrade kernel-tools-develUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-headersUpgrade python-perf-debuginfoUpgrade kernel-livepatch-5.15.160-104.158Upgrade kernel-debuginfo-common-x86_64Upgrade python-perfUpgrade bpftool-debuginfoUpgrade kernel-tools | Jun 12, 2024 | May 30, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-libbpf-develUpgrade kernel-develUpgrade kernel-debuginfo-common-x86_64Upgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-tools-debuginfoUpgrade kernelUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-libbpfUpgrade kernel-modules-extraUpgrade kernel-toolsUpgrade python3-perf-debuginfoUpgrade kernel-modules-extra-commonUpgrade kernel-livepatch-6.1.91-99.172Upgrade perfUpgrade kernel-debuginfoUpgrade perf-debuginfoUpgrade python3-perfUpgrade kernel-headersUpgrade kernel-tools-devel | Feb 17, 2025 | May 30, 2024 |
| Debian | — | Upgrade linux | Jul 30, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernelUpgrade python3-perfUpgrade kernel-abi-stablelists | Oct 8, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade python3-perfUpgrade bpftoolUpgrade kernel | Oct 8, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade bpftoolUpgrade python3-perfUpgrade kernel | Oct 9, 2024 | May 30, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernel | Oct 8, 2024 | May 30, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | May 30, 2024 |
| Suse | — | Upgrade dtb-alteraUpgrade dtb-nvidiaUpgrade kernel-default-livepatchUpgrade kernel-azure-optionalUpgrade kernel-azureUpgrade ocfs2-kmp-64kbUpgrade ocfs2-kmp-defaultUpgrade kernel-docs-htmlUpgrade dtb-broadcomUpgrade dtb-marvellUpgrade dtb-caviumUpgrade kernel-default-optionalUpgrade dtb-amdUpgrade kernel-64kb-extraUpgrade dtb-renesasUpgrade kernel-default-base-rebuildUpgrade gfs2-kmp-defaultUpgrade gfs2-kmp-azureUpgrade dtb-allwinnerUpgrade kernel-rt_debug-develUpgrade kernel-kvmsmall-vdsoUpgrade dtb-rockchipUpgrade cluster-md-kmp-rtUpgrade kselftests-kmp-azureUpgrade kernel-obs-buildUpgrade kernel-rt-extraUpgrade kernel-source-rtUpgrade reiserfs-kmp-rtUpgrade kernel-develUpgrade dlm-kmp-defaultUpgrade kernel-azure-baseUpgrade kselftests-kmp-rtUpgrade kernel-default-vdsoUpgrade dlm-kmp-rtUpgrade kernel-default-baseUpgrade kernel-rt-livepatchUpgrade kernel-debug-vdsoUpgrade kernel-source-vanillaUpgrade kernel-defaultUpgrade dtb-sprdUpgrade reiserfs-kmp-defaultUpgrade kernel-rt-optionalUpgrade kernel-default-livepatch-develUpgrade cluster-md-kmp-64kbUpgrade ocfs2-kmp-azureUpgrade reiserfs-kmp-64kbUpgrade kernel-rt-vdsoUpgrade kernel-rt_debug-livepatch-develUpgrade dtb-apmUpgrade kernel-kvmsmall-develUpgrade kernel-kvmsmallUpgrade kernel-docsUpgrade ocfs2-kmp-rtUpgrade dtb-amlogicUpgrade dtb-mediatekUpgrade kernel-azure-develUpgrade dtb-appleUpgrade gfs2-kmp-rtUpgrade kernel-rt_debug-vdsoUpgrade kernel-64kb-livepatch-develUpgrade kernel-debugUpgrade kernel-default-manUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-syms-rtUpgrade dtb-hisiliconUpgrade reiserfs-kmp-azureUpgrade kernel-symsUpgrade kernel-debug-livepatch-develUpgrade kernel-64kbUpgrade dlm-kmp-64kbUpgrade kernel-64kb-optionalUpgrade kselftests-kmp-64kbUpgrade kernel-rt_debugUpgrade kernel-rt-livepatch-develUpgrade kernel-default-extraUpgrade kernel-azure-vdsoUpgrade kernel-azure-extraUpgrade kernel-devel-azureUpgrade cluster-md-kmp-azureUpgrade kernel-source-azureUpgrade kernel-sourceUpgrade kernel-rt-develUpgrade kernel-obs-qaUpgrade kernel-devel-rtUpgrade dtb-xilinxUpgrade dtb-socionextUpgrade dtb-freescaleUpgrade cluster-md-kmp-defaultUpgrade kernel-syms-azureUpgrade dtb-qcomUpgrade dtb-lgUpgrade dtb-exynosUpgrade dtb-amazonUpgrade kernel-zfcpdumpUpgrade kernel-debug-develUpgrade kernel-azure-livepatch-develUpgrade kselftests-kmp-defaultUpgrade kernel-rtUpgrade kernel-default-develUpgrade gfs2-kmp-64kbUpgrade dtb-armUpgrade kernel-macrosUpgrade kernel-64kb-develUpgrade dlm-kmp-azure | Jun 13, 2024 | May 30, 2024 |
| Ubuntu | — | Upgrade linux-image-aws-lts-22.04Upgrade linux-image-5.4.0-1135-oracleUpgrade linux-image-6.8.0-1012-azureUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-ibm-classicUpgrade linux-image-gkeopUpgrade linux-image-5.4.0-1136-awsUpgrade linux-image-5.4.0-202-generic-lpaeUpgrade linux-image-6.8.0-1013-awsUpgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-1012-azure-fdeUpgrade linux-image-5.15.0-1064-gkeUpgrade linux-image-azure-lts-22.04Upgrade linux-image-5.15.0-1070-azureUpgrade linux-image-generic-lpaeUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-azureUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-6.8.0-40-generic-64kUpgrade linux-image-5.4.0-1142-azureUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-generic-64kUpgrade linux-image-gke-5.15Upgrade linux-image-ibmUpgrade linux-image-5.4.0-202-genericUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1012-gcpUpgrade linux-image-6.8.0-1011-nvidiaUpgrade linux-image-oem-20.04cUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-6.8.0-1011-nvidia-64kUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-lowlatencyUpgrade linux-image-5.4.0-1124-kvmUpgrade linux-image-6.8.0-1010-ibmUpgrade linux-image-oem-20.04dUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-genericUpgrade linux-image-nvidiaUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-raspiUpgrade linux-image-5.15.0-1065-oracleUpgrade linux-image-6.8.0-40-lowlatency-64kUpgrade linux-image-azure-lts-20.04Upgrade linux-image-5.4.0-202-lowlatencyUpgrade linux-image-5.15.0-118-lowlatency-64kUpgrade linux-image-oem-20.04bUpgrade linux-image-aws-lts-20.04Upgrade linux-image-raspi2Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-1066-gcpUpgrade linux-image-5.4.0-1120-raspiUpgrade linux-image-bluefieldUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-5.15.0-118-genericUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-5.15.0-118-generic-lpaeUpgrade linux-image-intel-iotgUpgrade linux-image-5.15.0-1060-ibmUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-6.8.0-40-genericUpgrade linux-image-awsUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-1008-gkeUpgrade linux-image-oemUpgrade linux-image-intelUpgrade linux-image-oem-24.04aUpgrade linux-image-oracle-64kUpgrade linux-image-gkeop-5.15Upgrade linux-image-oem-osp1Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-5.15.0-118-lowlatencyUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-6.8.0-1010-oracleUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidia-64kUpgrade linux-image-virtualUpgrade linux-image-5.15.0-1064-kvmUpgrade linux-image-oracleUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-1011-nvidia-lowlatency-64kUpgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-1009-raspiUpgrade linux-image-5.4.0-1055-xilinx-zynqmpUpgrade linux-image-5.4.0-1096-bluefieldUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-kvmUpgrade linux-image-6.8.0-1010-oracle-64kUpgrade linux-image-5.15.0-1070-azure-fdeUpgrade linux-image-gkeUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-40-lowlatencyUpgrade linux-image-raspi-nolpaeUpgrade linux-image-6.8.0-1010-oemUpgrade linux-image-5.15.0-1062-intel-iotgUpgrade linux-image-5.15.0-118-generic-64kUpgrade linux-image-5.4.0-1045-iotUpgrade linux-image-azure-cvmUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-oem-20.04Upgrade linux-image-5.4.0-1140-gcpUpgrade linux-image-5.15.0-1050-gkeopUpgrade linux-image-6.8.0-1011-nvidia-lowlatencyUpgrade linux-image-5.15.0-1067-awsUpgrade linux-image-5.15.0-1062-nvidia-lowlatencyUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-gcpUpgrade linux-image-5.15.0-1062-nvidiaUpgrade linux-image-5.4.0-1083-ibmUpgrade linux-image-5.15.0-1060-raspi | 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