对于我的项目,我使用了一个包,Seriate。
npm install seriate
但是,运行它会得到以下结果:
发现17个漏洞(9个低、1个中等、7个高)
我运行了npm audit和npm audit fix,但什么也没有。我还研究了依赖项,Lodash似乎有一个安全问题(据推测固定在4.17.11)。
我怎么才能修好这些?我已经尝试过像这样更新npm install lodash@4.17.11:然而,这也不起作用。
另外,这是否需要担心,它是从本地服务器上运行的,而本地服务器本身是安全的?
谢谢你的帮助
发布于 2019-07-03 09:43:57
npm audit发现的安全问题不能自动修复(即通过将包版本更改为等效的安全版本),它们需要手动检查,因此不能由npm audit fix简单地解决。npm audit fix --force将是一种选择(注意:引入破坏更改!)但对我来说,这17个问题都没有解决。
在安装当前版本的seriate时,已经需要/安装了lodash@4.7.11,因此npm i lodash@4.7.11不会更改任何内容。
在你的情况下,这些问题是否危险,确实需要你进行调查。请注意,并不是因为lodash不安全,而是只在某些情况下使用lodash,只在某些机器上使用,只对某些功能使用,等等。首先阅读与安全问题相关的NPM警告(如这一个)。
发布于 2019-09-04 21:42:12
正如尼诺所提到的,npm audit不会自动解决Lodash安全漏洞。
如果发现了安全漏洞,但没有可用的修补程序,审计报告将提供有关该漏洞的信息,以便进一步研究。示例审计报告的快照在这里。
检查缓解因子
检查“More info”字段中的安全建议,查看可能允许您在有限情况下继续使用带有漏洞的包的缓解因素。例如,该漏洞可能只存在于特定操作系统上使用的代码或调用特定函数时。
如果存在修补程序,则更新相关包,
如果存在修补程序,但依赖于带有该漏洞的包的包尚未更新以包含固定版本,则可能需要在依赖包存储库上打开拉或合并请求以使用固定版本。
npm update更新包的副本修复漏洞
如果不存在修补程序,则可能需要建议更改,以解决包存储库中的拉或合并请求中的包维护人员的漏洞。
https://stackoverflow.com/questions/56867099
复制相似问题