npm审计修复无法修复低漏洞

问题描述 投票:3回答:1

我正在使用nightmare进行测试。运行npm审核后,我得到关于lodash原型污染的警告。我试图通过运行npm audit fix但没有结果来解决这个问题。之后我尝试使用--force但仍然得到:

fixed 0 of 1 vulnerability in 2108 scanned packages
  1 vulnerability required manual review and could not be updated

任何想法我该如何解决?

这是一个截图:enter image description here

npm lodash nightmare npm-audit
1个回答
1
投票

npm依赖项不会自动升级到更高版本。因此,如果包A依赖于包B与版本规范,如:

// A/package.js
dependencies: {
  "B": "^2.1.3"
}

然后npm将使B保持最新版本2.x.y,其中x> = 1和(如果x = 1,则y> = 3,如果x> 1,则y> = 0)。

但是,如果安全修复程序发生在B版本3.v.w中,那么安全问题将保留在您的npm存储库中。

这里的问题是,为了能够使用版本3.v.w,您可能必须更新A,因为它可能在2和3之间存在重大更改(即更改了函数名称或删除了对某个属性的支持。)

以下是在react-idle-timer模块中打破更改的示例:

Migration from v3 to v4

版本4中有一些重大更改:

  • 虽然仍然能够渲染孩子,但从版本4开始,我们不会将孩子传给IdleTimer。除非你对shouldComponentUpdate真的很好,否则你应该避免使用IdleTimer作为包装组件。
  • startOnLoad属性已更名为startOnMount,以便在React环境中更有意义。
  • activeAction酒店已更名为onActive
  • idleAction酒店已更名为onIdle
© www.soinside.com 2019 - 2024. All rights reserved.