Pypi · Gitpython · CVE-2026-67323
**Nome do Software Vulnerável e Versões Afetadas**
GitPython versões anteriores a 3.1.51
**Descrição**
O GitPython falha ao sanitizar adequadamente os argumentos passados para diversas APIs públicas, permitindo a injeção de comandos e a manipulação arbitrária de arquivos. O problema ocorre porque o software não aplica verificações de segurança em opções do Git para certos métodos, permitindo que atacantes injetem flags perigosas nas chamadas do binário `git` subjacente.
Detalhes técnicos incluem:
- Execução de Comando: O método `Repo.archive()` encaminha `**kwargs` literalmente, e o método `git.ls remote()` permite que o argumento de palavra-chave `upload pack` seja passado sem validação. Um atacante pode usar opções como `--exec` ou `--upload-pack` para executar comandos arbitrários no sistema host.
- Sobrescrita Arbitrária de Arquivos: Os métodos `Repo.iter commits()` e `Repo.blame()` não verificam a presença de traços iniciais no argumento `rev`. Ao passar um valor como `--output=<caminho>`, um atacante pode fazer com que o Git abra e trunque um arquivo arbitrário no sistema.
A exploração requer que uma aplicação passe argumentos controlados por um atacante para esses métodos específicos.
**Recomendações**
Atualize o GitPython para a versão 3.1.51 ou posterior.
Como mitigação temporária, restrinja ou desative o uso dos métodos `Repo.archive()`, `git.ls remote()`, `Repo.iter commits()` e `Repo.blame()` caso eles processem entradas de usuários não confiáveis.