Skip to content
OpenAdvisories
High · 7.8 CVE-2022-49775 EUVD-2025-13006GHSA-52wf-qx53-m2m5

tcp: cdg: allow tcp_cdg_release() to be called multiple times

Published May 1, 2025 · Updated Aug 5, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.15 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.4 Package: linux-aws-5.8 Package: linux-aws-6.2 Package: linux-aws-6.5 Package: linux-aws-fips Package: linux-aws-hwe Package: linux-azure Package: linux-azure-4.15 Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.15 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.4 Package: linux-azure-5.8 Package: linux-azure-6.2 Package: linux-azure-6.5 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.2 Package: linux-azure-fips Package: linux-bluefield Package: linux-fips Package: linux-gcp Package: linux-gcp-4.15 Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.15 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.4 Package: linux-gcp-5.8 Package: linux-gcp-6.2 Package: linux-gcp-6.5 Package: linux-gcp-fips Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop Package: linux-gkeop-5.15 Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.15 Package: linux-hwe-5.19 Package: linux-hwe-5.4 Package: linux-hwe-5.8 Package: linux-hwe-6.2 Package: linux-hwe-6.5 Package: linux-hwe-edge Package: linux-ibm Package: linux-ibm-5.4 Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-intel-iotg Package: linux-intel-iotg-5.15 Package: linux-iot Package: linux-kvm Package: linux-lowlatency Package: linux-lowlatency-hwe-5.15 Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.2 Package: linux-lowlatency-hwe-6.5 Package: linux-lts-xenial Package: linux-nvidia Package: linux-nvidia-6.2 Package: linux-nvidia-6.5 Package: linux-nvidia-tegra-5.15 Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oem-6.5 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.15 Package: linux-oracle-5.3 Package: linux-oracle-5.4 Package: linux-oracle-5.8 Package: linux-oracle-6.5 Package: linux-raspi Package: linux-raspi-5.4 Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.15 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-riscv-6.5 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-starfive-6.5 Package: linux-vmware Package: linux-xilinx-zynqmp Platform: Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

In the Linux kernel, the following vulnerability has been resolved:

tcp: cdg: allow tcp_cdg_release() to be called multiple times

Apparently, mptcp is able to call tcp_disconnect() on an already
disconnected flow. This is generally fine, unless current congestion
control is CDG, because it might trigger a double-free [1]

Instead of fixing MPTCP, and future bugs, we can make tcp_disconnect()
more resilient.

[1]
BUG: KASAN: double-free in slab_free mm/slub.c:3539 [inline]
BUG: KASAN: double-free in kfree+0xe2/0x580 mm/slub.c:4567

CPU: 0 PID: 3645 Comm: kworker/0:7 Not tainted 6.0.0-syzkaller-02734-g0326074ff465 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022
Workqueue: events mptcp_worker
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
print_address_description mm/kasan/report.c:317 [inline]
print_report.cold+0x2ba/0x719 mm/kasan/report.c:433
kasan_report_invalid_free+0x81/0x190 mm/kasan/report.c:462
____kasan_slab_free+0x18b/0x1c0 mm/kasan/common.c:356
kasan_slab_free include/linux/kasan.h:200 [inline]
slab_free_hook mm/slub.c:1759 [inline]
slab_free_freelist_hook+0x8b/0x1c0 mm/slub.c:1785
slab_free mm/slub.c:3539 [inline]
kfree+0xe2/0x580 mm/slub.c:4567
tcp_disconnect+0x980/0x1e20 net/ipv4/tcp.c:3145
__mptcp_close_ssk+0x5ca/0x7e0 net/mptcp/protocol.c:2327
mptcp_do_fastclose net/mptcp/protocol.c:2592 [inline]
mptcp_worker+0x78c/0xff0 net/mptcp/protocol.c:2627
process_one_work+0x991/0x1610 kernel/workqueue.c:2289
worker_thread+0x665/0x1080 kernel/workqueue.c:2436
kthread+0x2e4/0x3a0 kernel/kthread.c:376
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
</TASK>

Allocated by task 3671:
kasan_save_stack+0x1e/0x40 mm/kasan/common.c:38
kasan_set_track mm/kasan/common.c:45 [inline]
set_alloc_info mm/kasan/common.c:437 [inline]
____kasan_kmalloc mm/kasan/common.c:516 [inline]
____kasan_kmalloc mm/kasan/common.c:475 [inline]
__kasan_kmalloc+0xa9/0xd0 mm/kasan/common.c:525
kmalloc_array include/linux/slab.h:640 [inline]
kcalloc include/linux/slab.h:671 [inline]
tcp_cdg_init+0x10d/0x170 net/ipv4/tcp_cdg.c:380
tcp_init_congestion_control+0xab/0x550 net/ipv4/tcp_cong.c:193
tcp_reinit_congestion_control net/ipv4/tcp_cong.c:217 [inline]
tcp_set_congestion_control+0x96c/0xaa0 net/ipv4/tcp_cong.c:391
do_tcp_setsockopt+0x505/0x2320 net/ipv4/tcp.c:3513
tcp_setsockopt+0xd4/0x100 net/ipv4/tcp.c:3801
mptcp_setsockopt+0x35f/0x2570 net/mptcp/sockopt.c:844
__sys_setsockopt+0x2d6/0x690 net/socket.c:2252
__do_sys_setsockopt net/socket.c:2263 [inline]
__se_sys_setsockopt net/socket.c:2260 [inline]
__x64_sys_setsockopt+0xba/0x150 net/socket.c:2260
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x63/0xcd

Freed by task 16:
kasan_save_stack+0x1e/0x40 mm/kasan/common.c:38
kasan_set_track+0x21/0x30 mm/kasan/common.c:45
kasan_set_free_info+0x20/0x30 mm/kasan/generic.c:370
____kasan_slab_free mm/kasan/common.c:367 [inline]
____kasan_slab_free+0x166/0x1c0 mm/kasan/common.c:329
kasan_slab_free include/linux/kasan.h:200 [inline]
slab_free_hook mm/slub.c:1759 [inline]
slab_free_freelist_hook+0x8b/0x1c0 mm/slub.c:1785
slab_free mm/slub.c:3539 [inline]
kfree+0xe2/0x580 mm/slub.c:4567
tcp_cleanup_congestion_control+0x70/0x120 net/ipv4/tcp_cong.c:226
tcp_v4_destroy_sock+0xdd/0x750 net/ipv4/tcp_ipv4.c:2254
tcp_v6_destroy_sock+0x11/0x20 net/ipv6/tcp_ipv6.c:1969
inet_csk_destroy_sock+0x196/0x440 net/ipv4/inet_connection_sock.c:1157
tcp_done+0x23b/0x340 net/ipv4/tcp.c:4649
tcp_rcv_state_process+0x40e7/0x4990 net/ipv4/tcp_input.c:6624
tcp_v6_do_rcv+0x3fc/0x13c0 net/ipv6/tcp_ipv6.c:1525
tcp_v6_rcv+0x2e8e/0x3830 net/ipv6/tcp_ipv6.c:1759
ip6_protocol_deliver_rcu+0x2db/0x1950 net/ipv6/ip6_input.c:439
ip6_input_finish+0x14c/0x2c0 net/ipv6/ip6_input.c:484
NF_HOOK include/linux/netfilter.h:302 [inline]
NF_HOOK include/linux/netfilter.h:296 [inline]
ip6_input+0x9c/0xd
---truncated---

Affected products

VendorProductAffectedFixed
Linux Linux 4.2 4.9.334

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.

ReleasePackageFixed inAdvisory
Debian 14 linux 6.0.10-1 —
Debian 13 linux 6.0.10-1 —
Debian 12 linux 6.0.10-1 —
ReleasePackageFixed inAdvisory
Ubuntu Nvidia-BlueField 22.04 LTS linux-bluefield 5.15.0-1014.16 —
Ubuntu 24.04 LTS linux-realtime +1 No fix yet —
Ubuntu 22.04 LTS linux +1 5.15.0-67.74 —
Ubuntu 22.04 LTS linux-aws 5.15.0-1031.35 —
Ubuntu 22.04 LTS linux-azure 5.15.0-1034.41 —
Ubuntu 22.04 LTS linux-azure-fde 5.15.0-1034.41.1 —
Ubuntu 22.04 LTS linux-gcp 5.15.0-1030.37 —
Ubuntu 22.04 LTS linux-gke 5.15.0-1028.33 —
Ubuntu 22.04 LTS linux-gkeop 5.15.0-1016.21 —
Ubuntu 22.04 LTS linux-ibm 5.15.0-1026.29 —
Ubuntu 22.04 LTS linux-intel-iotg 5.15.0-1026.31 —
Ubuntu 22.04 LTS linux-kvm 5.15.0-1029.34 —
Ubuntu 22.04 LTS linux-nvidia 5.15.0-1023.23 —
Ubuntu 22.04 LTS linux-oracle 5.15.0-1030.36 —
Ubuntu 22.04 LTS linux-raspi 5.15.0-1025.27 —
Ubuntu 22.04 LTS linux-riscv +31 No fix yet —
Ubuntu 20.04 LTS linux 5.4.0-144.161 —
Ubuntu 20.04 LTS linux-aws 5.4.0-1097.105 —
Ubuntu 20.04 LTS linux-aws-5.15 5.15.0-1031.35~20.04.1 —
Ubuntu 20.04 LTS linux-azure 5.4.0-1104.110 —
Ubuntu 20.04 LTS linux-azure-5.15 5.15.0-1034.41~20.04.1 —
Ubuntu 20.04 LTS linux-bluefield 5.4.0-1059.65 —
Ubuntu 20.04 LTS linux-gcp 5.4.0-1101.110 —
Ubuntu 20.04 LTS linux-gcp-5.15 5.15.0-1030.37~20.04.1 —
Ubuntu 20.04 LTS linux-gke +28 No fix yet —
Ubuntu 20.04 LTS linux-hwe-5.15 +1 5.15.0-67.74~20.04.1 —
Ubuntu 20.04 LTS linux-ibm 5.4.0-1045.50 —
Ubuntu 20.04 LTS linux-intel-iotg-5.15 5.15.0-1026.31~20.04.1 —
Ubuntu 20.04 LTS linux-iot 5.4.0-1013.15 —
Ubuntu 20.04 LTS linux-kvm 5.4.0-1087.93 —
Ubuntu 20.04 LTS linux-nvidia-tegra-5.15 5.15.0-1014.14~20.04.1 —
Ubuntu 20.04 LTS linux-oracle 5.4.0-1094.103 —
Ubuntu 20.04 LTS linux-oracle-5.15 5.15.0-1030.36~20.04.1 —
Ubuntu 20.04 LTS linux-raspi 5.4.0-1081.92 —
Ubuntu 20.04 LTS linux-riscv-5.15 5.15.0-1030.34~20.04.1 —
Ubuntu 20.04 LTS linux-xilinx-zynqmp 5.4.0-1022.26 —
Ubuntu 18.04 LTS linux 4.15.0-206.217 —
Ubuntu 18.04 LTS linux-aws 4.15.0-1151.164 —
Ubuntu 18.04 LTS linux-aws-5.4 5.4.0-1097.105~18.04.1 —
Ubuntu 18.04 LTS linux-azure-4.15 4.15.0-1162.177 —
Ubuntu 18.04 LTS linux-azure-5.4 5.4.0-1104.110~18.04.1 —
Ubuntu 18.04 LTS linux-gcp +14 No fix yet —
Ubuntu 18.04 LTS linux-gcp-4.15 4.15.0-1146.162 —
Ubuntu 18.04 LTS linux-gcp-5.4 5.4.0-1101.110~18.04.1 —
Ubuntu 18.04 LTS linux-hwe-5.4 5.4.0-144.161~18.04.1 —
Ubuntu 18.04 LTS linux-ibm-5.4 5.4.0-1045.50~18.04.1 —
Ubuntu 18.04 LTS linux-kvm 4.15.0-1136.141 —
Ubuntu 18.04 LTS linux-oracle 4.15.0-1115.126 —
Ubuntu 18.04 LTS linux-oracle-5.4 5.4.0-1094.103~18.04.1 —
Ubuntu 18.04 LTS linux-raspi-5.4 5.4.0-1081.92~18.04.1 —
Show 10 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Ubuntu Pro Realtime 22.04 LTS linux-intel-iot-realtime 5.15.0-1022.27 —
Ubuntu Pro Realtime 22.04 LTS linux-realtime 5.15.0-1033.36 —
Ubuntu Pro FIPS 20.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS 18.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS 16.04 LTS linux-fips No fix yet —
Ubuntu Pro FIPS-updates 20.04 LTS linux-aws-fips 5.4.0-1099.107+fips1 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-azure-fips 5.4.0-1104.110+fips1 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-fips 5.4.0-1073.82 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-gcp-fips 5.4.0-1101.110+fips1 —
Ubuntu Pro FIPS-updates 18.04 LTS linux-aws-fips 4.15.0-2090.96 —
Ubuntu Pro FIPS-updates 18.04 LTS linux-azure-fips 4.15.0-2071.77 —
Ubuntu Pro FIPS-updates 18.04 LTS linux-fips 4.15.0-1108.119 —
Ubuntu Pro FIPS-updates 18.04 LTS linux-gcp-fips 4.15.0-2055.60 —
Ubuntu Pro FIPS-updates 16.04 LTS linux-fips No fix yet —
Ubuntu Pro 16.04 LTS linux +2 No fix yet —
Ubuntu Pro 16.04 LTS linux-aws-hwe 4.15.0-1151.164~16.04.1 —
Ubuntu Pro 16.04 LTS linux-azure 4.15.0-1162.177~16.04.1 —
Ubuntu Pro 16.04 LTS linux-gcp 4.15.0-1146.162~16.04.1 —
Ubuntu Pro 16.04 LTS linux-hwe 4.15.0-206.217~16.04.1 —
Ubuntu Pro 16.04 LTS linux-oracle 4.15.0-1115.126~16.04.1 —
Ubuntu Pro 14.04 LTS linux-aws +1 No fix yet —
Ubuntu Pro 14.04 LTS linux-azure 4.15.0-1162.177~14.04.1 —
ReleasePackageFixed inAdvisory
SLES 15 SP5 kernel-64kb +6 5.14.21-150500.55.110.1 SUSE-SU-2025:02173-1
SLES 15 SP5 kernel-default-base 5.14.21-150500.55.110.1.150500.6.51.3 SUSE-SU-2025:02173-1
SLES 15 SP4 kernel-64kb +6 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SLES 15 SP4 kernel-default-base 5.14.21-150400.24.167.1.150400.24.84.1 SUSE-SU-2025:02262-1
SLES 15 SP3 kernel-64kb +7 5.3.18-150300.59.207.1 SUSE-SU-2025:01982-1
SLES 15 SP3 kernel-default-base 5.3.18-150300.59.207.1.150300.18.124.1 SUSE-SU-2025:01982-1
SLES 12 SP5 kernel-syms +2 4.12.14-122.261.1 SUSE-SU-2025:01983-1
Show 18 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 15 SP5 kernel-default-base 5.14.21-150500.55.110.1.150500.6.51.3 SUSE-SU-2025:02173-1
SLES for SAP 15 SP5 kernel-docs +4 5.14.21-150500.55.110.1 SUSE-SU-2025:02173-1
SLES for SAP 15 SP4 kernel-default-base 5.14.21-150400.24.167.1.150400.24.84.1 SUSE-SU-2025:02262-1
SLES for SAP 15 SP4 kernel-docs +4 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SLES for SAP 15 SP3 kernel-default-base 5.3.18-150300.59.207.1.150300.18.124.1 SUSE-SU-2025:01982-1
SLES for SAP 15 SP3 kernel-docs +5 5.3.18-150300.59.207.1 SUSE-SU-2025:01982-1
SLE Micro 5.5 kernel-default-base 5.14.21-150500.55.110.1.150500.6.51.3 SUSE-SU-2025:02173-1
SLE Micro 5.5 kernel-rt +1 5.14.21-150500.13.97.1 SUSE-SU-2025:01966-1
SLE Micro 5.5 kernel-source +1 5.14.21-150500.55.110.1 SUSE-SU-2025:02173-1
SLE Micro 5.4 kernel-default 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SLE Micro 5.4 kernel-default-base 5.14.21-150400.24.167.1.150400.24.84.1 SUSE-SU-2025:02262-1
SLE Micro 5.4 kernel-rt +1 5.14.21-150400.15.121.1 SUSE-SU-2025:01918-1
SLE Micro 5.3 kernel-default 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SLE Micro 5.3 kernel-default-base 5.14.21-150400.24.167.1.150400.24.84.1 SUSE-SU-2025:02262-1
SLE Micro 5.3 kernel-rt +1 5.14.21-150400.15.121.1 SUSE-SU-2025:01918-1
SLE Micro 5.2 kernel-default 5.3.18-150300.59.207.1 SUSE-SU-2025:01982-1
SLE Micro 5.2 kernel-default-base 5.3.18-150300.59.207.1.150300.18.124.1 SUSE-SU-2025:01982-1
SLE Micro 5.2 kernel-rt +1 5.3.18-150300.211.1 SUSE-SU-2025:01995-1
SLE Micro 5.1 kernel-default 5.3.18-150300.59.207.1 SUSE-SU-2025:01982-1
SLE Micro 5.1 kernel-default-base 5.3.18-150300.59.207.1.150300.18.124.1 SUSE-SU-2025:01982-1
SLE Micro 5.1 kernel-rt +1 5.3.18-150300.211.1 SUSE-SU-2025:01995-1
SLE Live Patching 15 SP5 kernel-default 5.14.21-150500.55.110.1 SUSE-SU-2025:02173-1
SLE Live Patching 15 SP5 kernel-livepatch-SLE15-SP5_Update_27 1-150500.11.7.1 SUSE-SU-2025:02173-1
SLE Live Patching 15 SP4 kernel-default 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SLE Live Patching 15 SP4 kernel-livepatch-SLE15-SP4_Update_41 1-150400.9.3.1 SUSE-SU-2025:02262-1
SLE Live Patching 15 SP3 kernel-default 5.3.18-150300.59.207.1 SUSE-SU-2025:01982-1
SLE Live Patching 15 SP3 kernel-livepatch-SLE15-SP3_Update_58 1-150300.7.3.1 SUSE-SU-2025:01982-1
SLE Live Patching 12 SP5 kernel-default 4.12.14-122.261.1 SUSE-SU-2025:01983-1
SLE Live Patching 12 SP5 kgraft-patch-SLE12-SP5_Update_69 1-8.3.1 SUSE-SU-2025:01983-1
SLE HPC 15 SP5 kernel-64kb +5 5.14.21-150500.55.110.1 SUSE-SU-2025:02173-1
SLE HPC 15 SP5 kernel-default-base 5.14.21-150500.55.110.1.150500.6.51.3 SUSE-SU-2025:02173-1
SLE HPC 15 SP4 kernel-64kb +5 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SLE HPC 15 SP4 kernel-default-base 5.14.21-150400.24.167.1.150400.24.84.1 SUSE-SU-2025:02262-1
SLE HPC 15 SP3 kernel-64kb +6 5.3.18-150300.59.207.1 SUSE-SU-2025:01982-1
SLE HPC 15 SP3 kernel-default-base 5.3.18-150300.59.207.1.150300.18.124.1 SUSE-SU-2025:01982-1
SUSE Manager Server 4.3 kernel-default-base 5.14.21-150400.24.167.1.150400.24.84.1 SUSE-SU-2025:02262-1
SUSE Manager Server 4.3 kernel-syms +3 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SUSE Manager Proxy 4.3 kernel-default-base 5.14.21-150400.24.167.1.150400.24.84.1 SUSE-SU-2025:02262-1
SUSE Manager Proxy 4.3 kernel-syms +2 5.14.21-150400.24.167.1 SUSE-SU-2025:02262-1
SUSE Enterprise Storage 7.1 kernel-64kb +6 5.3.18-150300.59.207.1 SUSE-SU-2025:01982-1
SUSE Enterprise Storage 7.1 kernel-default-base 5.3.18-150300.59.207.1.150300.18.124.1 SUSE-SU-2025:01982-1

Advisories 7

References