Node.js npm audit在我升级包后抱怨存在漏洞
我安装了一个名为Node.js npm audit在我升级包后抱怨存在漏洞,node.js,npm,underscore.js,Node.js,Npm,Underscore.js,我安装了一个名为bbfy@0.1.0在部分输出中,npm表示: found 1 high severity vulnerability run `npm audit fix` to fix them, or `npm audit` for details 所以我运行了npm audit fix,但它说它无法修复它: fixed 0 of 1 vulnerability in 202 scanned packages 1 vulnerability required manual rev
bbfy@0.1.0
在部分输出中,npm表示:
found 1 high severity vulnerability
run `npm audit fix` to fix them, or `npm audit` for details
所以我运行了npm audit fix
,但它说它无法修复它:
fixed 0 of 1 vulnerability in 202 scanned packages
1 vulnerability required manual review and could not be updated
因此,我运行npm audit,并得到以下消息:
$ npm audit
=== npm audit security report ===
Manual Review
Some vulnerabilities require your attention to resolve
Visit https://go.npm.me/audit-guide for additional guidance
High Arbitrary Code Execution
Package underscore
Patched in >=1.12.1
Dependency of bbfy
Path bbfy > underscore
More info https://npmjs.com/advisories/1674
found 1 high severity vulnerability in 202 scanned packages
1 vulnerability requires manual review. See the full report for details.
因此,我转到引用的网页,它告诉我将下划线升级到“versions 1.12.1或1.13.0-2或更高版本”,因此我运行以下命令:
$ npm i underscore@1.13.0-2
[snip]
+ underscore@1.13.0-2
updated 1 package and audited 202 packages in 2.726s
[snip]
found 1 high severity vulnerability
run `npm audit fix` to fix them, or `npm audit` for details
但仍在抱怨1个漏洞。我用npm audit
检查了它,发现了相同的下划线漏洞。那么我是否解决了问题?如果我没有,出了什么问题?NPM将安装一个包的多个副本,以满足依赖它的包(包括您自己的顶层项目)中冲突的版本要求
由于bbfy
软件包依赖于较旧版本,因此安装了较旧的易受攻击的下划线版本。您的npm i
命令所做的是在您请求的更高版本上安装另一个单独的下划线
。(除非您将在项目中直接使用下划线
,否则可以删除该选项。)
因为bbfy
已经五年没有更新了,所以解决这一问题的唯一方法是使用覆盖依赖关系。(这可能会产生错误的代码,但我怀疑下划线
是否以任何有问题的方式从1.8更改为1.12。)我的解决方案(这不是一个真正的解决方案,这就是我评论的原因)就是忽略它。