Git lançou a correção de falhas que causam vazamento de dados

Em suas mais recentes atualizações, o Git lançou a correção de falhas que causam vazamento de dados e substituição.

Recentemente, foi lançada a publicação de várias versões corretivas do sistema de controle de código-fonte distribuído Git, variando da versão 2.38.4 à versão 2.30.8, nas quais existem duas correções que eliminam as vulnerabilidades detectadas que afetam as otimizações de clone local e o “comando git apply“.

Git lançou a correção de falhas que causam vazamento de dados

Git lançou a correção de falhas que causam vazamento de dados
Git lançou a correção de falhas que causam vazamento de dados

Sim. O Git lançou a correção de falhas que causam vazamento de dados. Como tal, é mencionado que essas versões de manutenção devem abordar dois problemas de segurança identificados em CVE-2023-22490 e CVE-2023-23946.

Ambas as vulnerabilidades afetam os intervalos de versão existentes e os usuários são fortemente encorajados a atualizar de acordo.

“Um invasor pode explorar remotamente uma vulnerabilidade para detectar informações. Além disso, um invasor pode
explorar uma vulnerabilidade localmente para manipular arquivos.”

“Privilégios normais são necessários para explorar as vulnerabilidades. Ambas as vulnerabilidades requerem interação do usuário.”

A primeira vulnerabilidade identificada é a CVE-2023-22490, que permite que um invasor controle o conteúdo de um repositório clonado para obter acesso a dados confidenciais no sistema de um usuário. Duas falhas contribuem para a vulnerabilidade:

  • A primeira falha permite, ao trabalhar com um repositório construído especificamente, obter o uso de otimizações de clonagem local mesmo ao usar um transporte que interage com sistemas externos.
  • A segunda falha permite colocar um link simbólico em vez do diretório $GIT_DIR/objects, semelhante à vulnerabilidade CVE-2022-39253, que bloqueou a colocação de links simbólicos no diretório $GIT_DIR/objects, mas o fato de que o $GIT_DIR/objects O próprio diretório não foi verificado pode ser um link simbólico.

No modo de clone local, git move $GIT_DIR/objects para o diretório de destino desreferenciando links simbólicos, fazendo com que os arquivos referenciados sejam copiados diretamente para o diretório de destino.

Mudar para o uso de otimizações de clone local para transporte não local permite que uma vulnerabilidade seja explorada ao trabalhar com repositórios externos (por exemplo, a inclusão recursiva de submódulos com o comando “git clone --recurse-submodules” pode levar à clonagem de um repositório malicioso empacotado como um submódulo em outro repositório).

“Usando um repositório especialmente criado, o Git pode ser induzido a usar sua otimização de clone local mesmo ao usar um transporte não local.
Embora o Git cancele clones locais cujo diretório de origem $GIT_DIR/objects contém links simbólicos (cf, CVE-2022-39253), os objetos no próprio diretório ainda podem ter links simbólicos.

Esses dois podem ser combinados para incluir arquivos arbitrários com base em caminhos no sistema de arquivos da vítima dentro do repositório malicioso e da cópia de trabalho, permitindo a exfiltração de dados semelhante à
CVE-2022-39253.”

A segunda vulnerabilidade detectada é CVE-2023-23946 e permite sobrescrever o conteúdo de arquivos fora do diretório de trabalho, passando uma entrada especialmente formatada para o comando “git apply”.

Por exemplo, um ataque pode ser executado quando patches preparados por um invasor são processados ​​no git apply.

Para evitar que patches criem arquivos fora da cópia de trabalho, “git apply” bloqueia o processamento de patches que tentam gravar um arquivo usando links simbólicos. Mas essa proteção acabou sendo contornada pela criação de um link simbólico em primeiro lugar.

“Fedora 36 e 37 têm atualizações de segurança de ‘teste’ que atualizam ‘git’ para a versão 2.39.2.

As vulnerabilidades também são abordadas com GitLab 15.8.2, 15.7.7 e 15.6.8 em Community Edition (CE) e Enterprise Edition (EE).

O GitLab classifica as vulnerabilidades como críticas porque o CVE-2023-23946 permite a execução de código de programa arbitrário no ambiente Gitaly (serviço Git RPC).
Ao mesmo tempo, o Python incorporado é atualizado para a versão 3.9.16 para corrigir mais vulnerabilidades.”

Se não for possível instalar uma atualização, recomenda-se como solução alternativa evitar a execução do “git clone” com a opção “--recurse-submodules" em repositórios não confiáveis ​​e não usar os comandos “git apply” e “git am” com código não verificado.

Por fim, os interessados ​​em saber mais sobre o assunto podem acompanhar os lançamentos de atualizações de pacotes nas distribuições nas páginas do Debian ,  Ubuntu ,  RHEL ,  SUSE/openSUSE ,  Fedora ,  Arch e  FreeBSD .

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.

Deixe um comentário

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.