CVE-2026-89478

CVE-2026-89478

Critical · published September 12, 2026

CVSS v3.1
9.8
EPSS
1%
Percentile
43.0
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

sctp: drop a chunk if its transport was removed

sctp_rcv() resolves the transport once per packet and leaves it in

chunk->transport. The lookup reference, or the one sctp_add_backlog() takes

if the socket is owned by userspace, keeps it around until the chunk has

been processed.

An authenticated ASCONF DEL-IP can remove it in the meantime.

sctp_assoc_rm_peer() takes the transport out of the association and calls

sctp_transport_free(), which tags it dead and drops the reference the

association held. There is a window on both paths: the packet can sit on

the socket backlog, and on the direct path the lookup completes before

bh_lock_sock().

The DATA chunk in that packet puts the removed transport back into

asoc->peer.last_data_from. Once the packet is done that reference goes

away and the transport is freed by RCU, so the next delayed SACK carries

the pointer into the SACK chunk and sctp_outq_select_transport() reads the

freed transport's state.

Drop the chunk in sctp_inq_push(), next to the existing rcvr->dead check.

Both paths reach it with the association's socket lock held. The peer

retransmits it.

The record
Technical detail
CVSS v3.1
9.8 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00514 · 43.0th percentile
Published
2026-09-12T00:19Z
References (8)
EPSS history
Timeline
  • 13 SEP 03:23Z
    EPSS moved — → 0%
    epss
  • 11 SEP 19:43Z
    sctp: drop a chunk if its transport was removed
    cvelistv5