Bonne façon de corriger une vulnérabilité potentielle à la sécurité dans une dépendance définie dans package-lock.json

Github m'a donné cette erreur sur un de mes dépôts.

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.

La dépendance n'est pas défini dans notre package.json fichier. À ma connaissance, ce n'est pas une bonne pratique de supprimer le package-lock.json le limer et le régénérer. Cependant, je ne vois aucun autre moyen de corriger ce problème. Si je rejette cette vulnérabilité de sécurité, elle apparaîtra de nouveau quelques jours plus tard. Des idées? Merci!

34
demandé sur Kaito 2018-03-31 02:58:28

4 réponses

Vous devriez essayer d'identifier la problématique nom du paquet, puis exécutez

npm install package-name

remplacer le nom du paquet, évidemment.

cela installera la dernière version du paquet, et très souvent, la dernière version a corrigé le problème de sécurité. Si vous avez une contrainte sur la version (par exemple: la 1.2), vous pouvez toujours essayer:

npm install package-name@^1.2

et la dernière version corrigée sera installé

Nouveau: maintenant, avec npm@6 vous pouvez directement exécutez

npm audit fix
10
répondu Jo Takion 2018-06-02 08:44:51

Pour résoudre ce problème:

Solution 1: Trouvez d'abord la vulnérabilité: utiliser votre terminal: cd dans votre projet, puis exécutez "npm ls hoek"

Et enfin: npm install bcrypt@plus tard

puis pousser le projet mis à jour à git.(j'.e effectuer une nouvelle commettre).

Solution 2:

si la première option/une solution ne résout pas le problème.Changer de version manuellement dans votre forfait-lock.json. Changez votre version manuellement de 2.16.3 à 4.2.1

"hoek": {
      "version":  "4.2.1",
      "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz",
      "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
      "dev": true

puis mettre à jour votre projet sur GitHub (commit / push) Assurez-vous que chaque occurrence de version de hoek dans votre package-lock.la version json est changée en 4.2.1

alternativement si vous pouvez trouver un moyen de changer la version de hoek/mettre à jour hoek en utilisant npm,rendra les choses beaucoup plus simples.(quelque chose comme : npm mise à jour @hoek..version)..ou désinstaller la dépendance spécifique ensuite, réinstallez-le en utilisant bower ou npm.

6
répondu RileyManda 2018-06-29 19:28:22

à ma connaissance, ce n'est pas une bonne pratique de supprimer le package-lock.fichier json et de la régénérer.

pourtant, c'est ce qui se fait habituellement dans ce cas.

Voir, par exemple,angulaire angulaire-cli question 8534, qui est résolu par PR 8535.

Cela mène à un projet dépendant comme frees-io/freestyle-opscenter-webclientmise à jour de son package-lock.json: PR 31.

1
répondu VonC 2018-03-31 04:16:08

la façon la plus simple/facile de corriger ceci est:

  1. npm install <dep>
  2. npm uninstall <dep>
  3. npm update
  4. npm install

:https://github.com/Microsoft/vscode/issues/48783#issuecomment-384873041

1
répondu adrianmc 2018-08-31 18:57:49