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

VetorAV: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:
  1. 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.
  2. 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

BDU:2024-09190
CVE-2024-26745
DSA-5658-1
OPENSUSE-SU-2024_1490-1
OPENSUSE-SU-2024_1659-1
OPENSUSE-SU-2024_1663-1
SUSE-SU-2024:1490-1
SUSE-SU-2024:1659-1
SUSE-SU-2024:1663-1
SUSE-SU-2024:2385-1
SUSE-SU-2024:2495-1

Produtos afetados

Astra Linux
Linux Kernel
Red Os
Suse