PT-2022-7381 · Linux+3 · Linux Kernel+3
Syzbot
·
Publicado
2022-09-02
·
Atualizado
2024-10-30
·
CVE-2022-48689
CVSS v3.1
7.0
Alta
| Vetor | AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões do kernel Linux anteriores àquela que inclui a correção para o problema.
Descrição
O problema está relacionado ao uso indevido do status de página pfmemalloc em caminhos TCP zerocopy. O uso de
page is pfmemalloc() nesse contexto pode gerar falsos positivos. O problema é mais provável após um commit específico que adicionou uma assinatura na estrutura struct page, fazendo com que page is pfmemalloc() utilize um bit de ordem inferior de page->lru.next, que pode mudar com mais frequência do que page->index. O relatório do KCSAN é, em grande parte, um falso positivo, pois o bit de ordem inferior nunca deve ser definido para lru.next quando usado como âncora na lista LRU.Recomendações
Para resolver o problema, faça o backport do commit 84ce071e38a6 (“net: introduce skb fill page desc noacc”) como pré-requisito. Essa alteração remove o uso de
page is pfmemalloc() no caminho zerocopy do TCP, evitando assim o possível uso indevido e problemas relacionados. Aplique esse backport para garantir a estabilidade e a segurança do kernel do Linux.Exploit
Correção
Race Condition
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Astra Linux
Linux Kernel
Red Os
Suse