CVE-2026-68315

sctp: validate stream count in sctp_process_strreset_inreq()

HIGH 7.5

At a glance

Source
NVD
EPSS
EPSS 0.51 % · percentile 44 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Received

Description

In the Linux kernel, the following vulnerability has been resolved: sctp: validate stream count in sctp_process_strreset_inreq() When processing a RESET_IN_REQUEST from a peer, sctp_process_strreset_inreq() derives the stream count from the parameter length but does not check whether the resulting RESET_OUT_REQUEST would exceed SCTP_MAX_CHUNK_LEN. The OUT request header (sctp_strreset_outreq, 16 bytes) is 8 bytes larger than the IN request header (sctp_strreset_inreq, 8 bytes). Generally, the IP payload is bounded to 65535 bytes, so the stream list cannot be large enough to trigger the overflow. However, on interfaces with MTU > 65535 (e.g., loopback with IPv6 jumbograms), a stream list that fits within the incoming IN parameter can cause a __u16 overflow in sctp_make_strreset_req() when computing the OUT request size, leading to an undersized skb allocation and a kernel BUG: net/core/skbuff.c:207 skb_panic net/core/skbuff.c:2625 skb_put net/sctp/sm_make_chunk.c:1535 sctp_addto_chunk net/sctp/sm_make_chunk.c:3695 sctp_make_strreset_req net/sctp/stream.c:655 sctp_process_strreset_inreq The local setsockopt path validates the generated reset request size. However, for an incoming-only reset, it accounts for the smaller IN request even though the peer must generate an OUT request with the same stream list. Such a request cannot be completed successfully by the peer. Reject peer IN requests whose corresponding OUT request would exceed SCTP_MAX_CHUNK_LEN. Also tighten the local check so it does not send an IN request that would require an oversized OUT request from the peer.

Weaknesses (CWE)

  • CWE-190 — Integer Overflow or Wraparound

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.5CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HLinux
CVSS 3.1HIGH 7.5CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)

European references

CERT-FR advisories

Affected products

ProductVersions
Linux · Linuxaffected 7f9d68ac944e24ee5f9ac8d059ca00b1c1d34137 < 61327d8e7cfb0259d527be17202630f556213249 ; affected 7f9d68ac944e24ee5f9ac8d059ca00b1c1d34137 < 7cf7439948e3bf639119119922c88ec190874ca3 ; affected 7f9d68ac944e24ee5f9ac8d059ca00b1c1d34137 < 60c47dea5d320d2fc706e9aad1db38a04df0a056 ; affected 7f9d68ac944e24ee5f9ac8d059ca00b1c1d34137 < b255d8cd6cc68045ae9eecbac3b3c14e1f176c9b ; affected 7f9d68ac944e24ee5f9ac8d059ca00b1c1d34137 < 6f0e39d180cd7cced647381b6fa14fd83d261047 ; affected 7f9d68ac944e24ee5f9ac8d059ca00b1c1d34137 < 1a10fe1aa9c01f41b389a31906a77d538637c9d9
Linux · Linuxaffected 4.11 ; unaffected 0 < 4.11 ; unaffected 5.10.265 ≤ 5.10.* ; unaffected 5.15.216 ≤ 5.15.* ; unaffected 6.1.183 ≤ 6.1.* ; unaffected 6.6.148 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD