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