PT-2022-16905 · Github+1 · Git Lfs+1
Yuske
·
Publicado
2022-04-19
·
Atualizado
2025-08-05
·
CVE-2022-24826
CVSS v3.1
9.8
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões 2.12.1 a 3.1.2 do Git LFS
Descrição
No Windows, se o Git LFS operar em um repositório malicioso que contenha um arquivo
..exe e um arquivo chamado git.exe, e o git.exe não for encontrado no PATH, o programa ..exe será executado, permitindo que o invasor execute código arbitrário. Isso não afeta sistemas Unix. A vulnerabilidade ocorre porque, quando o Git LFS detecta que o programa que pretende executar não existe em nenhum diretório listado em PATH, ele passa uma string vazia como caminho do arquivo executável para o pacote Go os/exec, que contém um bug que faz com que, no Windows, ele anteponha o nome do diretório de trabalho atual (ou seja, . ) à string vazia sem adicionar um separador de caminho e, como resultado, procura nesse diretório por um arquivo com o nome base . combinado com qualquer extensão de arquivo de PATHEXT, executando o primeiro que encontrar.Recomendações
Para as versões 2.12.1 a 3.1.2 do Git LFS, atualize para a versão 3.1.3 para resolver o problema. Como solução alternativa temporária, considere garantir que todos os programas pretendidos sejam encontrados no
PATH para impedir a execução de arquivos maliciosos. Restrinja o acesso ao pacote os/exec vulnerável no projeto Go até que um patch esteja disponível.Exploit
Correção
RCE
Untrusted Search Path
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Git Lfs
Go