PT-2021-5676
CVE-2021-39135
·
Publicado
2021-08-31
·
Atualizado
2026-10-21
Descrição por
CVSS 3.1
8.2
AltaMétricasAV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H
Nome do software vulnerável e versões afetadas
Versões do @npmcli/arborist anteriores à 2.8.2
Versões do npm anteriores à 7.20.7
Descrição
O problema está relacionado à biblioteca
@npmcli/arborist, que calcula árvores de dependências e gerencia a hierarquia da pasta node modules para a interface de linha de comando do npm. Se a pasta node modules do projeto raiz ou de qualquer uma de suas dependências for substituída por um link simbólico, isso poderia permitir que o Arborist gravasse dependências de pacotes em qualquer local arbitrário no sistema de arquivos. Um invasor poderia explorar essa vulnerabilidade fornecendo um repositório git e instruindo o alvo a executar npm install --ignore-scripts na raiz. Isso pode ser bem-sucedido porque npm install --ignore-scripts normalmente não é capaz de fazer alterações fora do diretório do projeto, portanto pode ser considerado seguro.Recomendações
Para versões do @npmcli/arborist anteriores à 2.8.2, atualize para a versão 2.8.2 ou posterior.
Para versões do npm anteriores à 7.20.7, atualize para a versão 7.20.7 ou posterior.
Como solução alternativa temporária, considere verificar se a pasta
node modules é um diretório real antes de executar npm install.Não execute
npm install em bases de código não confiáveis sem primeiro garantir que o diretório node modules no projeto não seja um link simbólico.Explorabilidade
Correção
Impactos
Fornecedores
Produtos afetados
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾