PT-2022-7659

CVE-2022-48733

·

Publicado

2022-01-31

·

Atualizado

2026-10-21

Descrição por

CVSS 3.1
7.8
Alta
MétricasAV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Nome do software vulnerável e versões afetadas
Kernel do Linux (versões afetadas não especificadas)
Descrição
O problema está relacionado a uma vulnerabilidade de uso após liberação (use-after-free) no sistema de arquivos btrfs do kernel Linux. Especificamente, ela ocorre ao criar um snapshot e a função btrfs commit transaction() falhar, levando a uma situação em que uma estrutura de snapshot pendente é liberada, mas ainda acessível, resultando em um cenário de uso após liberação (user-after-free). Isso pode acontecer na seguinte sequência:
  1. Um snapshot pendente é alocado e adicionado à lista de snapshots pendentes da transação.
  2. btrfs commit transaction() é chamada e, se falhar, a estrutura do snapshot pendente é liberada.
  3. Outra tarefa confirma a transação sem erros, acessando a estrutura do snapshot pendente já liberada, causando assim um “user-after-free”.
A vulnerabilidade poderia ser detectada pelo smatch, que gerava um aviso sobre o snapshot pendente não ter sido removido da lista. Para corrigir isso, o ioctl de criação de snapshot não deve adicionar diretamente o snapshot pendente à lista da transação. Em vez disso, ele deve adicionar o snapshot pendente ao identificador da transação e, então, em btrfs commit transaction(), adicionar o snapshot à lista somente quando for garantido que qualquer erro retornado após esse ponto resultará no abortamento da transação.
Recomendações
No momento, não há informações sobre uma versão mais recente que contenha uma correção para esta vulnerabilidade.
Explorabilidade
Exploit
Impactos
Pesquisadores
Fornecedores
Produtos afetados
Enumeração de fraquezas
Identificadores relacionados
CLSA-2024-1727817133
CLSA-2024-1727817159
CLSA-2024-1728298943
CLSA-2026-1783337441
CLSA-2026-1783337794
CLSA-2026-1783354994
DLA-3912-1
OESA-2024-1838
OESA-2024-1839
OPENSUSE-SU-2024_2372-1
OPENSUSE-SU-2024_2394-1
SUSE-SU-2024:2360-1
SUSE-SU-2024:2372-1
SUSE-SU-2024:2381-1
SUSE-SU-2024:2394-1
SUSE-SU-2024:2561-1
SUSE-SU-2024:2939-1
USN-7121-1
USN-7121-2
USN-7121-3
USN-7148-1
USN-7159-1
USN-7159-2
USN-7159-3
USN-7159-4
USN-7159-5
USN-7195-1
USN-7195-2
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾