Github memberi saya kesalahan ini di salah satu repositori saya.
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.
Ketergantungan tidak ditentukan dalam package.json
file kami . Menurut pemahaman saya, ini bukanlah praktik yang baik untuk menghapus package-lock.json
file dan membuatnya kembali. Namun, saya tidak dapat melihat cara lain untuk memperbaiki masalah ini. Jika saya mengabaikan kerentanan keamanan ini, kerentanan tersebut akan muncul lagi beberapa hari kemudian. Ada ide? Terima kasih!
github
npm
package-lock.json
Kaito
sumber
sumber
Jawaban:
Baru: sekarang, dengan npm @ 6 Anda dapat langsung menjalankannya
Jawaban lama:
Anda harus mencoba mengidentifikasi nama paket yang bermasalah, dan kemudian menjalankan
mengganti nama paket, tentu saja.
Ini akan menginstal versi terbaru dari paket tersebut, dan seringkali, versi terbaru telah memperbaiki masalah keamanan. Jika Anda memiliki batasan pada versi (misalnya: 1.2), Anda selalu dapat mencoba untuk:
dan versi patch terbaru akan diinstal
sumber
npm ls vulnerability-name
. Ini mencantumkan dependen kerentanan, yang kemudian dapat Anda perbarui / instal. (seperti disebutkan agak tidak jelas dalam jawaban @ RileyManda)package-name
didependencies
daripackage.json
. Saya tidak menginginkan ini.Untuk mengatasi ini:
Solusi1: Pertama temukan kerentanan: Menggunakan terminal Anda: cd ke dalam proyek Anda , lalu jalankan "npm ls hoek"
Dan terakhir: npm install bcrypt @ latest
Kemudian dorong proyek yang telah diperbarui ke git. (Yaitu melakukan komit baru).
Solusi 2:
jika opsi / solusi pertama tidak menyelesaikan masalah. Ubah versi secara manual di package-lock.json Anda. Ubah versi Anda secara manual dari 2.16.3 ke 4.2.1
Kemudian perbarui proyek Anda di GitHub (commit / push) Pastikan setiap versi hoek yang terjadi di versi package-lock.json Anda diubah menjadi 4.2.1
Atau jika Anda dapat menemukan cara untuk mengubah versi hoek / update hoek menggunakan npm, akan membuatnya lebih sederhana. (Seperti: npm update @ hoek..version ) .. atau hapus instalan dependensi tertentu kemudian instal ulang menggunakan bower atau npm.
sumber
Saya mengalami masalah yang sama dengan kerentanan keamanan lodash, dalam sebuah proyek yang saya bangun dengan benang. Github menandai ini sebagai masalah keamanan.
Saya mencoba jawaban dari @rileymanda di atas, menggunakan terminal: cd ke dalam proyek, lalu jalankan
npm ls lodash
.Ini mengungkap bahwa dalam kasus saya, kesalahannya ada pada skrip-react . Google Cepat untuk masalah dengan react-scripts dan lodash menemukan bahwa ini adalah masalah yang diketahui.
Saya mencoba berbagai hal untuk diperbaiki melalui benang - semuanya tidak berhasil.
npm ls lodash
masih menunjukkan versi rentan dari lodash yang digunakan.Setelah membaca blog Matt Turnbull tentang peningkatan npm, saya beralih dari benang kembali ke npm. (Hapus
yarn.lock
, hapus./node_modules
. Jalankannpm install
).npm ls lodash
sekarang menunjukkan versi dependensi terbaru yang digunakan - hore! Berkomitmen untuk github, dan sekarang senang karena kerentanannya telah hilang.Sepertinya benang mungkin berjuang untuk melepaskan masalah seperti itu (atau tidak dimaksudkan untuk).
Jika Anda mendapatkan masalah ini saat membangun dengan benang, cobalah beralih [kembali] ke npm!
sumber
Namun, inilah yang biasanya dilakukan dalam hal ini.
Lihat misalnya angular / angular-cli masalah 8534 , yang diselesaikan dengan PR 8535 .
Yang mengarah proyek tergantung seperti
frees-io/freestyle-opscenter-webclient
untuk memperbarui nyapackage-lock.json
: PR 31 .sumber
Cara termudah / termudah untuk memperbaikinya adalah:
npm install <dep>
npm uninstall <dep>
npm update
npm install
Dari: https://github.com/Microsoft/vscode/issues/48783#issuecomment-384873041
sumber
Sejak 23 Mei 2019, Anda sekarang memiliki " Dependabot: Perbaikan keamanan otomatis "
Lihat lebih lanjut di " Mengonfigurasi perbaikan keamanan otomatis "
sumber
npm audit
dan / ataunpm audit fix
.Ini berhasil untuk saya. hapus semua dependensi Anda dan instal lagi
Sebagai contoh
dari package.json lihat daftar dependensi Anda
Ikuti perintah untuk ini
sumber
Lihat detailnya
sumber
coba
npm audit fix
, ini akan menyelesaikan banyak peringatankemudian
npm i [package.name]@xxx
sebagai contoh:
npm i [email protected]
sumber