{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2024-50085",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2024-10-21T19:36:19.942Z",
        "datePublished": "2024-10-29T00:50:28.269Z",
        "dateUpdated": "2026-08-05T11:41:30.621Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T11:41:30.621Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmptcp: pm: fix UaF read in mptcp_pm_nl_rm_addr_or_subflow\n\nSyzkaller reported this splat:\n\n  ==================================================================\n  BUG: KASAN: slab-use-after-free in mptcp_pm_nl_rm_addr_or_subflow+0xb44/0xcc0 net/mptcp/pm_netlink.c:881\n  Read of size 4 at addr ffff8880569ac858 by task syz.1.2799/14662\n\n  CPU: 0 UID: 0 PID: 14662 Comm: syz.1.2799 Not tainted 6.12.0-rc2-syzkaller-00307-g36c254515dc6 #0\n  Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014\n  Call Trace:\n   <TASK>\n   __dump_stack lib/dump_stack.c:94 [inline]\n   dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120\n   print_address_description mm/kasan/report.c:377 [inline]\n   print_report+0xc3/0x620 mm/kasan/report.c:488\n   kasan_report+0xd9/0x110 mm/kasan/report.c:601\n   mptcp_pm_nl_rm_addr_or_subflow+0xb44/0xcc0 net/mptcp/pm_netlink.c:881\n   mptcp_pm_nl_rm_subflow_received net/mptcp/pm_netlink.c:914 [inline]\n   mptcp_nl_remove_id_zero_address+0x305/0x4a0 net/mptcp/pm_netlink.c:1572\n   mptcp_pm_nl_del_addr_doit+0x5c9/0x770 net/mptcp/pm_netlink.c:1603\n   genl_family_rcv_msg_doit+0x202/0x2f0 net/netlink/genetlink.c:1115\n   genl_family_rcv_msg net/netlink/genetlink.c:1195 [inline]\n   genl_rcv_msg+0x565/0x800 net/netlink/genetlink.c:1210\n   netlink_rcv_skb+0x165/0x410 net/netlink/af_netlink.c:2551\n   genl_rcv+0x28/0x40 net/netlink/genetlink.c:1219\n   netlink_unicast_kernel net/netlink/af_netlink.c:1331 [inline]\n   netlink_unicast+0x53c/0x7f0 net/netlink/af_netlink.c:1357\n   netlink_sendmsg+0x8b8/0xd70 net/netlink/af_netlink.c:1901\n   sock_sendmsg_nosec net/socket.c:729 [inline]\n   __sock_sendmsg net/socket.c:744 [inline]\n   ____sys_sendmsg+0x9ae/0xb40 net/socket.c:2607\n   ___sys_sendmsg+0x135/0x1e0 net/socket.c:2661\n   __sys_sendmsg+0x117/0x1f0 net/socket.c:2690\n   do_syscall_32_irqs_on arch/x86/entry/common.c:165 [inline]\n   __do_fast_syscall_32+0x73/0x120 arch/x86/entry/common.c:386\n   do_fast_syscall_32+0x32/0x80 arch/x86/entry/common.c:411\n   entry_SYSENTER_compat_after_hwframe+0x84/0x8e\n  RIP: 0023:0xf7fe4579\n  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 <5d> 5a 59 c3 90 90 90 90 8d b4 26 00 00 00 00 8d b4 26 00 00 00 00\n  RSP: 002b:00000000f574556c EFLAGS: 00000296 ORIG_RAX: 0000000000000172\n  RAX: ffffffffffffffda RBX: 000000000000000b RCX: 0000000020000140\n  RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000\n  RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000\n  R10: 0000000000000000 R11: 0000000000000296 R12: 0000000000000000\n  R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000\n   </TASK>\n\n  Allocated by task 5387:\n   kasan_save_stack+0x33/0x60 mm/kasan/common.c:47\n   kasan_save_track+0x14/0x30 mm/kasan/common.c:68\n   poison_kmalloc_redzone mm/kasan/common.c:377 [inline]\n   __kasan_kmalloc+0xaa/0xb0 mm/kasan/common.c:394\n   kmalloc_noprof include/linux/slab.h:878 [inline]\n   kzalloc_noprof include/linux/slab.h:1014 [inline]\n   subflow_create_ctx+0x87/0x2a0 net/mptcp/subflow.c:1803\n   subflow_ulp_init+0xc3/0x4d0 net/mptcp/subflow.c:1956\n   __tcp_set_ulp net/ipv4/tcp_ulp.c:146 [inline]\n   tcp_set_ulp+0x326/0x7f0 net/ipv4/tcp_ulp.c:167\n   mptcp_subflow_create_socket+0x4ae/0x10a0 net/mptcp/subflow.c:1764\n   __mptcp_subflow_connect+0x3cc/0x1490 net/mptcp/subflow.c:1592\n   mptcp_pm_create_subflow_or_signal_addr+0xbda/0x23a0 net/mptcp/pm_netlink.c:642\n   mptcp_pm_nl_fully_established net/mptcp/pm_netlink.c:650 [inline]\n   mptcp_pm_nl_work+0x3a1/0x4f0 net/mptcp/pm_netlink.c:943\n   mptcp_worker+0x15a/0x1240 net/mptcp/protocol.c:2777\n   process_one_work+0x958/0x1b30 kernel/workqueue.c:3229\n   process_scheduled_works kernel/workqueue.c:3310 [inline]\n   worker_thread+0x6c8/0xf00 kernel/workqueue.c:3391\n   kthread+0x2c1/0x3a0 kernel/kthread.c:389\n   ret_from_fork+0x45/0x80 arch/x86/ke\n---truncated---"
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 9.8,
                        "baseSeverity": "CRITICAL"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:N - The identical buggy line is reached with no local access at all when a remote MPTCP peer sends an RM_ADDR TCP option: `mptcp_incoming_options()` → `mptcp_pm_rm_addr_received()` → `mptcp_pm_nl_work()` → `mptcp_pm_nl_rm_addr_received()` → `mptcp_pm_nl_rm_addr_or_subflow()`. MPTCP is enabled by default (`pernet->mptcp_enabled = 1`) and used by internet-facing services, so the remote peer of any `IPPROTO_MPTCP` connection can drive the close-then-use sequence.\nAC:L - The attacker controls both halves: it chooses which subflows exist (MP_JOIN) and when they are torn down (RM_ADDR ids, or repeated DEL_ADDR netlink calls), and it can drive the kfree_rcu drain by inducing memory pressure — the exact `kfree_rcu_shrink_scan()` path in the syzbot report. The sequence can be retried without limit and requires no memory layout the attacker cannot influence.\nPR:N - On the RM_ADDR path a remote peer needs no credentials whatsoever — subflow teardown is ordinary protocol traffic processed before any application-layer authentication. Even the local netlink path only carries `GENL_UNS_ADMIN_PERM`, i.e. CAP_NET_ADMIN in the owning user namespace, obtainable by any unprivileged user via `unshare -Urn`.\nUI:N - The path manager processes RM_ADDR and DEL_ADDR autonomously in the mptcp worker and netlink doit handler; no victim action such as opening a file, mounting a filesystem, or clicking anything is involved.\nS:U - The freed object and the corrupted state are both kernel-heap/MPTCP path-manager structures within the same security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - This is a KASAN-confirmed slab-use-after-free read of freed kmalloc-512 memory, and per kernel UAF scoring the attacker gains control over the freed object's contents through heap spraying of that widely-used cache. The stale contents then steer kernel control flow, and the resulting `pm.accept_addr` behaviour change is remotely observable, turning freed heap state into an attacker-visible oracle.\nI:H - Once the freed `mptcp_subflow_context` is reallocated with attacker-shaped data, the attacker chooses the value of `removed`, which directly drives `--msk->pm.add_addr_accepted` and `WRITE_ONCE(msk->pm.accept_addr, true)` — corrupting path-manager accounting and bypassing the administrator's configured `add_addr_accept_max`, so the host is forced to open additional subflows to attacker-announced addresses. Use-after-free access to a reallocated slab object is scored as high integrity impact.\nA:H - Use-after-free access is a crash vector: on KASAN or hardened builds it panics outright, and forcing `removed` true when `msk->pm.add_addr_accepted == 0` trips `WARN_ON_ONCE()`, which is fatal on the many production and Android kernels running `panic_on_warn`. The sequence is repeatable at will by the remote peer."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "net/mptcp/pm_netlink.c"
                    ],
                    "versions": [
                        {
                            "version": "35b31f5549ede4070566b949781e83495906b43d",
                            "lessThan": "35301636439138b821f1f6169bd00d348ebd388a",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "85b866e4c4e63a1d7afb58f1e24273caad03d0b7",
                            "lessThan": "da3343bc0839b180fd9af9c27fa456d8231409f9",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "d20bf2c96d7ffd171299b32f562f70e5bf5dc608",
                            "lessThan": "7b2e478abab0b3a33515433a6af563aebba773c1",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "1c1f721375989579e46741f59523e39ec9b2a9bd",
                            "lessThan": "a8c36ea4ef9a350816f6556c5c5b63810f84b538",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "1c1f721375989579e46741f59523e39ec9b2a9bd",
                            "lessThan": "7decd1f5904a489d3ccdcf131972f94645681689",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "2060f1efab370b496c4903b840844ecaff324c3c",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "5.15.167",
                            "lessThan": "5.15.169",
                            "status": "affected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.1.107",
                            "lessThan": "6.1.114",
                            "status": "affected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.6.48",
                            "lessThan": "6.6.58",
                            "status": "affected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.10.7",
                            "lessThan": "6.11",
                            "status": "affected",
                            "versionType": "semver"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "net/mptcp/pm_netlink.c"
                    ],
                    "versions": [
                        {
                            "version": "6.11",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "6.11",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.15.169",
                            "lessThanOrEqual": "5.15.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.1.114",
                            "lessThanOrEqual": "6.1.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.6.58",
                            "lessThanOrEqual": "6.6.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.11.5",
                            "lessThanOrEqual": "6.11.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.12",
                            "lessThanOrEqual": "*",
                            "status": "unaffected",
                            "versionType": "original_commit_for_fix"
                        }
                    ]
                }
            ],
            "cpeApplicability": [
                {
                    "nodes": [
                        {
                            "operator": "OR",
                            "negate": false,
                            "cpeMatch": [
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.15.167",
                                    "versionEndExcluding": "5.15.169"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.1.107",
                                    "versionEndExcluding": "6.1.114"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.6.48",
                                    "versionEndExcluding": "6.6.58"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.11",
                                    "versionEndExcluding": "6.11.5"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.11",
                                    "versionEndExcluding": "6.12"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.10.7"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/35301636439138b821f1f6169bd00d348ebd388a"
                },
                {
                    "url": "https://git.kernel.org/stable/c/da3343bc0839b180fd9af9c27fa456d8231409f9"
                },
                {
                    "url": "https://git.kernel.org/stable/c/7b2e478abab0b3a33515433a6af563aebba773c1"
                },
                {
                    "url": "https://git.kernel.org/stable/c/a8c36ea4ef9a350816f6556c5c5b63810f84b538"
                },
                {
                    "url": "https://git.kernel.org/stable/c/7decd1f5904a489d3ccdcf131972f94645681689"
                }
            ],
            "title": "mptcp: pm: fix UaF read in mptcp_pm_nl_rm_addr_or_subflow",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        },
        "adp": [
            {
                "metrics": [
                    {
                        "cvssV3_1": {
                            "scope": "UNCHANGED",
                            "version": "3.1",
                            "baseScore": 7.8,
                            "attackVector": "LOCAL",
                            "baseSeverity": "HIGH",
                            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                            "integrityImpact": "HIGH",
                            "userInteraction": "NONE",
                            "attackComplexity": "LOW",
                            "availabilityImpact": "HIGH",
                            "privilegesRequired": "LOW",
                            "confidentialityImpact": "HIGH"
                        }
                    },
                    {
                        "other": {
                            "type": "ssvc",
                            "content": {
                                "id": "CVE-2024-50085",
                                "role": "CISA Coordinator",
                                "options": [
                                    {
                                        "Exploitation": "none"
                                    },
                                    {
                                        "Automatable": "no"
                                    },
                                    {
                                        "Technical Impact": "total"
                                    }
                                ],
                                "version": "2.0.3",
                                "timestamp": "2024-12-11T14:26:02.743200Z"
                            }
                        }
                    }
                ],
                "problemTypes": [
                    {
                        "descriptions": [
                            {
                                "lang": "en",
                                "type": "CWE",
                                "cweId": "CWE-416",
                                "description": "CWE-416 Use After Free"
                            }
                        ]
                    }
                ],
                "title": "CISA ADP Vulnrichment",
                "providerMetadata": {
                    "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
                    "shortName": "CISA-ADP",
                    "dateUpdated": "2024-12-11T14:58:34.434Z"
                }
            },
            {
                "title": "CVE Program Container",
                "references": [
                    {
                        "url": "https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html"
                    }
                ],
                "providerMetadata": {
                    "orgId": "af854a3a-2127-422b-91ae-364da2661108",
                    "shortName": "CVE",
                    "dateUpdated": "2025-11-03T22:25:17.336Z"
                }
            }
        ]
    }
}