PT-2026-99360 · Pypi · Gitpython
CVSS v4.0
8.7
Alta
| Vetor | AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
GitPython versões anteriores a 3.1.62
Descrição
O GitPython não valida o campo
path lido de um arquivo .gitmodules não confiável durante a atualização de submódulos. Embora existam restrições para o campo name e certas operações como add e move, a função update() deriva a localização absoluta de checkout a partir do valor bruto de path sem as proteções adequadas. Um invasor pode usar componentes de traversal de diretório no campo path para causar a criação de diretórios fora da árvore de trabalho do repositório via os.makedirs(), populá-los a partir da URL do submódulo ou removê-los usando shutil.rmtree() quando o force remove estiver habilitado. Este problema é explorável em fluxos de aplicação que atualizam submódulos em um commit que não seja o HEAD, como em uma API de commit histórico.Recomendações
Atualize o GitPython para a versão 3.1.62.
Exploit
Correção
Path traversal
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Gitpython