Skip to main content
← All vulnerabilities
CVE-2026-63971

sctp: fix race between sctp_wait_for_connect and peeloff

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.93, and 2 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

In the Linux kernel, the following vulnerability has been resolved: sctp: fix race between sctp_wait_for_connect and peeloff sctp_wait_for_connect() drops and re-acquires the socket lock while waiting for the association to reach ESTABLISHED state. During this window, another thread can peeloff the association to a new socket via getsockopt(SCTP_SOCKOPT_PEELOFF), changing asoc->base.sk. After re-acquiring the old socket lock, sctp_wait_for_connect() returns success without noticing the migration — the caller then accesses the association under the wrong lock in sctp_datamsg_from_user(). Add the same sk != asoc->base.sk check that sctp_wait_for_sndbuf() already has, returning an error if the association was migrated while we slept.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • Linux Linux

    From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in 0e0d5bc76fd4267a71334fcc8f1a5fbcf997845d; From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in bcfeac79af740735ace44008b4a11b8e5add20f5; From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in 8e9b56051d24540cfbf39194618708c4a7633549; From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in 634a9af8a26a84d8b0d7b3b643204b344b42d9fb; From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in 7d2038d4b80166f7bead8d07eba3b97405816c21; From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in 68667ee4c7dadf7f63167234e2a1af09b3f7874e; From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in 6140cfa721451fa6e18e134e709703c2bf34d0fb; From 668c9beb9020d5834ee9e43c208190a07d2b1928 · fixed in f14fe6395a8b3d961a61e138ad7b36ba3626dd4e

  • Linux Linux

    4.16

  • KernelLinux

    From 4.16.0 · fixed in 5.10.259; From 5.11.0 · fixed in 5.15.210; From 5.16.0 · fixed in 6.1.176; From 6.2.0 · fixed in 6.6.143; From 6.7.0 · fixed in 6.12.93; From 6.13.0 · fixed in 6.18.35; From 6.19.0 · fixed in 7.0.12

References 8

git.kernel.org