Eles detectaram vulnerabilidades no Git que permitem sobrescrever arquivos ou executar código

vulnerabilidade

Se exploradas, essas falhas podem permitir que invasores obtenham acesso não autorizado a informações confidenciais ou geralmente causem problemas

O lançamento de novas correções de manutenção do Git v2.40.1, junto com versões de manutenção para versões anteriores v2.39.3, v2.38.5, v2.37.7, v2.36.6, v2.35.8,
v2.34.8, v2.33.8, v2.32.7, v2.31.8 e v2.30.9, isso porque foram divulgadas informações de que cinco vulnerabilidades foram identificadas no Git.

O lançamento dessas versões de manutenção destinam-se a resolver problemas de segurança identificados como CVE-2023-25652, CVE-2023-25815 e CVE-2023-29007.

Sobre as vulnerabilidades do Git

Vulnerabilidade CVE-2023-29007 permite substituição de configuração no arquivo de configuração $GIT_DIR/config, que pode ser usado para executar código no sistema especificando caminhos para arquivos executáveis ​​nas diretivas core.pager, core.editor e core.sshCommand.

Vulnerabilidade é devido a um erro lógico devido a valores de configuração muito longos eles podem ser tratados como o início de uma nova seção renomeando ou removendo uma seção de um arquivo de configuração.

Na prática, a substituição de valores de exploração pode ser obtida especificando URLs de submódulos muito longos que são salvos no arquivo $GIT_DIR/config durante a inicialização. Essas URLs podem ser interpretadas como novas configurações quando você tenta removê-las por meio de "git submodule deinit".

Outra vulnerabilidade é CVE-2023-25652 permitindo sobrescrever o conteúdo de arquivos fora da árvore de trabalho ao processar patches especialmente projetados com o comando "git apply --rejeitar«. Se você tentar executar um patch malicioso com o comando "vai aplicar» que tentar gravar em um arquivo por meio de um link simbólico, a operação será rejeitada.

Por sua vez, a vulnerabilidade CVE-2023-25815: quando o Git é compilado com suporte a prefixos de tempo de execução e é executado sem mensagens traduzidas, ele ainda usa o maquinário gettext para exibir mensagens, que subsequentemente procuram mensagens traduzidas em locais inesperados. Isso permitia a postagem maliciosa de mensagens manipuladas.

No Git 2.39.1, a proteção contra adulteração de links simbólicos foi estendida para bloquear patches que criam links simbólicos e tentam gravar por meio deles. A essência da vulnerabilidade em questão é que o Git não levou em conta que o usuário pode executar o comando "git apply –reject" para gravar as partes rejeitadas do patch como arquivos com a extensão ".rej" e o invasor pode usar essa função para gravar o conteúdo em um diretório arbitrário, na medida em que os direitos de acesso atuais permitem.

Além disso, Corrigidas três vulnerabilidades que aparecem apenas no Windows:

  • CVE-2023-29012: (procura o executável doskey.exe no diretório de trabalho do repositório ao executar o comando "Git CMD", que permite organizar a execução de seu código no sistema do usuário)
  • CVE-2023-25815: Estouro de buffer ao processar arquivos de localização personalizados em gettext. Essa vulnerabilidade afeta usuários que trabalham em máquinas Windows às quais outras partes não confiáveis ​​têm acesso de gravação. Normalmente, todos os usuários autenticados têm permissão para criar pastas em C:\, o que permite que atores mal-intencionados injetem mensagens inválidas no git.exe.
  • CVE-2023-29011: Possibilidade de substituir o arquivo connect.exe ao trabalhar com SOCKS5. A localização do arquivo de configuração connect.exe é codificado para um caminho que geralmente é interpretado como C:\etc\connectrc, que é similarmente passível de ser tratado acima.

Como solução alternativa proteger contra vulnerabilidades, é recomendável evitar a execução do comando «git apply --rejeitar» ao trabalhar com patches externos não verificados e verificar o conteúdo de $GIT_DIR/config antes de executar os comandos "git submódulo deinit«,«configuração do git --rename-section" e "git config --remove-section" ao lidar com repositórios não confiáveis.

Por fim, se você estiver interessado em saber mais sobre o assunto, consulte os detalhes em o seguinte link.

Os interessados ​​em acompanhar o lançamento de atualizações de pacotes nas distribuições podem fazê-lo nas páginas de DebianUbuntuRHELSUSE / openSUSEFedoraarcoFreeBSD.