Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: sctp: clear control chunk transport if it is being removed sctp_make_heartbeat_ack() caches the destination transport in chunk->transport without taking a reference. When src_out_of_asoc_ok is enabled, the HEARTBEAT ACK may remain queued on control_chunk_list instead of being transmitted immediately. If the peer transport is removed while the chunk is still queued, sctp_assoc_rm_peer() drops the transport and schedules it for RCU freeing, but only clears cached transport pointers in out_chunk_list. The queued control chunk therefore retains a dangling transport pointer. Once an ASCONF_ACK clears the suppression and the queued control chunk is transmitted, SCTP dereferences the stale transport pointer, leading to a use-after-free. Fix this by also clearing chunk->transport for queued control chunks in control_chunk_list when removing the transport.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before dbb3f418a8665ffb0514e1a9520ab6a1c5d4d886; affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before fad4766a74220fe579c6fcaa10ba01c23529814f; affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before 936658ec41c28c397ef390140e02d4c91ade92f0; affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before 8de65194a04d2552cd39b6c67d942d490f22d174; affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before 6160e756db81d6cb63e3e2952efcf6c5134be385; affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before 18d704bdd809377dfd81a3c2f42426763b5da227; affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before 4d6b9cac6df5e0cfef1a66b3edd7aebdb9e4b7e7; affected 8a07eb0a50aebc8c95478d49c28c7f8419a26cef before c9158ceaf27780ef64534ad72f44ffde3f8ccc49 |
| Linux / Linux | affected 3.1; unaffected 0 before 3.1; unaffected 5.10.265 through 5.10.*; unaffected 5.15.216 through 5.15.*; unaffected 6.1.183 through 6.1.*; unaffected 6.6.152 through 6.6.*; unaffected 6.12.104 through 6.12.*; unaffected 6.18.45 through 6.18.*; unaffected 7.1.9 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/dbb3f418a8665ffb0514e1a9520ab6a1c5d4d886
- https://git.kernel.org/stable/c/fad4766a74220fe579c6fcaa10ba01c23529814f
- https://git.kernel.org/stable/c/936658ec41c28c397ef390140e02d4c91ade92f0
- https://git.kernel.org/stable/c/8de65194a04d2552cd39b6c67d942d490f22d174
- https://git.kernel.org/stable/c/6160e756db81d6cb63e3e2952efcf6c5134be385
- https://git.kernel.org/stable/c/18d704bdd809377dfd81a3c2f42426763b5da227
- https://git.kernel.org/stable/c/4d6b9cac6df5e0cfef1a66b3edd7aebdb9e4b7e7
- https://git.kernel.org/stable/c/c9158ceaf27780ef64534ad72f44ffde3f8ccc49
ADP enrichment
No English description supplied.
No references supplied.