{"id":"CVE-2026-74588","revision":"76fa40891c4e4e74a2b5d5917b298961","records":[{"revision":"76fa40891c4e4e74a2b5d5917b298961","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-74588","aliases":[],"title":"sctp: keep chunk->transport in step with the list it is queued on","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nsctp: keep chunk->transport in step with the list it is queued on\n\n__sctp_outq_flush_rtx() moves a gap-acked chunk onto another transport's\ntransmitted list without updating chunk->transport:\n\n\tif (chunk->tsn_gap_acked) {\n\t\tlist_move_tail(&chunk->transmitted_list,\n\t\t\t       &transport->transmitted);\n\t\tcontinue;\n\t}\n\nThe chunk then sits on a live transport's list while chunk->transport still\nnames a different one.  If that transport is removed - sctp_assoc_rm_peer()\nfrom an ASCONF Delete-IP - sctp_transport_free() RCU-frees it and the chunk\nis left with a dangling pointer.  sctp_assoc_rm_peer() scrubs\npeer->transmitted and asoc->outqueue.out_chunk_list, but the chunk is on\nneither.\n\nThe pointer is not followed while tsn_gap_acked is set.  A SACK that\nreneges on the TSN clears the flag, and the next SACK reaches\n\n\ttchunk->transport->flight_size -= sctp_data_size(tchunk);\n\ninside the freed transport.  KASAN reports a slab-use-after-free read in\nsctp_check_transmitted(), freed from sctp_assoc_rm_peer().  Both the\nremoval and the SACKs come from the association peer.\n\nSet chunk->transport at the move.  The ordinary resend path needs nothing:\nit reaches its list_move_tail() only after sctp_packet_append_chunk()\nreturned SCTP_XMIT_OK, and __sctp_packet_append_chunk() has rebound the\nchunk by then.\n\nDiscovered by XBOW, triaged by Baul Lee <baul.lee@xbow.com>","state":0,"publishedAt":"2026-08-22T15:31:40.466+00:00","modifiedAt":"2026-10-16T19:05:59.01+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/sctp/outqueue.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"6575fb17230814b48b471727c8410c0aadff9274\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"6b9e2ea2057113f3393990ba646d2d97c719a80d\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"874a7c2b5e184f06134fdfde27e9ce9271bafe58\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"1adf929121e13e0b19200bb9fef715b918d483fe\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"e2e7c1de0e226ca1b7fea2de57a6c9bca408709b\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"2b3b5eec8b2c30ee237e3c31a6a38de9c39d804d\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"5ccf35ef0ed6059cdf8b1f4606a6584d5b67166b\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"9f2cf069a9a72a2d6b97ca8b4c70e714aac99749\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/sctp/outqueue.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"2.6.12\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"2.6.12\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.265\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.216\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.183\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.152\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.104\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.45\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.1.9\",\n                            \"lessThanOrEqual\": \"7.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","score":9.8,"severity":"CRITICAL"}],"references":["https://git.kernel.org/stable/c/6575fb17230814b48b471727c8410c0aadff9274","https://git.kernel.org/stable/c/6b9e2ea2057113f3393990ba646d2d97c719a80d","https://git.kernel.org/stable/c/874a7c2b5e184f06134fdfde27e9ce9271bafe58","https://git.kernel.org/stable/c/1adf929121e13e0b19200bb9fef715b918d483fe","https://git.kernel.org/stable/c/e2e7c1de0e226ca1b7fea2de57a6c9bca408709b","https://git.kernel.org/stable/c/2b3b5eec8b2c30ee237e3c31a6a38de9c39d804d","https://git.kernel.org/stable/c/5ccf35ef0ed6059cdf8b1f4606a6584d5b67166b","https://git.kernel.org/stable/c/9f2cf069a9a72a2d6b97ca8b4c70e714aac99749"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-74588","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-74588","identifiers":["CVE-2026-74588"]},"retained":false,"historicalAffected":[]}],"coverage":[]}