In the Linux kernel, the following vulnerability has been resolved:
net/smc: fix UAF on smcsk after smc_listen_out()
BPF CI testing report a UAF issue:
[ 16.446633] BUG: kernel NULL pointer dereference, address: 000000000000003 0 [ 16.447134] #PF: supervisor read access in kernel mod e [ 16.447516] #PF: error_code(0x0000) - not-present pag e [ 16.447878] PGD 0 P4D 0 [ 16.448063] Oops: Oops: 0000 [#1] PREEMPT SMP NOPT I [ 16.448409] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:1 Tainted: G OE 6.13.0-rc3-g89e8a75fda73-dirty #4 2 [ 16.449124] Tainted: [O]=OOT_MODULE, [E]=UNSIGNED_MODUL E [ 16.449502] Hardware name: QEMU Ubuntu 24.04 PC (i440FX + PIIX, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/201 4 [ 16.450201] Workqueue: smc_hs_wq smc_listen_wor k [ 16.450531] RIP: 0010:smc_listen_work+0xc02/0x159 0 [ 16.452158] RSP: 0018:ffffb5ab40053d98 EFLAGS: 0001024 6 [ 16.452526] RAX: 0000000000000001 RBX: 0000000000000002 RCX: 000000000000030 0 [ 16.452994] RDX: 0000000000000280 RSI: 00003513840053f0 RDI: 000000000000000 0 [ 16.453492] RBP: ffffa097808e3800 R08: ffffa09782dba1e0 R09: 000000000000000 5 [ 16.453987] R10: 0000000000000000 R11: 0000000000000000 R12: ffffa0978274640 0 [ 16.454497] R13: 0000000000000000 R14: 0000000000000000 R15: ffffa09782d4092 0 [ 16.454996] FS: 0000000000000000(0000) GS:ffffa097bbc00000(0000) knlGS:000000000000000 0 [ 16.455557] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003 3 [ 16.455961] CR2: 0000000000000030 CR3: 0000000102788004 CR4: 0000000000770ef 0 [ 16.456459] PKRU: 5555555 4 [ 16.456654] Call Trace : [ 16.456832] <TASK > [ 16.456989] ? __die+0x23/0x7 0 [ 16.457215] ? page_fault_oops+0x180/0x4c 0 [ 16.457508] ? __lock_acquire+0x3e6/0x249 0 [ 16.457801] ? exc_page_fault+0x68/0x20 0 [ 16.458080] ? asm_exc_page_fault+0x26/0x3 0 [ 16.458389] ? smc_listen_work+0xc02/0x159 0 [ 16.458689] ? smc_listen_work+0xc02/0x159 0 [ 16.458987] ? lock_is_held_type+0x8f/0x10 0 [ 16.459284] process_one_work+0x1ea/0x6d 0 [ 16.459570] worker_thread+0x1c3/0x38 0 [ 16.459839] ? __pfx_worker_thread+0x10/0x1 0 [ 16.460144] kthread+0xe0/0x11 0 [ 16.460372] ? __pfx_kthread+0x10/0x1 0 [ 16.460640] ret_from_fork+0x31/0x5 0 [ 16.460896] ? __pfx_kthread+0x10/0x1 0 [ 16.461166] ret_from_fork_asm+0x1a/0x3 0 [ 16.461453] </TASK > [ 16.461616] Modules linked in: bpf_testmod(OE) [last unloaded: bpf_testmod(OE) ] [ 16.462134] CR2: 000000000000003 0 [ 16.462380] ---[ end trace 0000000000000000 ]--- [ 16.462710] RIP: 0010:smc_listen_work+0xc02/0x1590
The direct cause of this issue is that after smc_listen_out_connected(), newclcsock->sk may be NULL since it will releases the smcsk. Therefore, if the application closes the socket immediately after accept, newclcsock->sk can be NULL. A possible execution order could be as follows:
smc_listen_work | userspace ----------------------------------------------------------------- lock_sock(sk) | smc_listen_out_connected() | | \- smc_listen_out | | | \- release_sock | | |- sk->sk_data_ready() | | fd = accept(); | close(fd); | \- socket->sk = NULL; /* newclcsock->sk is NULL now */ SMC_STAT_SERV_SUCC_INC(sock_net(newclcsock->sk))
Since smc_listen_out_connected() will not fail, simply swapping the order of the code can easily fix this issue.
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 |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Suse | — | Upgrade reiserfs-kmp-64kbUpgrade kernel-rt-extraUpgrade kernel-rt-vdsoUpgrade kselftests-kmp-azureUpgrade kernel-source-rtUpgrade dtb-broadcomUpgrade kernel-rt_debug-develUpgrade kernel-azure-develUpgrade kernel-obs-qaUpgrade kernel-macrosUpgrade kernel-rt-livepatch-develUpgrade kernel-azureUpgrade kernel-devel-azureUpgrade kernel-kvmsmallUpgrade kernel-debug-vdsoUpgrade dlm-kmp-64kbUpgrade dtb-sprdUpgrade kernel-64kbUpgrade kernel-debugUpgrade dtb-hisiliconUpgrade dtb-apmUpgrade cluster-md-kmp-rtUpgrade dtb-marvellUpgrade dtb-amdUpgrade dtb-alteraUpgrade dtb-allwinnerUpgrade kernel-kvmsmall-develUpgrade dtb-amazonUpgrade kernel-default-livepatchUpgrade dtb-socionextUpgrade dtb-mediatekUpgrade kernel-rt-livepatchUpgrade dtb-freescaleUpgrade kernel-default-optionalUpgrade kernel-default-develUpgrade kernel-azure-extraUpgrade dtb-caviumUpgrade kernel-source-azureUpgrade ocfs2-kmp-defaultUpgrade ocfs2-kmp-azureUpgrade kernel-zfcpdumpUpgrade kernel-symsUpgrade kernel-rt_debugUpgrade kernel-docsUpgrade kernel-64kb-develUpgrade dtb-renesasUpgrade dlm-kmp-defaultUpgrade reiserfs-kmp-defaultUpgrade kernel-develUpgrade kernel-default-baseUpgrade kernel-64kb-extraUpgrade kernel-rt-develUpgrade kernel-64kb-optionalUpgrade gfs2-kmp-defaultUpgrade gfs2-kmp-azureUpgrade dtb-armUpgrade dtb-lgUpgrade kernel-default-livepatch-develUpgrade kernel-debug-develUpgrade gfs2-kmp-64kbUpgrade dtb-xilinxUpgrade kselftests-kmp-rtUpgrade cluster-md-kmp-azureUpgrade dtb-appleUpgrade reiserfs-kmp-rtUpgrade ocfs2-kmp-rtUpgrade kernel-defaultUpgrade kernel-azure-optionalUpgrade dlm-kmp-rtUpgrade kernel-devel-rtUpgrade kernel-obs-buildUpgrade reiserfs-kmp-azureUpgrade dtb-exynosUpgrade dtb-rockchipUpgrade dtb-amlogicUpgrade kernel-sourceUpgrade kernel-default-extraUpgrade kernel-rt_debug-vdsoUpgrade kernel-source-vanillaUpgrade kernel-docs-htmlUpgrade kernel-kvmsmall-vdsoUpgrade kernel-syms-rtUpgrade kselftests-kmp-defaultUpgrade dlm-kmp-azureUpgrade kernel-default-vdsoUpgrade gfs2-kmp-rtUpgrade cluster-md-kmp-64kbUpgrade cluster-md-kmp-defaultUpgrade kernel-rt-optionalUpgrade dtb-qcomUpgrade kernel-default-base-rebuildUpgrade kernel-rtUpgrade kernel-azure-vdsoUpgrade kselftests-kmp-64kbUpgrade kernel-syms-azureUpgrade dtb-nvidiaUpgrade ocfs2-kmp-64kb | Dec 5, 2025 | Oct 15, 2025 |
| Ubuntu | — | Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-aws-64k-6.8Upgrade linux-image-6.8.0-1043-gke-64kUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-1047-raspiUpgrade linux-image-6.8.0-1047-gcpUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-6.8.0-1030-gkeopUpgrade linux-image-fips-6.8Upgrade linux-image-6.8.0-1046-nvidiaUpgrade linux-image-nvidia-64kUpgrade linux-image-realtime-6.8.1Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-azure-fipsUpgrade linux-image-6.8.1-1041-realtimeUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.0-2037-raspi-realtimeUpgrade linux-image-gcpUpgrade linux-image-xilinxUpgrade linux-image-6.8.0-1047-gcp-fipsUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-gke-64k-6.8Upgrade linux-image-gke-64kUpgrade linux-image-kvmUpgrade linux-image-xilinx-6.8Upgrade linux-image-oracle-6.8Upgrade linux-image-gcp-6.8Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.8.0-1046-awsUpgrade linux-image-azureUpgrade linux-image-azure-fips-6.8Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-100-lowlatencyUpgrade linux-image-aws-64kUpgrade linux-image-aws-fips-6.8Upgrade linux-image-gkeUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-aws-lts-24.04Upgrade linux-image-oracle-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-oem-22.04bUpgrade linux-image-gcp-64kUpgrade linux-image-raspiUpgrade linux-image-raspi-6.8Upgrade linux-image-6.8.0-1044-ibmUpgrade linux-image-virtual-6.8Upgrade linux-image-6.8.0-1046-azure-fipsUpgrade linux-image-realtimeUpgrade linux-image-gke-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1043-oracle-64kUpgrade linux-image-oracleUpgrade linux-image-awsUpgrade linux-image-generic-64k-6.8Upgrade linux-image-6.8.0-1046-aws-fipsUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-virtualUpgrade linux-image-6.8.0-1046-nvidia-lowlatencyUpgrade linux-image-6.8.0-100-genericUpgrade linux-image-azure-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-1043-gkeUpgrade linux-image-6.8.0-100-lowlatency-64kUpgrade linux-image-6.8.0-100-generic-64kUpgrade linux-image-6.8.0-100-fipsUpgrade linux-image-oem-22.04aUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-1046-azureUpgrade linux-image-aws-fipsUpgrade linux-image-generic-lpaeUpgrade linux-image-aws-6.8Upgrade linux-image-intel-iotgUpgrade linux-image-ibm-classicUpgrade linux-image-6.8.0-1051-azureUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidiaUpgrade linux-image-gkeopUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-generic-64kUpgrade linux-image-6.8.0-1046-aws-64kUpgrade linux-image-6.8.0-1046-nvidia-64kUpgrade linux-image-gcp-fipsUpgrade linux-image-generic-6.8Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.8.0-1043-oracleUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-azure-lts-24.04Upgrade linux-image-ibm-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-oem-22.04Upgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-1023-xilinxUpgrade linux-image-6.8.0-1047-gcp-64kUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-6.8.0-1046-nvidia-lowlatency-64kUpgrade linux-image-genericUpgrade linux-image-fipsUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-ibm | Feb 12, 2026 | Sep 5, 2025 |
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