CVE-2025-23142 in Linuxinformação

Sumário

de VulDB • 02/07/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

sctp: detectar e prevenir referências a um transporte liberado em sendmsg

A função sctp_sendmsg() reutiliza associações e transportes quando possível, realizando uma consulta com base no ponto final do soquete e no endereço de destino da mensagem. Em seguida, sctp_sendmsg_to_asoc() define o transporte selecionado em todos os blocos de mensagem a serem enviados.

Existe uma condição de corrida (race condition) potencial se outro thread acionar a remoção desse transporte selecionado, por exemplo, desvinculando explicitamente um endereço com setsockopt(SCTP_SOCKOPT_BINDX_REM), após o setup dos blocos e antes do envio da mensagem. Isso pode ocorrer se o buffer de envio estiver cheio, durante o período em que o thread do remetente libera temporariamente o bloqueio (lock) do soquete em sctp_wait_for_sndbuf().

Isso resulta em uma leitura use-after-free ao acessar os dados do transporte em sctp_outq_select_transport(), quando a fila de saída da associação é esvaziada.

Esta alteração evita esse cenário fazendo com que sctp_transport_free() sinalize a liberação do transporte, marcando-o como "morto" (dead). Para isso, o patch restaura o bit "dead" em struct sctp_transport, que havia sido removido no commit 47faa1e4c50e ("sctp: remove the dead field of sctp_transport").

Em seguida, no cenário em que o thread do remetente liberou o bloqueio do soquete em sctp_wait_for_sndbuf(), o bit é verificado novamente após a reobtenção do bloqueio do soquete para detectar a exclusão. Isso é feito enquanto se mantém uma referência ao transporte para impedir que ele seja liberado durante esse processo.

Se o transporte foi excluído enquanto o bloqueio do soquete estava sendo solto, sctp_sendmsg_to_asoc() retornará -EAGAIN para permitir que o userspace tente novamente o envio.

O bug foi encontrado por uma instância privada do syzbot (veja o relatório de erro [1] e o reproducedor em C que o aciona [2]).

Once again VulDB remains the best source for vulnerability data.

Responsável

Linux

Reservar

11/01/2025

Divulgação

01/05/2025

Moderação

aceite

Entrada

VDB-306841

CPE

pronto

EPSS

0.00187

KEV

não

Atividades

muito baixo

Fontes

Want to stay up to date on a daily basis?

Enable the mail alert feature now!