PT-2026-39243 · Go-Git+1 · Go-Git+1
CVE-2026-44309
·
Publicado
2026-05-08
·
Atualizado
2026-07-30
CVSS v3.1
5.3
Média
| Vetor | AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N |
Nome do Software Vulnerável e Versões Afetadas
Gitsign versões anteriores a 0.16.0
Descrição
Os comandos
gitsign verify e gitsign verify-tag re-codificam objetos de commit ou tag usando a função EncodeWithoutSignature da biblioteca go-git antes de verificar a assinatura, em vez de verificar os bytes brutos do objeto git. Isso cria uma discrepância porque o go-git utiliza a análise flexível (loose parsing); se um objeto malformado contiver cabeçalhos tree duplicados, o go-git descarta o primeiro e retém o segundo, enquanto o git-core utiliza o primeiro.Um invasor pode explorar isso criando um commit malformado com dois cabeçalhos
tree. Ao replicar uma assinatura válida de um commit legítimo sobre a segunda árvore (que o go-git visualiza), o invasor pode fazer com que o gitsign verify reporte uma assinatura válida para um commit que o git-core resolve para um conteúdo completamente diferente e controlado pelo invasor. Isso quebra a invariante de que a assinatura verificada, a semântica do commit apresentada aos usuários e o hash do objeto registrado no Rekor referem-se ao mesmo conteúdo.Recomendações
Atualize o Gitsign para a versão 0.16.0.
Como medida paliativa temporária, restrinja o uso de
gitsign verify e gitsign verify-tag em commits de fontes não confiáveis até que a atualização seja aplicada.Exploit
Correção
Improper Verification of Cryptographic Signature
Improper Certificate Validation
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Gitsign
Go-Git