O Github me deu este erro em um dos meus repositórios.
We found a potential security vulnerability in one of your dependencies.
A dependency defined in ./package-lock.json has known security vulnerabilities
and should be updated.
A dependência não está definida em nosso package.json
arquivo. No meu entendimento, não é uma boa prática excluir o package-lock.json
arquivo e gerá-lo novamente. No entanto, não consigo ver nenhuma outra maneira de corrigir esse problema. Se eu descartar essa vulnerabilidade de segurança, ela aparecerá novamente alguns dias depois. Alguma ideia? Obrigado!
github
npm
package-lock.json
Kaito
fonte
fonte
Respostas:
Novo: agora, com npm @ 6 você pode executar diretamente
Resposta antiga:
Você deve tentar identificar o nome do pacote problemático e, em seguida, executar
substituindo o nome do pacote, obviamente.
Isso instalará a versão mais recente do pacote e, muitas vezes, a versão mais recente corrigiu o problema de segurança. Se você tiver uma restrição na versão (por exemplo: 1.2), você sempre pode tentar:
e a última versão corrigida será instalada
fonte
npm ls vulnerability-name
. Isso lista os dependentes de vulnerabilidade, que você pode atualizar / instalar. (como mencionado de forma pouco clara na resposta de @RileyManda)package-name
emdependencies
depackage.json
. Eu não quero isso.Para resolver isso:
Solução 1: primeiro encontre a vulnerabilidade: Usando seu terminal: faça cd em seu projeto e execute "npm ls hoek"
E finalmente: npm install bcrypt @ latest
Em seguida, envie o projeto atualizado para git (ou seja, execute um novo commit).
Solução 2:
se a primeira opção / solução não resolver o problema. Altere a versão manualmente em seu pacote-lock.json. Altere sua versão manualmente de 2.16.3 para 4.2.1
Em seguida, atualize seu projeto no GitHub (commit / push) Apenas certifique-se de que cada ocorrência de versão hoek em sua versão package-lock.json seja alterada para 4.2.1
Alternativamente, se você descobrir uma maneira de alterar a versão hoek / atualizar hoek usando npm, tornará as coisas muito mais simples. (Algo como: npm update @ hoek..version ) .. ou desinstalar a dependência específica e reinstalá-la usando bower ou npm.
fonte
Eu estava tendo o mesmo problema com uma vulnerabilidade de segurança lodash, em um projeto que estava construindo com fio. Github sinalizou isso como questões de segurança.
Tentei a resposta de @rileymanda acima, usando um terminal: cd para o projeto e depois execute
npm ls lodash
.Isso revelou que, no meu caso, o erro estava nos scripts de reação . O Quick Google para problemas com scripts de reação e lodash descobriu que esse era um problema conhecido.
Tentei várias coisas para consertar com fio - tudo sem sucesso.
npm ls lodash
ainda mostrava a versão vulnerável de lodash em uso.Depois de ler o blog de Matt Turnbull sobre melhorias no npm , mudei de yarn de volta para npm. (Excluir
yarn.lock
, excluir./node_modules
. Executarnpm install
).npm ls lodash
agora mostrou as últimas versões de dependência sendo usadas - viva! Comprometido com o github, agora estava feliz porque a vulnerabilidade havia sumido.Parece que o Yarn está lutando para resolver esses problemas (ou não é essa a intenção).
Se você está tendo esse problema ao construir com fio, tente alternar [voltar] para npm!
fonte
No entanto, isso é o que geralmente é feito neste caso.
Veja, por exemplo, o problema angular / angular-cli 8534 , que foi resolvido pelo PR 8535 .
Isso leva um projeto dependente
frees-io/freestyle-opscenter-webclient
a atualizar seupackage-lock.json
: PR 31 .fonte
A maneira mais simples / fácil de corrigir isso é:
npm install <dep>
npm uninstall <dep>
npm update
npm install
De: https://github.com/Microsoft/vscode/issues/48783#issuecomment-384873041
fonte
Desde 23 de maio de 2019, agora você tem " Dependabot: correções de segurança automatizadas "
Veja mais em " Configurando correções de segurança automatizadas "
fonte
npm audit
e / ounpm audit fix
.Isso funciona para mim. desinstale todas as suas dependências e instale-o novamente
Por exemplo
em package.json veja a lista de suas dependências
Siga o comando para isso
fonte
Veja detalhes
fonte
tente
npm audit fix
, vai resolver muitos avisosentão
npm i [package.name]@xxx
por exemplo:
npm i [email protected]
fonte