我刚刚从NPM安装了Flickity,并在运行后得到一份NPM审核安全报告,npm audit指出我对软件包tar上的任意文件覆盖存在严重的漏洞问题,这是node-sass的依赖项,您可以在此处看到:
High......................... Arbitrary File Overwrite
Package...................... tar
Patched in................... >=4.4.2
Dependency of................ node-sass [dev]
Path......................... node-sass > node-gyp > tar
More info.................... https://npmjs.com/advisories/803
Run Code Online (Sandbox Code Playgroud)
运行npm audit fix并不能解决问题,因为该漏洞需要手动检查。更多信息链接上的建议说要升级到版本4.4.2或更高版本。当我运行时,npm show tar version我意识到我正在运行版本4.4.8,这让我感到困惑。我去package-lock.json了解了node-gyp,它是node-sass的依赖项,它使用的是tar版本^ 2.0.0。
这使我感到困惑,因为我已经看到许多不同的tar版本是对其他软件包的依赖,但这node-sass > node-gyp > tar version是唯一的波纹管v4.4.2。为什么这样工作,为什么我必须手动修复它,以及如何手动修复/升级这个tar包?