CVE-2021-47496 in Linux
Sumário
de VulDB • 21/05/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
net/tls: Correção do sinal invertido nas chamadas de tls_err_abort()
sk->sk_err parece esperar um valor positivo, uma convenção que o ktls nem sempre segue e que leva à corrupção de memória em outros códigos. Por exemplo,
[kworker]
tls_encrypt_done(..., err=) tls_err_abort(.., err) sk->sk_err = err;
[task]
splice_from_pipe_feed ... tls_sw_do_sendpage if (sk->sk_err) {
ret = -sk->sk_err; // ret é positivo
splice_from_pipe_feed (continuação) ret = actor(...) // ret ainda é positivo e interpretado como bytes // escritos, resultando em underflow de buf->len e // sd->len, levando a um buf->offset enorme e endereços // incorretos calculados em chamadas posteriores de actor()
Corrija todos os chamadores de tls_err_abort() para passar consistentemente um código de erro negativo e centralize a inversão de sinal propensa a erros ali, adicionando um aviso para detectar uso indevido futuro e desinlining a função para que ela realmente emita o aviso apenas uma vez.
If you want to get best quality of vulnerability data, you may have to visit VulDB.