web-dev-qa-db-ja.com

hoekノードモジュールのGithub潜在的なセキュリティ脆弱性エラー

今日、githubは私のgithubリポジトリで次のエラーを表示しています:

依存関係の1つに潜在的なセキュリティ脆弱性が見つかりました。 ./package-lock.jsonで定義された依存関係には、セキュリティ上の脆弱性が確認されており、更新する必要があります。

[脆弱な依存関係の確認]ボタンをクリックすると、次のメッセージが表示されました。

5.0.3より前のhoekノードモジュールは、 'merge'を介した想定不変データ(MAID)の変更の脆弱性の影響を受けます

昨日まで、そのようなエラーは表示されていませんでした。 5日間以上、このリポジトリへのプッシュを行っていません。なぜそれが起こっているのか。

19
Yuvraj Patil

私は使用しました:rm package-lock.json && npm update && npm install。私にとって、これはhoek4.2.1に更新しました。これには修正も含まれています( このコメントごと 。)

編集:別のアプリで、rm package-lock.jsonnpm i hoek && npm up && npm i && npm un hoekまたはnpm i hoek && npm un hoek && npm up && npm iのいずれかを実行しました(順序を思い出せません)、より整列されている このコメント(ジェームズシングルトンから)

rm package-lock.jsonは存在する場合のみです。)

編集:まだ3番目のアプリで、npm outdatedを確認し、react-scripts-ts2.13.0からアップグレードする必要がありました。 2.15.1に。このため、package.jsonを手動で更新し、npm iを実行しました。完了したら、hoek4.2.1.に更新しました(具体的には、その1つのホールドアウト/プライマリコンポーネントを対象としています)。

編集:Zurb Foundation 6サイトの私のソリューション:

npm outdatedを使用して、すべてのパッケージをメジャーバージョンに更新しました。その後、私は走った:

npm i hoek@latest --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

2つのホールドアウトがありました。 browser-sync : 2.23.7およびnode-sass : 4.9.0、両方とも最新バージョン。関係ありません:GitHubの警告はコミット後に解決されました。

8
Keith DC

Npm update hoek && npm install hoekを使用し、パッケージを5.0.3に更新しました。

その後、私のgithubリポジトリから脆弱性アラートが消えました。

5
Uche Mukolo

上記のどれも私にとってはうまくいきませんでした。私のhoek依存関係はサブツリーの奥深くにありました。最初にnpm ls hoekそして次のようなものを得ました:

├── [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

その後、本当に更新する必要があるのはwatson-developer-cloudそれはトップレベルでhoekを使用するものだからです。

その後、npm install watson-developer-cloud@latestそしてそれはそれを解決しました。

5
Horea Porutiu

npm updateは動作するはずです脆弱なパッケージが直接プロジェクトの依存関係として宣言されている場合。しかし、通常は(hoekの場合のように)脆弱性layを置くパッケージでdown in you sub-dependencies tree

私の場合プロジェクトのすべての依存関係を更新しないことに決めたpackage-lock.jsonファイル全体を削除および再構築することにより)、私は次の(そして、もちろん、もっと時間を消費)アプローチ:

  • findすべてのoccurrencies私のpackage-lock.json内の脆弱なパッケージの
  • bubble up依存ツリーを見つけるための依存ツリートップレベルパッケージそれらをインポートする
  • アンインストールおよび再インストールそれらトップレベルパッケージ同じマイナーバージョンを使用

のような:

npm r package-1 package-2 && npm i package-1@^1.2.3 package-2@^1.2.3

このアプローチは、脆弱なパッケージが修正およびリリースされ、消費パッケージが脆弱なパッケージを パッチまたはマイナーバージョンに公開されている緩いバージョン番号 でインポートする場合にのみ機能します。

5
Andrea Carraro

実行してみてくださいnpm install [email protected]またはnpm install hoek@5プロジェクト内。

これにより、必要な最新バージョンのhoekがpackage.json依存関係にインストールされ、package-lock.jsonのhoekバージョンの上に上書きされます。

1

上記のすべてを試してみましたが、私には役に立たなかったので、私の根本的な原因を確認するために先に進みました。

npm ls hoek私に与えた:

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

hawkのバージョンが npm hawk のバージョンと異なることに気付いたので、npm i hawk --save。その後、再び通常のgitコマンドを実行しました。

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

そしてGithubに戻り、私のセキュリティ脆弱性が修正されました。

0
antzshrek

ソリューションが見つかりました こちら

基本的に、git bashでプロジェクトフォルダーのcdに次のコードを入力します。

npm i hoek  
npm uninstall hoek 
npm update 
npm install  

それから

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

GitHubプロジェクトページをもう一度確認すると、警告が消えます。

よろしく。

0
sheldonfish

はい、パッケージCVE-2018-3728は脆弱です。 4.2.1および5.0.3より前のバージョンのhoekは、プロトタイプ汚染に対して脆弱です。 hoekの影響を受けるバージョンは、バージョン5.0.2までです。修正は、バージョン4.2.1、5.0.3以降に更新します。詳細については、修正のプルリクエストをここで表示できます。 https://github.com/hapijs/hoek/pull/231/commits/5aed1a8c4a3d55722d1c799f2368857bf418d6df

0
Tsaela Pinto