4

跑步后npm audit我有(这只是其中之一)一个温和的警告

Moderate      │ Prototype pollution
Package       │ hoek
Patched in    │ > 4.2.0 < 5.0.0 || >= 5.0.3
Dependency of │ karma
Path          | karma > log4js > loggly > request > hawk > sntp > hoek

我可以看到这hoek是对业力的依赖(更进一步的链条)。查看 GitHub 上的 Karma 存储库,我可以看到已经提出了这个问题,但没有优先考虑立即修复。

这是我们现在必须接受的东西,直到他们更新了他们的依赖关系,还是我们可以告诉我们的应用程序使用更新版本hoek并应用于所有包?

4

2 回答 2

2

您可以从拉取请求或提交中 npm 安装依赖项的固定版本。例如

npm install github:winstonjs/node-loggly#pull/79/head

然后删除 package.json 中添加的行,例如"loggly": "github:winstonjs/node-loggly#pull/79/head"

在 package-lock.json 中搜索 loggly 及其显示位置"version": "<some git url>",删除 url 并将其替换为适当的版本号,例如“1.1.1”。

于 2018-07-15T23:27:29.870 回答
1

问题是loggly很长时间没有更新,并且被硬编码为request使用hoek具有指定漏洞的版本的版本。有未解决的问题

考虑到hoek包在这里的作用,它不太可能引起真正的安全问题。

从用户的角度来看,可以通过使用修复了此依赖关系的分支来修复安全问题,例如此拉取请求

"karma": "^2.0.2",
"loggly": "github:winstonjs/node-loggly#pull/79/head"

由于loggly分支版本与 中的约束匹配log4js,因此将原始版本替换loggly为固定版本(可能需要清除node_modules才能生效)。

这引起

400 错误请求 - POST https://registry.npmjs.org/-/npm/v1/security/audits

的错误npm audit,所以它现在可能应该保持原样。

于 2018-06-08T12:01:35.003 回答