CVE-2026-74587

sctp: fix use-after-free of cached ASCONF chunk

State
Published
Severity
9.8 Critical
Published
Aug 22, 2026
Updated
Oct 16, 2026
Reserved
Aug 15, 2026

Read the record on cve.org

Description

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

sctp: fix use-after-free of cached ASCONF chunk

addip_last_asconf caches the outstanding outbound ASCONF chunk. The normal ASCONF-ACK completion path releases the chunk and clears the pointer.

However, sctp_asconf_queue_teardown() releases the cached chunk without clearing addip_last_asconf. During peer restart handling, sctp_sf_do_dupcook_a() queues SCTP_CMD_PURGE_ASCONF_QUEUE, which invokes sctp_asconf_queue_teardown() while the association remains alive and leaves the pointer dangling.

A delayed authenticated ASCONF-ACK can then reach sctp_sf_do_asconf_ack(), which accesses the stale chunk and passes it to sctp_process_asconf_ack(), causing a use-after-free and a second release.

Clearing the pointer exposes a race with T4 expiry. Peer restart handling queues the timer stop before the purge, but SCTP_CMD_TIMER_STOP uses timer_delete(), which does not wait for a callback already running on another CPU. Such a callback can reach sctp_sf_t4_timer_expire() after the purge and dereference NULL.

Clear addip_last_asconf after releasing the cached chunk, and make sctp_sf_t4_timer_expire() consume a stale T4 expiry if no outstanding ASCONF remains.

Scores

CVSSScoreVectorSource
3.19.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before 10459b03e2d9ee12435e96f587de4d4cacdbf435Affected
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before e1bb114e09372fd6e03387ced9ef566da336ed6cAffected
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before 179676f0166230c80053a392303485b37c93dd33Affected
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before dc67d528c2fa939cec7fe3bf7f3089c8d281ca3dAffected
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before 618b5c6d049896fcfabb91afc072954c92cb2693Affected
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before 07daf4f9750104960a1d60831b2353c0d41f35fbAffected
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before d949992bc3f00027a2c755e860a11950c75f6073Affected
  • a000c01e60e40e15304ffe48fff051d17a7bea91 to before 8c283e7b56adce00193837f3311b06662466fb21Affected
LinuxLinux
  • 3.0Affected
  • before 3.0Not affected
  • 5.10.265 through 5.10.*Not affected
  • 5.15.216 through 5.15.*Not affected
  • 6.1.183 through 6.1.*Not affected
  • 6.6.152 through 6.6.*Not affected
  • 6.12.104 through 6.12.*Not affected
  • 6.18.45 through 6.18.*Not affected
  • 7.1.9 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.