PT-2024-7726 · Linux+3 · Linux Kernel+3
Publicado
2024-02-19
·
Atualizado
2024-10-31
·
CVE-2024-26745
CVSS v2.0
4.6
Média
| Vetor | AV:L/AC:L/Au:S/C:N/I:N/A:C |
Nome do software vulnerável e versões afetadas
Versões do kernel Linux anteriores à 6.4.0
Descrição
O kernel Linux apresenta uma vulnerabilidade no componente powerpc/pseries/iommu. Quando o kernel kdump tenta copiar dados de despejo (dump) via SR-IOV, o LPAR entra em pânico devido a uma exceção de ponteiro nulo. O kernel tentou ler uma página do usuário, o que é considerado uma tentativa de exploração. A vulnerabilidade ocorre porque a tabela IOMMU não é inicializada para o kdump via SR-IOV.
O problema surge quando as Janelas Dinâmicas de DMA (DDWs) são verificadas e adicionadas à Árvore de Dispositivos Aplanada (FDT) antes que o kexec transfira o controle para o kernel kdump. No caso do SR-IOV, a janela DMA padrão “ibm,dma-window” é removida da FDT, e a DDW é adicionada para o dispositivo. Posteriormente, quando o driver do dispositivo tenta inserir TCEs para o dispositivo SR-IOV, uma exceção de ponteiro nulo é lançada a partir de iommu area alloc().
A correção consiste em inicializar a tabela IOMMU com a propriedade DDW armazenada na FDT. Há dois pontos a serem lembrados:
-
Para o adaptador dedicado, o kernel kdump encontraria tanto a janela padrão quanto a DDW na FDT, e a propriedade DDW é usada para inicializar a tabela IOMMU.
-
Um DDW pode ser mapeado diretamente ou dinamicamente, e o kernel kdump inicializaria a tabela IOMMU e marcaria o DDW existente como “dinâmico”.
Recomendações
Para resolver o problema, atualize o kernel Linux para a versão 6.4.0 ou posterior. Se a atualização não for possível, considere desativar o recurso SR-IOV ou restringir o acesso ao dispositivo vulnerável
Exploit
Correção
NULL Pointer Dereference
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