{"id":"CVE-2026-99128","aliases":[],"title":"sctp: validate chunk length in the inqueue parser","titleSource":"Linux","descriptionSource":"Linux","products":[{"vendor":"Linux","name":"Linux","platforms":[],"versions":[{"version":"bbd0d59809f923ea2b540cbd781b32110e249f6e","status":"affected","lessThan":"40507f59f230dcf60ae13cb48d34f8c6e9f40659","versionType":"git"},{"version":"bbd0d59809f923ea2b540cbd781b32110e249f6e","status":"affected","lessThan":"9ac57e4c62e93c287b36080e5da3645690549990","versionType":"git"},{"version":"bbd0d59809f923ea2b540cbd781b32110e249f6e","status":"affected","lessThan":"6cfc1b90cb86f4aabc69fb8e30128e07e2cdfa3a","versionType":"git"}],"defaultStatus":"unaffected","source":"Linux","url":"https://www.cve.org/CVERecord?id=CVE-2026-99128"},{"vendor":"Linux","name":"Linux","platforms":[],"versions":[{"version":"2.6.24","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.24","versionType":"semver"},{"version":"6.18.59","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.13","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"defaultStatus":"affected","source":"Linux","url":"https://www.cve.org/CVERecord?id=CVE-2026-99128"}],"remediation":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\nsctp: validate chunk length in the inqueue parser\n\nSCTP chunks always include a four-byte generic header, but\nsctp_inq_pop() currently accepts shorter declared lengths. A zero-length\nchunk leaves chunk_end at the current header.\n\nWhen ASCONF is covered by the association's SCTP-AUTH policy,\nsctp_assoc_bh_rcv() can continue before the state machine performs its\nnormal chunk-length check. sctp_inq_pop() then returns the same malformed\nchunk repeatedly and the receive softirq can lock up.\n\nA remote SCTP peer can trigger this after establishing an association on\na kernel built with CONFIG_IP_SCTP and configured with\nnet.sctp.addip_enable=1 and net.sctp.auth_enable=1. The reproducer did\nnot require application credentials, a shared SCTP AUTH key, or\nnet.sctp.addip_noauth_enable=1.\n\nOn commit f967455fb2a5 (\"seg6: reset IP6CB after IPv6 decapsulation\"),\none zero-length ASCONF caused repeated\nwatchdog soft-lockup reports in a two-vCPU KVM guest. All 3 pre-trigger\nhealth probes succeeded, while 36 of 37 post-trigger probes failed. With\nthis change, all 37 post-trigger probes succeeded and no equivalent\nsoft-lockup signature appeared.\n\nReject chunks shorter than the generic SCTP header at the shared inqueue\nparser boundary. Mark the packet for discard before either caller can\ncontinue processing it, while preserving the four-byte generic minimum.\nDeclared-length 1 through 4 controls and kernel-generated ASCONF traffic\nremained healthy. The patched sctp_hello selftest passed for IPv4 and\nIPv6.\n\nThe complete private reproducer and validation evidence are available\ndirectly to maintainers on request.","severity":"unknown","score":null,"published":"2026-10-28T10:34:42.229Z","modified":"2026-10-28T10:34:42.229Z","withdrawn":false,"knownExploited":false,"affected":[],"references":["https://git.kernel.org/stable/c/40507f59f230dcf60ae13cb48d34f8c6e9f40659","https://git.kernel.org/stable/c/9ac57e4c62e93c287b36080e5da3645690549990","https://git.kernel.org/stable/c/6cfc1b90cb86f4aabc69fb8e30128e07e2cdfa3a"],"sources":[{"name":"CVE","id":"CVE-2026-99128","modified":"2026-10-28T10:34:42.229Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-99128"}],"assessments":[],"sourceAffected":[],"kev":{"status":"not-listed","checkedAt":"2026-10-29T02:25:31.980Z"},"coverage":[{"source":"NVD","status":"not-checked"},{"source":"GHSA","status":"not-checked"},{"source":"EUVD","status":"not-checked"},{"source":"EPSS","status":"not-checked"}],"evidence":[]}