it-swarm.com.de

Github-Fehler in Bezug auf Sicherheitslücken für das Hoek-Knotenmodul

Heute zeigt github folgenden Fehler in meinem Github-Repository:

Wir haben eine potenzielle Sicherheitslücke in einem Ihrer .__ gefunden. Abhängigkeiten. Eine in ./package-lock.json definierte Abhängigkeit hat Sicherheitslücken und sollten aktualisiert werden.

Beim Klicken auf die Schaltfläche "Anfällige Abhängigkeit überprüfen" wurde die folgende Meldung angezeigt: 

hoek Knotenmodul vor 5.0.3 leidet an einer Modifikation von MAID-Sicherheitsanfälligkeit durch "Zusammenführen"

Bis gestern zeigte es keinen solchen Fehler. Ich habe seit mehr als 5 Tagen keinen Push auf dieses Repository durchgeführt. Irgendeine Idee, warum es passiert.

19
Yuvraj Patil

Ich habe verwendet: rm package-lock.json && npm update && npm install. Für mich wurde diese hoek auf 4.2.1 aktualisiert, die auch den Fix enthält ( per this comment .)

Edit: In einer anderen App habe ich rm package-lock.json und entweder npm i hoek && npm up && npm i && npm un hoek oder npm i hoek && npm un hoek && npm up && npm i (kann sich nicht an die Reihenfolge erinnern) ausgeführt werden, wobei mit diesem Kommentar (von JamesSingleton) ausgerichtet ist.

(rm package-lock.json ist nur wenn es existiert.)

Edit: In einer dritten App habe ich npm outdated überprüft und festgestellt, dass ich react-scripts-ts von 2.13.0 auf 2.15.1 aktualisieren musste. Dazu habe ich den package.json manuell aktualisiert und dann einfach npm i ausgeführt. Sobald dies erledigt ist, wurde hoek auf 4.2.1. aktualisiert (insbesondere für diese Holdout/Primärkomponente).

Edit: Meine Lösung für eine Zurb Foundation 6 Site:

Ich habe alle meine Pakete mit npm outdated auf ihre Hauptversionen aktualisiert. Ich lief dann:

npm i [email protected] --save && npm up hoek

npm i boom hawk sntp uncss gulp-uncss --save && npm up boom hawk sntp uncss gulp-uncss && npm un boom hawk sntp gulp-uncss uncss --save

Es gab zwei Holdouts; browser-sync : 2.23.7 und node-sass : 4.9.0, jeweils in der neuesten Version. Egal: Die GitHub-Warnung wurde nach dem Commit behoben.

8

Ich habe npm update hoek && npm install hoek verwendet und das Paket wurde auf 5.0.3 aktualisiert.

Die Schwachstellenwarnung verschwand danach aus meinem Github Repo.

5
Uche Mukolo

Keines der oben genannten Dinge funktionierte für mich. Meine Hoek-Abhängigkeit war tief in den Teilbäumen. Ich habe zuerst npm ls hoek gemacht und so etwas bekommen: 

├── [email protected]
└─┬ [email protected]
  ├─┬ [email protected]
  │ └─┬ [email protected]
  │   ├─┬ [email protected]
  │   │ └── [email protected]  deduped
  │   ├─┬ [email protected]
  │   │ └─┬ [email protected]
  │   │   └── [email protected]  deduped
  │   ├── [email protected]
  │   └─┬ [email protected]
  │     └── [email protected]  deduped
  └─┬ [email protected]
    └─┬ [email protected]
      └─┬ [email protected]
        ├─┬ [email protected]
        │ └── [email protected]  deduped
        ├── [email protected]
        └─┬ [email protected]
          └── [email protected]  deduped

Ich habe dann gesehen, dass das, was wirklich aktualisiert werden muss, watson-developer-cloud ist, da dies die Verwendung von hoek auf der obersten Ebene ist. 

Ich habe dann npm install [email protected] gemacht und das hat es gelöst.

4
Horea Porutiu

npm update sollte nur funktionieren, wenn das verwundbare Paket als direkte Abhängigkeit des Projekts deklariert ist. In der Regel (wie im Fall von hoek) liegen vulnerabilities in den Paketen, die in Ihrem Unterabhängigkeits-Baum ablegen.

Da in meinem Fall ich beschloss, nicht alle Abhängigkeiten meines Projekts zu aktualisieren (durch Löschen und Neuerstellen der gesamten package-lock.json-Datei), habe ich mich für den folgenden (und natürlich zeitaufwendigeren) Ansatz entschieden:

  • find alle Vorkommen des anfälligen Pakets in meinem package-lock.json
  • bubble up den Abhängigkeitsbaum, um herauszufinden, welche Top-Level-Pakete diese importieren
  • uninstall und erneut installieren die Top-Level-Pakete, die dieselbe Nebenversion verwenden

Mögen:

npm r package-1 package-2 && npm i [email protected]^1.2.3 [email protected]^1.2.3

Dieser Ansatz funktioniert nur, wenn das verwundbare Paket behoben und freigegeben wurde und die konsumierenden Pakete das verwundbare Paket mit einem lose Versionsnummer für Patch- oder Nebenversionen importieren.

4
Andrea Carraro

Führen Sie in Ihrem Projekt npm install [email protected] oder npm install [email protected] aus.

Dadurch wird die erforderliche neueste Version von hoek in package.json-Abhängigkeiten installiert, die über der hoek-Version in package-lock.json überschreiben.

1

Eine Lösung gefunden hier

Geben Sie im Allgemeinen in git bash cd in Ihren Projektordner die folgenden Codes ein:

npm i hoek  
npm uninstall hoek 
npm update 
npm install  

dann 

git add .
git commit -m 'update-hoek'
git Push Origin master 

Überprüfen Sie nun Ihre GitHub-Projektseite erneut. Die Warnung sollte verschwinden. 

Grüße.

1
sheldonfish

Ich habe alle oben genannten Schritte ausprobiert, aber nicht für mich gearbeitet, also habe ich die Ursache meiner Ursache untersucht.

Ich lief npm ls hoek was mir gab:

├─┬ [email protected]
│ └─┬ [email protected]
│   └─┬ [email protected]
│     ├─┬ [email protected]
│     │ └── [email protected]
│     ├── [email protected]
│     └─┬ [email protected]
│       └── [email protected]
└── [email protected]

Ich habe die Version meiner hawk gegenüber der auf npm hawk festgestellt, also habe ich npm i hawk --save ausgeführt. Danach habe ich wieder meine normalen Git-Befehle ausgeführt:

git add .
git commit -m 'whatever_message'
git Push 

Und zurück zu Github und meine Sicherheitslücke wurde behoben.

0
antzshrek

Ja, das Paket CVE-2018-3728 ist anfällig. Die Versionen von hoek vor 4.2.1 und 5.0.3 sind anfällig für Prototypverschmutzung. Die betroffenen Versionen von hoek sind bis Version 5.0.2. Die Aktualisierung erfolgt auf Version 4.2.1, 5.0.3 oder höher . Für weitere Informationen können Sie die Fix-Pull-Anforderung hier anzeigen: https://github.com/hapijs/hoek/pull/231/commits/5aed1a8c4a3d55722d1c799f2368857bf418d6df

0
Tsaela Pinto