PT-2024-21614 · Linux+9 · Linux Kernel+9
Mingshuai Ren
·
Publicado
2024-04-15
·
Atualizado
2026-05-26
·
CVE-2024-27010
CVSS v2.0
7.5
Alta
| Vetor | AV:N/AC:L/Au:N/C:P/I:P/A:P |
Nome do software vulnerável e versões afetadas
Versões do kernel Linux anteriores à 6.8.0-05205-g77fadd89fe2d-dirty #213
Descrição
O problema surge quando a ação mirred é usada em um qdisc de saída com classes e um pacote é espelhado ou redirecionado para si mesmo, resultando em um impasse de bloqueio do qdisc. Isso pode ser reproduzido usando comandos específicos do tc qdisc e do filtro em dispositivos como eth0 e eth1. O impasse ocorre devido a um possível cenário de bloqueio recursivo, no qual a tarefa tenta adquirir um bloqueio que já possui. Para corrigir isso, um campo de proprietário (ID da CPU) é adicionado à estrutura Qdisc após a entrada do qdisc raiz e, se o softirq entrar uma segunda vez com a mesma CPU do proprietário do qdisc, o pacote é descartado para quebrar o loop.
Recomendações
Para resolver este problema, atualize o kernel do Linux para uma versão que inclua a correção para o impasse de espelhamento na recursão de dispositivos. Especificamente, certifique-se de que a versão do kernel seja posterior à 6.8.0-05205-g77fadd89fe2d-dirty #213. Como solução alternativa temporária, considere evitar o uso da ação mirred no qdisc de saída com classes quando os pacotes forem espelhados ou redirecionados para si mesmos, ou aplique manualmente o patch que adiciona o campo owner à estrutura Qdisc caso a atualização do kernel não seja viável imediatamente.
Exploit
Correção
DoS
Improper Locking
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Alt Linux
Almalinux
Centos
Debian
Linuxmint
Linux Kernel
Red Hat
Rocky Linux
Suse
Ubuntu