在节点伪造中检测到漏洞

时间:2020-09-15 11:19:00

标签: node.js vue.js package.json

我最近开始了一个新的Vue.js项目。在我最新的GitHub提交之后,我收到了以下Dependabot通知:

在package-lock.json中定义的node-forge <0.10.0中检测到的已知高严重性安全漏洞。建议使用package-lock.json更新:node-forge〜> 0.10.0。

如何更新节点伪造?我已经运行了npm审核修复程序。

node-forge仅在我的package-lock.json文件中,并且是“自签名”依赖项所必需的。

4 个答案:

答案 0 :(得分:4)

您可以尝试

npm update

这应该将所有软件包更新为最新版本,同时遵守package.json / package-lock.json中的语义版本控制规则。

您还可以尝试允许Dependabot生成拉取请求以解决此问题。如果您选择警报本身,则应该会看到一个类似这样的按钮:

Dependabot

这将尝试创建拉取请求(这不会总是成功),通常需要几分钟。完成此操作后,您可以查看和合并。

答案 1 :(得分:0)

如果npm update无法解决它,我通过删除package-lock.jsonnode_modules,然后运行npm install来重新创建两者来修复它。

我希望这是一个快速修复程序,可能不适合团队开发,但这是一个严重性高的安全漏洞,已经存在3个多星期了,需要解决。确保在git diff上运行package-lock.json并确认它没有更新不应有的内容。

对我而言,Dependabot并未像通常那样创建PR,因为缺陷位于node-forge 0.9.0中,而补丁位于0.10.0中,该自签名被认为是一个重大更改。 npm audit未发现任何漏洞,并且npm update进行了几次更新,但未将node-forge更新为0.10.0,也未自签名为1.10.8(这更新了它的node-forge版本参考) )。我正在使用webpack-dev-server 3.11.0,它依赖于自签名^ 1.10.7。重新创建package-lock.json之后,webpack-dev-server引用保持不变,但是自签名和节点伪造版本已更新,这正是我想要的。

答案 2 :(得分:0)

node-forge 0.9.0中的漏洞最近已在自签名中得到修复。尝试更新自签名。它为我解决了这个问题。 请检查链接以供参考。 Selfsigned github link

答案 3 :(得分:0)

原因:

node-forge@0.9.0需要更新为node-forge@^0.10.0

解决方案(NPM)

rm -rf node-modules

rm package.lock

npm cache clean

npm i

解决方案(纱线)

rm -rf node_modules

rm yarn.lock

yarn cache clean

yarn

说明

这应导致正在使用node-forge的库更新其自己的依赖项。