{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-89476","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-09-11T19:38:34.711Z","datePublished":"2026-09-11T19:43:33.193Z","dateUpdated":"2026-09-14T12:00:12.813Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-09-14T12:00:12.813Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nsctp: fix stream->outcnt underflow on duplicate RECONF responses\n\nA cached RECONF chunk may contain more than one request parameter.  A\nduplicate response can therefore find and process the same ADD_OUT request\nagain while another parameter is still outstanding, rolling back outcnt\ntwice and possibly underflowing it.\n\nTrack outstanding request types as bits and clear each bit after its first\nresponse.  Later responses for the same request are then ignored."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","baseScore":7.5,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:N - A remote SCTP peer’s RECONF chunk is processed by sctp_rcv() then sctp_sf_do_reconf() and sctp_process_strreset_resp() on an established association; kernel guidance treats in-kernel SCTP packet processing as Network.\nAC:L - sctp_verify_reconf() allows two RESET_RESPONSE parameters in one chunk, so a peer can send two DENIED responses for the same ADD_OUT request_seq and reliably double-subtract outcnt; RECONF/add-streams being enabled is a deployment condition, not an uncontrolled race.\nPR:N - The SCTP handshake and RECONF path require no credentials; AUTH is off by default and RECONF is not AUTH-gated, so any unauthenticated peer of a reachable association can send the triggering chunk.\nUI:N - No victim user action is required; duplicate RECONF responses are processed automatically in ESTABLISHED/SHUTDOWN_PENDING once the association has an outstanding multi-parameter ADD_STREAMS request.\nS:U - The oops and stream-count corruption stay inside the host kernel SCTP stack and do not cross a VM, IOMMU, or other security-authority boundary.\nC:N - SCTP_SO() is genradix_ptr() and returns NULL past preallocated stream slots, so the underflow produces a NULL dereference rather than an out-of-bounds read or kernel memory disclosure.\nI:N - The double rollback corrupts the stream count then NULL-dereferences; ext pointers are cleared after kfree, so this is not a use-after-free write primitive or control-flow hijack.\nA:H - A wrapped outcnt makes sctp_stream_free(), sendmsg, and other walkers dereference NULL SCTP_SO() slots, causing a kernel oops; extra-shrinking live streams also fails in-flight data, and the peer can abort to force teardown."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/sctp/structs.h","net/sctp/stream.c"],"versions":[{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"041f7df5a929d3e7435dd8387e8ea17f2d412b7d","status":"affected","versionType":"git"},{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"59f61c39cb99ee1737bd742a20094fe5653389bb","status":"affected","versionType":"git"},{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"793519e343867ee9a3e84f6cac07f81f2aec7b5d","status":"affected","versionType":"git"},{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"092acd3c55a4077b00489064615d8d2d898daf91","status":"affected","versionType":"git"},{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"2d867663c563e8009257b9edf9c8ec75d9bbf19a","status":"affected","versionType":"git"},{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"d02a5794c3deedcb8476d017fcee2b7aaedab2e1","status":"affected","versionType":"git"},{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"8320cbd81bc21a1ca6ebdf70ad610ebc5ef1bd68","status":"affected","versionType":"git"},{"version":"11ae76e67a179f25ae8f772d62a7ddf717b1cdf3","lessThan":"3faf13aff243ca9f78d08b1a2956ef5a6fc77b6e","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/sctp/structs.h","net/sctp/stream.c"],"versions":[{"version":"4.12","status":"affected"},{"version":"0","lessThan":"4.12","status":"unaffected","versionType":"semver"},{"version":"5.10.270","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.221","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.188","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.157","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.109","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.50","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.2.4","lessThanOrEqual":"7.2.*","status":"unaffected","versionType":"semver"},{"version":"7.3-rc1","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":"4.12","versionEndExcluding":"5.10.270"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"5.15.221"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.1.188"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.6.157"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.12.109"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.18.50"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"7.2.4"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"7.3-rc1"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/041f7df5a929d3e7435dd8387e8ea17f2d412b7d"},{"url":"https://git.kernel.org/stable/c/59f61c39cb99ee1737bd742a20094fe5653389bb"},{"url":"https://git.kernel.org/stable/c/793519e343867ee9a3e84f6cac07f81f2aec7b5d"},{"url":"https://git.kernel.org/stable/c/092acd3c55a4077b00489064615d8d2d898daf91"},{"url":"https://git.kernel.org/stable/c/2d867663c563e8009257b9edf9c8ec75d9bbf19a"},{"url":"https://git.kernel.org/stable/c/d02a5794c3deedcb8476d017fcee2b7aaedab2e1"},{"url":"https://git.kernel.org/stable/c/8320cbd81bc21a1ca6ebdf70ad610ebc5ef1bd68"},{"url":"https://git.kernel.org/stable/c/3faf13aff243ca9f78d08b1a2956ef5a6fc77b6e"}],"title":"sctp: fix stream->outcnt underflow on duplicate RECONF responses","x_generator":{"engine":"bippy-1.2.0"}}}}