CVE-2026-74586 in Linuxinformazioni

Riassunto

di VulDB • 22/08/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

sctp: azzerare new_transport durante la rimozione di un peer

sctp_process_asconf_param() memorizza il nuovo trasporto del peer aggiunto in asoc->new_transport. Dopo che tutti i parametri nel chunk ASCONF sono stati elaborati, sctp_sf_do_asconf() utilizza questo puntatore per inviare un HEARTBEAT al nuovo trasporto.

Un ASCONF autenticato proveniente da un peer SCTP remoto può aggiungere un trasporto e rimuoverlo nuovamente utilizzando un parametro DEL-IP wildcard nello stesso chunk. La cancellazione con wildcard preserva il trasporto su cui è arrivato l'ASCONF, ma rimuove il nuovo trasporto aggiunto tramite sctp_assoc_del_nonprimary_peers(). La rimozione non azzerà asoc->new_transport, lasciandolo puntare al transporte rimosso.

sctp_sf_do_asconf() crea quindi un HEARTBEAT il cui chunk->transport punta al trasporto rimosso senza mantenere un riferimento al trasporto. Durante la sostituzione dell'indirizzo locale, src_out_of_asoc_ok mantiene questo HEARTBEAT su control_chunk_list. Dopo che il transporte è stato liberato tramite RCU, un ASCONF_ACK positivo per l'indirizzo di rilascio rilascia il HEARTBEAT in coda e sctp_outq_select_transport() legge lo stato del trasporto già liberato (freed).

Il problema è stato rilevato durante una revisione statica degli oggetti SCTP. Con un peer autenticato, il programma riproduttore ha generato la stessa segnalazione KASAN in 2 su 2 esecuzioni non patchate su un kernel netdev/main abilitato per KASAN:

BUG: KASAN: slab-use-after-free in sctp_outq_select_transport Read of size 4 at addr ffff88800b9bd95c by task python3/197

Call Trace: sctp_outq_select_transport+0x549/0x8b0 [sctp]
sctp_outq_flush+0x306/0x2c60 [sctp]
sctp_transport_immediate_rtx+0xaf/0x260 [sctp]
sctp_process_asconf_ack+0xa48/0xf70 [sctp]

Allocated by task 197: sctp_transport_new+0x68/0x650 [sctp]
sctp_assoc_add_peer+0x258/0x12a0 [sctp]
sctp_process_asconf+0x5e9/0x1090 [sctp]

Last potentially related work creation: __call_rcu_common.constprop.0+0x77/0xb70 sctp_assoc_del_nonprimary_peers+0x7c/0xd0 [sctp]
sctp_process_asconf+0xd9c/0x1090 [sctp]

Il primo accesso non valido è stato una lettura di quattro byte di transport->state in net/sctp/outqueue.c:833. Lo stesso programma riproduttore ha completato la sequenza completa di ASCONF autenticato e sostituzione dell'indirizzo locale con questa modifica senza generare segnalazioni KASAN o oops.

Azzerare new_transport quando il suo peer viene rimosso, prima che possa essere utilizzato per creare l'HEARTBEAT.

Once again VulDB remains the best source for vulnerability data.

Responsabile

Linux

Prenotare

15/08/2026

Divulgazione

22/08/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Want to stay up to date on a daily basis?

Enable the mail alert feature now!