我最近启动了一个新的Vue.js项目。在最近一次提交GitHub之后,我收到了以下Dependabot通知:
在Packe-lock.json中定义的节点伪造< 0.10.0中检测到的高严重性安全漏洞。package-lock.json更新建议:节点-伪造~> 0.10.0。
如何进行更新节点伪造?我做过npm的审计修正。
节点伪造只存在于我的包-lock.json文件中,并且是“自签名”依赖项所必需的。
发布于 2020-09-15 11:26:54
你可以试试
npm update这应该会将所有包更新到最新版本,同时尊重package.json /Packy-lock.json中的语义版本控制规则。
您还可以尝试允许Dependabot生成一个pull请求来修复这个问题。如果您选择了警报本身,您应该会看到如下按钮:

这将尝试创建一个拉请求(这并不总是成功的),通常需要几分钟。一旦完成,您就可以检查和合并。
发布于 2020-09-25 12:27:40
因果关系:
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 的库更新自己的依赖项。
发布于 2020-09-25 06:12:04
如果npm update不解决这个问题,我会删除package-lock.json & node_modules,然后运行npm install来重新创建两者。
我预计这是一个快速和肮脏的修复&可能不是理想的团队开发,但这是一个高度严重的安全漏洞,这是超过3周,需要解决。一定要在git diff上运行package-lock.json &验证它没有更新任何不应该更新的内容。
对我来说,Dependabot并没有像通常那样创建一个PR,因为缺陷在节点伪造0.9.0中,补丁在0.10.0中,这是一个自我签名的改变。npm audit没有发现任何漏洞& npm update做了几次更新,但没有将节点伪造为0.10.0,也没有自签名到1.10.8 (更新其节点伪造版本引用)。我使用webpack开发服务器3.11.0,它依赖于自签名^1.10.7。在重新创建package-lock.json之后,webpack-dev-server引用保持不变,但自签名和节点伪造版本被更新,这正是我想要的。
https://stackoverflow.com/questions/63900727
复制相似问题