BT

Vulnerabilidade Crítica no Git e Mercurial afeta OS X e Windows

| por Sergio De Simone Seguir 18 Seguidores , traduzido por Roberto Pepato Seguir 32 Seguidores em 07 jan 2015. Tempo estimado de leitura: 2 minutos |

Uma vulnerabilidade crítica de segurança afetando o Git e o Mercurial foi anunciada em 19 de dezembro, e torna possível a execução arbitrária de comandos em uma máquina cliente. A vulnerabilidade afeta somente clientes executando OS X (HFS+) e Windows (NTFS, FAT). Os times responsáveis pelo core do Git e pelo Mercurial publicaram novas versões (Git 1.8.5.6, 1.9.5, 2.0.5, 2.1.4, e 2.2.1, Mercurial 3.2.3), corrigindo a vulnerabilidade.

Junio C Hamano , mantenedor do Git desde 2005, descreveu a vulnerabilidade em seu blog:

O Git mantém diversas meta-informações de seus repositórios em arquivos no diretório .git/ localizado na raiz da área de trabalho. O sistema não permite que um arquivo neste diretório (por exemplo, .git/config) seja incluído por um commit no histórico do projeto, ou adicionado na área de trabalho do projeto. De outra maneira, um usuário desavisado pode executar um git pull a partir de um repositório malicioso e então ter as meta-informações do seu repositório excluídas, ou ter extensões executáveis instaladas pelo dono do repositório de onde o git pull foi executado.

Segundo Junio, esta proteção se mostrou inadequada para os sistemas de arquivo que não diferenciam caracteres maiúsculos de minúsculos já que, um invasor pode incluir através de um commit, por exemplo, um arquivo .Git/anything para sobrescrever o arquivo correspondente no diretório .git. Todas as versões do WIndows usando FAT ou NTFS e versões do OS X usando HSF+, que é a versão padrão, são vulneráveis.

A vulnerabilidade também pode ser explorada de outras formas. De fato, o Windows e o OS X mapeiam alguns componentes do sistema de arquivos, que são diferentes do .git, para o .git (por exemplo, "git~1/config" no Windows e ".g\u200cit/config" no OS X são tratados como .git/config).

Esta vulnerabilidade não é conhecida por afetar sistemas Linux, a menos que ele use um sistema de arquivos que não diferencie maiúsculas e minúsculas, o que não e uma opção usual.

A Microsoft lançou correções para suas ferramentas, incluindo o Visual Studio 2013 RTM, o Visual Studio 2013 Update 4 e a extensão VS 2012 VSIX. Além disso, apesar da vulnerabilidade afetar somente clientes, a Microsoft "aplicou uma correção no VS Online e no Codeplex que previne que o servidor aceite comandos git push de arquivos .git/config."

A Apple também anunciou uma versão do XCode 6.2 beta3, para corrigir a vulnerabilidade: "As verificações envolvidas nos caminhos de arquivo não permitidos não contam para os casos de não diferenciação de caracteres maiúsculos/minúsculos ou de caracteres unicode. Este problema foi endereçado por meio da adição de novas verificações."

Finalmente, o GitHub anunciou que eles "completaram uma busca automatizada de todo o conteúdo existente no github.com procurando por conteúdo malicioso que possa ter sido enviado para o site antes desta vulnerabilidade ser descoberta, e implementaram uma alteração para garantir que "repositórios armazenados no github.com não possam conter nenhuma das estruturas de árvores de arquivos maliciosas que disparem a vulnerabilidade".

 

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Faça seu login para melhorar sua experiência com o InfoQ e ter acesso a funcionalidades exclusivas


Esqueci minha senha

Follow

Siga seus tópicos e editores favoritos

Acompanhe e seja notificados sobre as mais importantes novidades do mundo do desenvolvimento de software.

Like

Mais interação, mais personalização

Crie seu próprio feed de novidades escolhendo os tópicos e pessoas que você gostaria de acompanhar.

Notifications

Fique por dentro das novidades!

Configure as notificações e acompanhe as novidades relacionada a tópicos, conteúdos e pessoas de seu interesse

BT