tcp: defer shutdown(SEND_SHUTDOWN) for TCP_SYN_RECV sockets

Summary

CVECVE-2024-36905
StatePUBLISHED
AssignerLinux
Source PriorityCVE Program / NVD first with legacy fallback
Published2024-05-30 16:15:14 UTC
Updated2026-05-12 12:16:49 UTC
DescriptionIn the Linux kernel, the following vulnerability has been resolved: tcp: defer shutdown(SEND_SHUTDOWN) for TCP_SYN_RECV sockets TCP_SYN_RECV state is really special, it is only used by cross-syn connections, mostly used by fuzzers. In the following crash [1], syzbot managed to trigger a divide by zero in tcp_rcv_space_adjust() A socket makes the following state transitions, without ever calling tcp_init_transfer(), meaning tcp_init_buffer_space() is also not called. TCP_CLOSE connect() TCP_SYN_SENT TCP_SYN_RECV shutdown() -> tcp_shutdown(sk, SEND_SHUTDOWN) TCP_FIN_WAIT1 To fix this issue, change tcp_shutdown() to not perform a TCP_SYN_RECV -> TCP_FIN_WAIT1 transition, which makes no sense anyway. When tcp_rcv_state_process() later changes socket state from TCP_SYN_RECV to TCP_ESTABLISH, then look at sk->sk_shutdown to finally enter TCP_FIN_WAIT1 state, and send a FIN packet from a sane socket state. This means tcp_send_fin() can now be called from BH context, and must use GFP_ATOMIC allocations. [1] divide error: 0000 [#1] PREEMPT SMP KASAN NOPTI CPU: 1 PID: 5084 Comm: syz-executor358 Not tainted 6.9.0-rc6-syzkaller-00022-g98369dccd2f8 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 RIP: 0010:tcp_rcv_space_adjust+0x2df/0x890 net/ipv4/tcp_input.c:767 Code: e3 04 4c 01 eb 48 8b 44 24 38 0f b6 04 10 84 c0 49 89 d5 0f 85 a5 03 00 00 41 8b 8e c8 09 00 00 89 e8 29 c8 48 0f af c3 31 d2 <48> f7 f1 48 8d 1c 43 49 8d 96 76 08 00 00 48 89 d0 48 c1 e8 03 48 RSP: 0018:ffffc900031ef3f0 EFLAGS: 00010246 RAX: 0c677a10441f8f42 RBX: 000000004fb95e7e RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 0000000027d4b11f R08: ffffffff89e535a4 R09: 1ffffffff25e6ab7 R10: dffffc0000000000 R11: ffffffff8135e920 R12: ffff88802a9f8d30 R13: dffffc0000000000 R14: ffff88802a9f8d00 R15: 1ffff1100553f2da FS: 00005555775c0380(0000) GS:ffff8880b9500000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f1155bf2304 CR3: 000000002b9f2000 CR4: 0000000000350ef0 Call Trace: <TASK> tcp_recvmsg_locked+0x106d/0x25a0 net/ipv4/tcp.c:2513 tcp_recvmsg+0x25d/0x920 net/ipv4/tcp.c:2578 inet6_recvmsg+0x16a/0x730 net/ipv6/af_inet6.c:680 sock_recvmsg_nosec net/socket.c:1046 [inline] sock_recvmsg+0x109/0x280 net/socket.c:1068 ____sys_recvmsg+0x1db/0x470 net/socket.c:2803 ___sys_recvmsg net/socket.c:2845 [inline] do_recvmmsg+0x474/0xae0 net/socket.c:2939 __sys_recvmmsg net/socket.c:3018 [inline] __do_sys_recvmmsg net/socket.c:3041 [inline] __se_sys_recvmmsg net/socket.c:3034 [inline] __x64_sys_recvmmsg+0x199/0x250 net/socket.c:3034 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf5/0x240 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7faeb6363db9 Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 c1 17 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007ffcc1997168 EFLAGS: 00000246 ORIG_RAX: 000000000000012b RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007faeb6363db9 RDX: 0000000000000001 RSI: 0000000020000bc0 RDI: 0000000000000005 RBP: 0000000000000000 R08: 0000000000000000 R09: 000000000000001c R10: 0000000000000122 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000001

Risk And Classification

Primary CVSS: v3.1 5.5 MEDIUM from [email protected]

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Problem Types: CWE-369

CVSS v3.1 Breakdown

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

NVD Known Affected Configurations (CPE 2.3)

TypeVendorProductVersionUpdateEditionLanguage
Operating System Linux Linux Kernel All All All All

Vendor Declared Affected Products

SourceVendorProductVersionPlatforms
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 34e41a031fd7523bf1cd00a2adca2370aebea270 git Not specified
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 ed5e279b69e007ce6c0fe82a5a534c1b19783214 git Not specified
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 413c33b9f3bc36fdf719690a78824db9f88a9485 git Not specified
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 2552c9d9440f8e7a2ed0660911ff00f25b90a0a4 git Not specified
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 3fe4ef0568a48369b1891395d13ac593b1ba41b1 git Not specified
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 f47d0d32fa94e815fdd78b8b88684873e67939f4 git Not specified
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 cbf232ba11bc86a5281b4f00e1151349ef4d45cf git Not specified
CNA Linux Linux affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 94062790aedb505bdda209b10bea47b294d6394f git Not specified
CNA Linux Linux affected 2.6.12 Not specified
CNA Linux Linux unaffected 2.6.12 semver Not specified
CNA Linux Linux unaffected 4.19.314 4.19.* semver Not specified
CNA Linux Linux unaffected 5.4.276 5.4.* semver Not specified
CNA Linux Linux unaffected 5.10.217 5.10.* semver Not specified
CNA Linux Linux unaffected 5.15.159 5.15.* semver Not specified
CNA Linux Linux unaffected 6.1.91 6.1.* semver Not specified
CNA Linux Linux unaffected 6.6.31 6.6.* semver Not specified
CNA Linux Linux unaffected 6.8.10 6.8.* semver Not specified
CNA Linux Linux unaffected 6.9 * original_commit_for_fix Not specified
ADP Linux Linux Kernel affected 1da177e4c3f4 34e41a031fd7 custom Not specified
ADP Linux Linux Kernel affected 1da177e4c3f4 ed5e279b69e0 custom Not specified
ADP Linux Linux Kernel affected 1da177e4c3f4 413c33b9f3bc custom Not specified
ADP Linux Linux Kernel affected 1da177e4c3f 2552c9d9440f custom Not specified
ADP Linux Linux Kernel affected 1da177e4c3f4 3fe4ef0568a4 custom Not specified
ADP Linux Linux Kernel affected 1da177e4c3f4 f47d0d32fa94 custom Not specified
ADP Linux Linux Kernel affected 1da177e4c3f4 cbf232ba11bc custom Not specified
ADP Linux Linux Kernel affected 1da177e4c3f4 94062790aedb custom Not specified
ADP Linux Linux Kernel unaffected 4.19.314 4.20 custom Not specified
ADP Linux Linux Kernel unaffected 5.10.217 5.11 custom Not specified
ADP Linux Linux Kernel unaffected 5.15.159 5.16 custom Not specified
ADP Linux Linux Kernel unaffected 6.1.91 6.2 custom Not specified
ADP Linux Linux Kernel unaffected 6.6.31 6.7 custom Not specified
ADP Linux Linux Kernel unaffected 6.9 Not specified
ADP Linux Linux Kernel unaffected 2.6.12 custom Not specified
ADP Linux Linux Kernel affected 2.6.12 Not specified
ADP Linux Linux Kernel unaffected 5.4.276 5.5 custom Not specified
ADP Linux Linux Kernel unaffected 6.8.10 6.9 custom Not specified
ADP Siemens RUGGEDCOM RST2428P affected V3.1 custom Not specified
ADP Siemens SCALANCE XC-300/XR-300/XC-400/XR-500WG/XR-500 Family unaffected * custom Not specified
ADP Siemens SCALANCE XCM-/XRM-/XCH-/XRH-300 Family affected V3.1 custom Not specified
ADP Siemens SIMATIC S7-1500 TM MFP - GNU/Linux Subsystem affected * custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified

References

ReferenceSourceLinkTags
cert-portal.siemens.com/productcert/html/ssa-398330.html 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e cert-portal.siemens.com
www.openwall.com/lists/oss-security/2024/11/12/4 134c704f-9b21-4f2e-91b3-4a467353bcc0 www.openwall.com Mailing List
www.openwall.com/lists/oss-security/2024/10/29/1 af854a3a-2127-422b-91ae-364da2661108 www.openwall.com Mailing List
www.openwall.com/lists/oss-security/2024/11/12/5 af854a3a-2127-422b-91ae-364da2661108 www.openwall.com Mailing List
git.kernel.org/stable/c/3fe4ef0568a48369b1891395d13ac593b1ba41b1 af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
www.openwall.com/lists/oss-security/2024/11/12/4 af854a3a-2127-422b-91ae-364da2661108 www.openwall.com Mailing List
git.kernel.org/stable/c/f47d0d32fa94e815fdd78b8b88684873e67939f4 af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
git.kernel.org/stable/c/94062790aedb505bdda209b10bea47b294d6394f af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
www.openwall.com/lists/oss-security/2024/11/12/6 af854a3a-2127-422b-91ae-364da2661108 www.openwall.com Mailing List
git.kernel.org/stable/c/2552c9d9440f8e7a2ed0660911ff00f25b90a0a4 af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
www.openwall.com/lists/oss-security/2024/10/29/1 416baaa9-dc9f-4396-8d5f-8c081fb06d67 www.openwall.com Mailing List
cert-portal.siemens.com/productcert/html/ssa-265688.html 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e cert-portal.siemens.com
www.openwall.com/lists/oss-security/2024/10/30/1 af854a3a-2127-422b-91ae-364da2661108 www.openwall.com Mailing List
access.redhat.com/security/cve/cve-2024-36905 134c704f-9b21-4f2e-91b3-4a467353bcc0 access.redhat.com Third Party Advisory
git.kernel.org/stable/c/ed5e279b69e007ce6c0fe82a5a534c1b19783214 af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
lists.debian.org/debian-lts-announce/2024/06/msg00019.html af854a3a-2127-422b-91ae-364da2661108 lists.debian.org Third Party Advisory
cert-portal.siemens.com/productcert/html/ssa-613116.html 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e cert-portal.siemens.com
git.kernel.org/stable/c/cbf232ba11bc86a5281b4f00e1151349ef4d45cf af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
git.kernel.org/stable/c/413c33b9f3bc36fdf719690a78824db9f88a9485 af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
lists.debian.org/debian-lts-announce/2024/06/msg00020.html af854a3a-2127-422b-91ae-364da2661108 lists.debian.org Third Party Advisory
security.netapp.com/advisory/ntap-20240905-0005 af854a3a-2127-422b-91ae-364da2661108 security.netapp.com Third Party Advisory
git.kernel.org/stable/c/34e41a031fd7523bf1cd00a2adca2370aebea270 af854a3a-2127-422b-91ae-364da2661108 git.kernel.org Patch
alas.aws.amazon.com/cve/html/CVE-2024-36905.html 134c704f-9b21-4f2e-91b3-4a467353bcc0 alas.aws.amazon.com Third Party Advisory
github.com/cisagov/vulnrichment/issues/130 134c704f-9b21-4f2e-91b3-4a467353bcc0 github.com Issue Tracking
CVE Program record CVE.ORG www.cve.org canonical
NVD vulnerability detail NVD nvd.nist.gov canonical, analysis

© CVE.report 2026

Use of this information constitutes acceptance for use in an AS IS condition. There are NO warranties, implied or otherwise, with regard to this information or its use. Any use of this information is at the user's risk. It is the responsibility of user to evaluate the accuracy, completeness or usefulness of any information, opinion, advice or other content. EACH USER WILL BE SOLELY RESPONSIBLE FOR ANY consequences of his or her direct or indirect use of this web site. ALL WARRANTIES OF ANY KIND ARE EXPRESSLY DISCLAIMED. This site will NOT BE LIABLE FOR ANY DIRECT, INDIRECT or any other kind of loss.

CVE, CWE, and OVAL are registred trademarks of The MITRE Corporation and the authoritative source of CVE content is MITRE's CVE web site. This site includes MITRE data granted under the following license.

Free CVE JSON API cve.report/api

CVE.report and Source URL Uptime Status status.cve.report