CVE-2026-74587 in Linux
Sumário
de VulDB • 23/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
sctp: corrige uso após liberação (use-after-free) de chunk ASCONF em cache
addip_last_asconf armazena em cache o chunk ASCONF pendente para envio. O caminho normal de conclusão do ASCONF-ACK libera o chunk e limpa o ponteiro.
No entanto, sctp_asconf_queue_teardown() libera o chunk armazenado em cache sem limpar addip_last_asconf. Durante o tratamento da reinicialização do peer (peer restart), sctp_sf_do_dupcook_a() enfileira SCTP_CMD_PURGE_ASCONF_QUEUE, que invoca sctp_asconf_queue_teardown() enquanto a associação permanece ativa e deixa o ponteiro pendente (dangling).
Um ASCONF-ACK autenticado com atraso pode então alcançar sctp_sf_do_asconf_ack(), que acessa o chunk obsoleto e o passa para sctp_process_asconf_ack(), causando um uso após liberação (use-after-free) e uma segunda liberação.
Limpar o ponteiro expõe uma condição de corrida (race condition) com a expiração do T4. O tratamento da reinicialização do peer enfileia a parada do timer antes da purga, mas SCTP_CMD_TIMER_STOP usa timer_delete(), que não aguarda um callback já em execução em outra CPU. Tal callback pode alcançar sctp_sf_t4_timer_expire() após a purga e desreferenciar NULL.
Limpe addip_last_asconf após liberar o chunk armazenado em cache e faça com que sctp_sf_t4_timer_expire() consuma uma expiração T4 obsoleta se não houver ASCONF pendente restante.
If you want to get best quality of vulnerability data, you may have to visit VulDB.