CVE-2024-50085

Severity CVSS v4.0:
Pending analysis
Type:
CWE-416 Use After Free
Publication date:
29/10/2024
Last modified:
03/11/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> mptcp: pm: fix UaF read in mptcp_pm_nl_rm_addr_or_subflow<br /> <br /> Syzkaller reported this splat:<br /> <br /> ==================================================================<br /> BUG: KASAN: slab-use-after-free in mptcp_pm_nl_rm_addr_or_subflow+0xb44/0xcc0 net/mptcp/pm_netlink.c:881<br /> Read of size 4 at addr ffff8880569ac858 by task syz.1.2799/14662<br /> <br /> CPU: 0 UID: 0 PID: 14662 Comm: syz.1.2799 Not tainted 6.12.0-rc2-syzkaller-00307-g36c254515dc6 #0<br /> Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014<br /> Call Trace:<br /> <br /> __dump_stack lib/dump_stack.c:94 [inline]<br /> dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120<br /> print_address_description mm/kasan/report.c:377 [inline]<br /> print_report+0xc3/0x620 mm/kasan/report.c:488<br /> kasan_report+0xd9/0x110 mm/kasan/report.c:601<br /> mptcp_pm_nl_rm_addr_or_subflow+0xb44/0xcc0 net/mptcp/pm_netlink.c:881<br /> mptcp_pm_nl_rm_subflow_received net/mptcp/pm_netlink.c:914 [inline]<br /> mptcp_nl_remove_id_zero_address+0x305/0x4a0 net/mptcp/pm_netlink.c:1572<br /> mptcp_pm_nl_del_addr_doit+0x5c9/0x770 net/mptcp/pm_netlink.c:1603<br /> genl_family_rcv_msg_doit+0x202/0x2f0 net/netlink/genetlink.c:1115<br /> genl_family_rcv_msg net/netlink/genetlink.c:1195 [inline]<br /> genl_rcv_msg+0x565/0x800 net/netlink/genetlink.c:1210<br /> netlink_rcv_skb+0x165/0x410 net/netlink/af_netlink.c:2551<br /> genl_rcv+0x28/0x40 net/netlink/genetlink.c:1219<br /> netlink_unicast_kernel net/netlink/af_netlink.c:1331 [inline]<br /> netlink_unicast+0x53c/0x7f0 net/netlink/af_netlink.c:1357<br /> netlink_sendmsg+0x8b8/0xd70 net/netlink/af_netlink.c:1901<br /> sock_sendmsg_nosec net/socket.c:729 [inline]<br /> __sock_sendmsg net/socket.c:744 [inline]<br /> ____sys_sendmsg+0x9ae/0xb40 net/socket.c:2607<br /> ___sys_sendmsg+0x135/0x1e0 net/socket.c:2661<br /> __sys_sendmsg+0x117/0x1f0 net/socket.c:2690<br /> do_syscall_32_irqs_on arch/x86/entry/common.c:165 [inline]<br /> __do_fast_syscall_32+0x73/0x120 arch/x86/entry/common.c:386<br /> do_fast_syscall_32+0x32/0x80 arch/x86/entry/common.c:411<br /> entry_SYSENTER_compat_after_hwframe+0x84/0x8e<br /> RIP: 0023:0xf7fe4579<br /> Code: b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 00 00 00 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 5a 59 c3 90 90 90 90 8d b4 26 00 00 00 00 8d b4 26 00 00 00 00<br /> RSP: 002b:00000000f574556c EFLAGS: 00000296 ORIG_RAX: 0000000000000172<br /> RAX: ffffffffffffffda RBX: 000000000000000b RCX: 0000000020000140<br /> RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000<br /> RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000<br /> R10: 0000000000000000 R11: 0000000000000296 R12: 0000000000000000<br /> R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000<br /> <br /> <br /> Allocated by task 5387:<br /> kasan_save_stack+0x33/0x60 mm/kasan/common.c:47<br /> kasan_save_track+0x14/0x30 mm/kasan/common.c:68<br /> poison_kmalloc_redzone mm/kasan/common.c:377 [inline]<br /> __kasan_kmalloc+0xaa/0xb0 mm/kasan/common.c:394<br /> kmalloc_noprof include/linux/slab.h:878 [inline]<br /> kzalloc_noprof include/linux/slab.h:1014 [inline]<br /> subflow_create_ctx+0x87/0x2a0 net/mptcp/subflow.c:1803<br /> subflow_ulp_init+0xc3/0x4d0 net/mptcp/subflow.c:1956<br /> __tcp_set_ulp net/ipv4/tcp_ulp.c:146 [inline]<br /> tcp_set_ulp+0x326/0x7f0 net/ipv4/tcp_ulp.c:167<br /> mptcp_subflow_create_socket+0x4ae/0x10a0 net/mptcp/subflow.c:1764<br /> __mptcp_subflow_connect+0x3cc/0x1490 net/mptcp/subflow.c:1592<br /> mptcp_pm_create_subflow_or_signal_addr+0xbda/0x23a0 net/mptcp/pm_netlink.c:642<br /> mptcp_pm_nl_fully_established net/mptcp/pm_netlink.c:650 [inline]<br /> mptcp_pm_nl_work+0x3a1/0x4f0 net/mptcp/pm_netlink.c:943<br /> mptcp_worker+0x15a/0x1240 net/mptcp/protocol.c:2777<br /> process_one_work+0x958/0x1b30 kernel/workqueue.c:3229<br /> process_scheduled_works kernel/workqueue.c:3310 [inline]<br /> worker_thread+0x6c8/0xf00 kernel/workqueue.c:3391<br /> kthread+0x2c1/0x3a0 kernel/kthread.c:389<br /> ret_from_fork+0x45/0x80 arch/x86/ke<br /> ---truncated---

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.15.167 (including) 5.15.169 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.1.107 (including) 6.1.114 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.6.48 (including) 6.6.58 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.10.7 (including) 6.11 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.11 (including) 6.11.5 (excluding)
cpe:2.3:o:linux:linux_kernel:6.12:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.12:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.12:rc3:*:*:*:*:*:*