PT-2021-5676 · Npm+3 · @Npmcli/Arborist+4

Publicado

2021-08-31

·

Atualizado

2024-06-15

·

CVE-2021-39135

CVSS v3.1

8.2

Alta

VetorAV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N
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.

Correção

Link Following

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

ALT-PU-2021-2920
ALT-PU-2021-2921
ALT-PU-2021-3615
ALT-PU-2022-1798
ALT-PU-2022-3069
ALT-PU-2022-3073
BDU:2022-00115
CVE-2021-39135
GHSA-GMW6-94GG-2RC2
MGASA-2021-0463
OESA-2022-1620
OPENSUSE-SU-2021:1552-1
OPENSUSE-SU-2021:1574-1
OPENSUSE-SU-2021:3940-1
OPENSUSE-SU-2021:3964-1
OPENSUSE-SU-2021_1552-1
OPENSUSE-SU-2021_1574-1
OPENSUSE-SU-2021_3940-1
OPENSUSE-SU-2021_3964-1
OPENSUSE-SU-2024:11616-1
SUSE-SU-2021:3886-1
SUSE-SU-2021:3940-1
SUSE-SU-2021:3964-1
SUSE-SU-2022:0101-1

Produtos afetados

@Npmcli/Arborist
Alt Linux
Debian
Suse
Npm