Description
In the Linux kernel, the following vulnerability has been resolved:
smc: Fix various oops due to inet_sock type confusion.
syzbot reported weird splats [0][1] in cipso_v4_sock_setattr() while
freeing inet_sk(sk)->inet_opt.
The address was freed multiple times even though it was read-only memory.
cipso_v4_sock_setattr() did nothing wrong, and the root cause was type
confusion.
The cited commit made it possible to create smc_sock as an INET socket.
The issue is that struct smc_sock does not have struct inet_sock as the
first member but hijacks AF_INET and AF_INET6 sk_family, which confuses
various places.
In this case, inet_sock.inet_opt was actually smc_sock.clcsk_data_ready(),
which is an address of a function in the text segment.
$ pahole -C inet_sock vmlinux
struct inet_sock {
...
struct ip_options_rcu * inet_opt; /* 784 8 */
$ pahole -C smc_sock vmlinux
struct smc_sock {
...
void (*clcsk_data_ready)(struct sock *); /* 784 8 */
The same issue for another field was reported before. [2][3]
At that time, an ugly hack was suggested [4], but it makes both INET
and SMC code error-prone and hard to change.
Also, yet another variant was fixed by a hacky commit 98d4435efcbf3
("net/smc: prevent NULL pointer dereference in txopt_get").
Instead of papering over the root cause by such hacks, we should not
allow non-INET socket to reuse the INET infra.
Let's add inet_sock as the first member of smc_sock.
[0]:
kvfree_call_rcu(): Double-freed call. rcu_head 000000006921da73
WARNING: CPU: 0 PID: 6718 at mm/slab_common.c:1956 kvfree_call_rcu+0x94/0x3f0 mm/slab_common.c:1955
Modules linked in:
CPU: 0 UID: 0 PID: 6718 Comm: syz.0.17 Tainted: G W 6.16.0-rc4-syzkaller-g7482bb149b9f #0 PREEMPT
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : kvfree_call_rcu+0x94/0x3f0 mm/slab_common.c:1955
lr : kvfree_call_rcu+0x94/0x3f0 mm/slab_common.c:1955
sp : ffff8000a03a7730
x29: ffff8000a03a7730 x28: 00000000fffffff5 x27: 1fffe000184823d3
x26: dfff800000000000 x25: ffff0000c2411e9e x24: ffff0000dd88da00
x23: ffff8000891ac9a0 x22: 00000000ffffffea x21: ffff8000891ac9a0
x20: ffff8000891ac9a0 x19: ffff80008afc2480 x18: 00000000ffffffff
x17: 0000000000000000 x16: ffff80008ae642c8 x15: ffff700011ede14c
x14: 1ffff00011ede14c x13: 0000000000000004 x12: ffffffffffffffff
x11: ffff700011ede14c x10: 0000000000ff0100 x9 : 5fa3c1ffaf0ff000
x8 : 5fa3c1ffaf0ff000 x7 : 0000000000000001 x6 : 0000000000000001
x5 : ffff8000a03a7078 x4 : ffff80008f766c20 x3 : ffff80008054d360
x2 : 0000000000000000 x1 : 0000000000000201 x0 : 0000000000000000
Call trace:
kvfree_call_rcu+0x94/0x3f0 mm/slab_common.c:1955 (P)
cipso_v4_sock_setattr+0x2f0/0x3f4 net/ipv4/cipso_ipv4.c:1914
netlbl_sock_setattr+0x240/0x334 net/netlabel/netlabel_kapi.c:1000
smack_netlbl_add+0xa8/0x158 security/smack/smack_lsm.c:2581
smack_inode_setsecurity+0x378/0x430 security/smack/smack_lsm.c:2912
security_inode_setsecurity+0x118/0x3c0 security/security.c:2706
__vfs_setxattr_noperm+0x174/0x5c4 fs/xattr.c:251
__vfs_setxattr_locked+0x1ec/0x218 fs/xattr.c:295
vfs_setxattr+0x158/0x2ac fs/xattr.c:321
do_setxattr fs/xattr.c:636 [inline]
file_setxattr+0x1b8/0x294 fs/xattr.c:646
path_setxattrat+0x2ac/0x320 fs/xattr.c:711
__do_sys_fsetxattr fs/xattr.c:761 [inline]
__se_sys_fsetxattr fs/xattr.c:758 [inline]
__arm64_sys_fsetxattr+0xc0/0xdc fs/xattr.c:758
__invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49
el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132
do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151
el0_svc+0x58/0x180 arch/arm64/kernel/entry-common.c:879
el0t_64_sync_handler+0x84/0x12c arch/arm64/kernel/entry-common.c:898
el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
[
---truncated---
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Linux | Linux | 6.11 | 6.12.40 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | linux | 6.16.3-1 | — |
| Debian 13 | linux | 6.12.41-1 | DSA-5975-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 25.10 | linux-azure-fde | No fix yet | — |
| Ubuntu 24.04 LTS | linux-aws-6.14 +2 | 6.14.0-1017.17~24.04.1 | USN-7934-1, USN-7879-3 |
| Ubuntu 24.04 LTS | linux-gcp-6.14 | 6.14.0-1020.21~24.04.1 | USN-7879-4 |
| Ubuntu 24.04 LTS | linux-hwe-6.14 | 6.14.0-36.36~24.04.1 | USN-7879-1 |
| Ubuntu 24.04 LTS | linux-oem-6.14 | 6.14.0-1016.16 | USN-7880-1 |
| Ubuntu 24.04 LTS | linux-riscv +10 | No fix yet | — |
| Ubuntu 24.04 LTS | linux-riscv-6.14 | 6.14.0-36.36.1~24.04.1 | — |
| Ubuntu 22.04 LTS | linux-riscv +32 | No fix yet | — |
| Ubuntu 20.04 LTS | linux-gke +28 | No fix yet | — |
| Ubuntu 18.04 LTS | linux-gcp +14 | No fix yet | — |
Show 2 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 16.04 LTS | linux-hwe-edge | No fix yet | — |
| Ubuntu Pro Realtime 24.04 LTS | linux-realtime-6.14 | 6.14.0-1016.16~24.04.1 | USN-7879-2 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP7 | kernel-64kb +5 | 6.4.0-150700.53.11.1 | SUSE-SU-2025:02997-1 |
| SLES 15 SP7 | kernel-azure +2 | 6.4.0-150700.20.11.1 | SUSE-SU-2025:03011-1 |
| SLES 15 SP7 | kernel-default-base | 6.4.0-150700.53.11.1.150700.17.9.4 | SUSE-SU-2025:02997-1 |
| SLES 15 SP7 | kernel-docs | 6.4.0-150700.53.11.3 | SUSE-SU-2025:02997-1 |
Show 5 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES for SAP 16.0 | kernel-64kb +7 | 6.12.0-160000.6.1 | SUSE-SU-2025:21139-1 |
| SLES for SAP 16.0 | kernel-default-base | 6.12.0-160000.6.1.160000.2.4 | SUSE-SU-2025:21139-1 |
| SLES 16.0 | kernel-64kb +7 | 6.12.0-160000.6.1 | SUSE-SU-2025:21179-1, SUSE-SU-2025:21139-1 |
| SLES 16.0 | kernel-default-base | 6.12.0-160000.6.1.160000.2.4 | SUSE-SU-2025:21139-1 |
| SLE Micro 6.2 | kernel-default-base | 6.12.0-160000.6.1.160000.2.4 | SUSE-SU-2025:21074-1 |
| SLE Micro 6.2 | kernel-rt +5 | 6.12.0-160000.6.1 | SUSE-SU-2026:20560-1, SUSE-SU-2025:21074-1 |
| SLE Live Patching 15 SP7 | kernel-default | 6.4.0-150700.53.11.1 | SUSE-SU-2025:02997-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7-RT_Update_3 | 1-150700.1.5.1 | SUSE-SU-2025:02853-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7_Update_3 | 1-150700.15.3.4 | SUSE-SU-2025:02997-1 |
| SUSE Real Time Module 15 SP7 | kernel-rt +2 | 6.4.0-150700.7.13.1 | SUSE-SU-2025:02853-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Leap 16.0 | kernel-default-base | 6.12.0-160000.6.1.160000.2.4 | openSUSE-SU-2025:20081-1 |
| openSUSE Leap 16.0 | kernel-rt +10 | 6.12.0-160000.6.1 | openSUSE-SU-2025:20081-1 |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2023 | kernel-livepatch-6.12.40-63.114 | 1:1.0-0.amzn2023 | ALAS2023-2025-1145 |
| Amazon Linux 2023 | perf6.12 +14 | 1:6.12.40-63.114.amzn2023 | ALAS2023-2025-1145 |
Advisories 17
- USN-7934-1 linux-azure, linux-azure-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7879-4 linux-gcp-6.14, linux-raspi vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7879-3 linux-aws-6.14, linux-oracle-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7880-1 linux-oem-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7879-2 linux-realtime-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- WID-SEC-2025-1665 Linux Kernel: Mehrere Schwachstellen BSI CERT-Bund (WID) · Oct 7, 2026
- SUSE-SU-2026:20560-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Jul 9, 2026
- USN-7879-1 linux, linux-aws, linux-gcp, linux-hwe-6.14, linux-oracle, linux-realtime vulnerabilities Ubuntu Security Notices (USN) · Jun 3, 2026
- openSUSE-SU-2025:20081-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:21179-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:21139-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:21074-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02997-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:03011-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- DSA-5975-1 linux - security update Debian Security (DSA / DLA) · Mar 9, 2026
- SUSE-SU-2025:02853-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- ALAS2023-2025-1145 Important: kernel6.12 security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · Oct 2, 2025