【发布时间】:2018-12-24 21:44:23
【问题描述】:
当我运行npm install 时,它会显示found 33 vulnerabilities (2 low, 31 moderate)
run `npm audit fix` to fix them, or `npm audit` for details。
但是,npm audit fix 输出 up to date in 11s
fixed 0 of 33 vulnerabilities in 24653 scanned packages
33 vulnerabilities required manual review and could not be updated
review 是否意味着它不应该由用户修复?
当我运行npm audit 时,它给了我表格列表,类似于:
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ Low │ Prototype Pollution │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ lodash │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in │ >=4.17.5 │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ browser-sync [dev] │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ browser-sync > easy-extender > lodash │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://nodesecurity.io/advisories/577 │
└───────────────┴──────────────────────────────────────────────────────────────┘
在此示例中,链接页面的补救部分显示Update to version 4.17.5 or later.。但是,在/node_modules/browser-sync/package.json 中有几行:
"devDependencies": {
"lodash-cli": "4.17.5",
}
并且不再有 lodash 依赖项。所以它应该已经是 v4.17.5。我还检查了具有var VERSION = '4.17.10'; 行的/node_modules/lodash/lodash.json。在/node_modules/lodash/package.json 中有这些行:
"_from": "lodash@^4.17.4",
"_id": "lodash@4.17.10",
我相信“_id”中显示的版本,而不是“_from”中显示的版本,所以版本是正确的,但漏洞仍然出现在审核列表中。
我还是 node.js 的新手,这些消息让我很困惑。有什么办法可以手动修复或删除这些消息,我无能为力?
【问题讨论】: