E foi lançado o Git 2.38.1 com correções para duas falhas de segurança, e muito mais. Confira as novidades e veja como instalar no Linux.
Um sistema de controle de versão permite organizar o ciclo de desenvolvimento de um aplicativo em geral. De todos eles, o Git é um dos mais populares e tem o melhor suporte dos desenvolvedores.
O Git é um dos sistemas de controle de versão mais populares, confiáveis e de alto desempenho, além de fornecer ferramentas de desenvolvimento não-linear baseadas em mesclagem e versões flexíveis.
Para garantir a integridade do histórico e a resistência a alterações retrospectivas, o hash implícito de todo o histórico anterior é usado em cada confirmação, e as assinaturas digitais de desenvolvedores e confirmações individuais de tags também podem ser verificadas.
Agora, o Git 2.38.1 foi lançado como a atualização de recurso mais recente desse sistema de controle de revisão distribuído amplamente usado.
Novidades do Git 2.38.1
Sim. O Git 2.38.1 acaba de ser lançado junto com atualizações para versões mais antigas, incluindo os novos lançamentos pontuais de v2.30.6, v2.31.5, v2.32.4, v2.33.5, v2.34.5, v2.35.5, v2.36.3 e v2 .37.4.
O grande conjunto de atualizações do Git hoje se deve a mais dois problemas de segurança que vieram à tona.
As vulnerabilidades mais recentes do Git são CVE-2022-39253 e CVE-2022-39260.
O primeiro diz respeito à otimização do clone “--local
” que leva a possíveis arquivos arbitrários que aparecem em $GIT_DIR ao clonar de um repositório malicioso.
A outra vulnerabilidade é sobre strings de comando excessivamente longas passadas para o subcomando git shell que podem levar a gravações de heap arbitrárias e execução remota de código.
Esses dois CVEs são resumidos no anúncio de lançamento do Git 2.38.1 como:
CVE-2022-39253:
Ao confiar na otimização de clone `–local`, o Git desreferencia links simbólicos no repositório de origem antes de criar hardlinks (ou cópias) do link desreferenciado no repositório de destino. Isso pode levar a um comportamento surpreendente onde arquivos arbitrários estão presentes no `$GIT_DIR` de um repositório ao clonar de um repositório malicioso.
O Git não desreferenciará mais links simbólicos através do mecanismo de clonagem `–local` e, em vez disso, se recusará a clonar repositórios que tenham links simbólicos presentes no diretório `$GIT_DIR/objects`.
Além disso, o valor de `protocol.file.allow` é alterado para “usuário” por padrão.
CVE-2022-39260:
Uma string de comando excessivamente longa dada ao `git shell` pode resultar em estouro em `split_cmdline()`, levando a gravações de heap arbitrárias e execução remota de código quando o `git shell` é exposto e o diretório `$HOME/git-shell- comandos` existe.
O `git shell` é ensinado a recusar comandos interativos com mais de 4 MiB de tamanho. `split_cmdline()` é reforçado para rejeitar entradas maiores que 2GiB.
Mais detalhes sobre o Git 2.38.1 leia o anúncio de lançamento.
Como instalar ou atualizar o Git
Se você deseja atualizar ou instalar esta ferramenta, precisamos apenas abrir um terminal em nosso sistema e digitar um dos seguintes comandos.
Debian/Ubuntu
sudo apt-get install git
Fedora
sudo dnf install git
Gentoo
emerge --ask --verbose dev-vcs/git
Arch Linux
sudo pacman -S git
openSUSE
sudo zypper install git
Mageia
sudo urpmi git
Alpine
sudo apk add git
Ou
Para instalar a versão mais recente do Git nas principais distribuições Linux, use esse tutorial:
Como instalar a última versão do Git no Debian ou Ubuntu
Como instalar a versão mais recente do GIT no CentOS, RHEL e derivados