GitHub corrige 7 falhas encontradas em pacotes Node.js

GitHub corrige 7 falhas encontradas em pacotes Node.js

Por Dácio Castelo Branco | Editado por Claudio Yuge | 09 de Setembro de 2021 às 15h40
Divulgação/GitHub

O GitHub lançou atualizações para corrigir vulnerabilidades graves encontradas em pacotes de programação Node.js tar e @npmcli/arborist disponíveis em sua plataforma. As falhas foram descobertas a partir de relatórios enviados pelo programa de recompensa de bugs do site. 

O pacote Node.js-tar é usado por desenvolvedores para simular o sistema de arquivo .tar no Unix, enquanto @npmcli/arborist foi desenvolvido para gerenciar módulos desses mesmos dados. O Node.js-tar tem em média mais de 22 mil downloads semanais, enquanto o @npmcli/arborist atinge cerca de 405 mil transferências no mesmo período, mostrando como as falhas podem atingir muitos usuários.

No total, sete vulnerabilidades foram descobertas. A maioria delas permite tanto que arquivos sejam sobrescritos como também a execução arbitrária de códigos.

Quer ficar por dentro das melhores notícias de tecnologia do dia? Acesse e se inscreva no nosso novo canal no youtube, o Canaltech News. Todos os dias um resumo das principais notícias do mundo tech para você!

As sete falhas são as seguintes:

  • CVE-2021-32803 (tar): Permite que arquivos tar maliciosos possam criar ou sobrescrever arquivos arbitrários com os privilégios do processo usando tar. Considerada uma vulnerabilidade de alto-impacto. 
  • CVE-2021-32804 (tar): Permite que pacotes npm maliciosos possam criar/sobrescrever arquivos com os privilégios do usuário que está executando a instalação, levando à execução do código. Considerada uma vulnerabilidade de alto-impacto. 
  • CVE-2021-37701 (tar): um problema de separador de caminho em nomes de arquivo pode permitir que arquivos tar maliciosos possam sobrescrever arquivos de forma arbitrária, com o mesmo nível de privilégio que executa o tar. Considerada uma vulnerabilidade de alto-impacto. 
  • CVE-2021-37712 (tar): conversões Unicode e semântica de nome de arquivo do Windows 8.3 podem causar erros no cache de diretório e desvios de verificação dos links, levando à criação e substituição arbitrárias de arquivos. Considerada uma vulnerabilidade de alto-impacto. 
  • CVE-2021-37713 (tar): Criação/substituição arbitrária de arquivos no Windows por meio de erros na interpretação dos caminhos dos arquivos. Pacotes npm maliciosos podem criar e sobrescrever arquivos fora de sua raiz de instalação, com privilégios de usuário. Considerada uma vulnerabilidade de alto-impacto. 
  • CVE-2021-39134 (@npmcli/arborist:): Um problema em como os links simbólicos na árvore node_modules são tratados. A exploração pode resultar em pacotes maliciosos sobrescrevendo arquivos fora de uma raiz de instalação com privilégios de usuário. Considerada uma vulnerabilidade de impacto médio. 
  • CVE-2021-39135 (@npmcli/arborist:) : Esta vulnerabilidade também afeta o tratamento de links simbólicos, especificamente quando pacotes não confiáveis são instalados em sistemas de arquivos que não diferenciam maiúsculas de minúsculas. Considerada uma vulnerabilidade de impacto médio. 

O processo para descoberta

O GitHub, em postagem oficial sobre as falhas, comentou que recebeu relatórios de Robert Chen e Philip Papurt, entre 21 de julho e 13 de agosto, por meio do programa de recompensas de detecção de bugs da plataforma. As análises dos dois pesquisadores mostravam as falhas de defesa afetando os pacotes. Segundo o GitHub, os relatórios levaram a empresa a começar sua própria análise, levando à descoberta de outros problemas de segurança.

O GitHub solicitou aos gerentes de projeto que atualizem o npm CLI (um gerenciador de pacotes) para a versão v6.14.15, v7.21.0 ou mais recente. Caso o Node.js estiver em uso separado, a organização recomenda uma atualização para as versões 12, 14 ou 16, todas já tendo o patch para correção da falha incluso. Os usuários que desejam somente baixar o .Tar corrigido podem também atualizar o pacote para as versões 4.4.19, 5.0.11 e 6.1.11 e por fim, a versão 2.8.3 do @npmcli/arborist, que corrige os bugs, também está disponível.  

Fonte: GitHub, Bleeping Computer

Gostou dessa matéria?

Inscreva seu email no Canaltech para receber atualizações diárias com as últimas notícias do mundo da tecnologia.