NPM-AUDIT发现高漏洞.我应该怎么做?


npm audit

在我的项目上运行并得到了这个

@angular-devkit/build-angular 的高命令注入
依赖性 [dev]

路径@angular-devkit/build-angular> @ngtools/webpack>tree-kill

更多信息 https://npmjs.com/advisories/1432

高命令注入

包树杀

在>=1.2.2 中修补

@angular-devkit/build-angular [dev] 的依赖关系

路径 @angular-devkit/build-angular> tree-kill

更多信息 https://npmjs.com/advisories/1432

树杀需要更新,但它是一个角度,不是我的。那又怎样?需要等待 angular-team 将自己的 package.json 更新到较新版本的 tree-kill 吗?

您可以解决此问题,而无需等待软件包的新版本@angular-devkit/build-angular

只需执行以下步骤:

  1. 通过添加具有正确版本的软件包tree-killresolutions部分来更新您的package.json文件:
"resolutions": {
"tree-kill": "1.2.2"
}
  1. 通过运行命令更新package-lock.json
npx npm-force-resolutions
    重新安装
  1. 项目中的 NPM 包:
rm -r node_modules
npm install

运行npm audit以检查您的项目是否不再有此问题。并且不要忘记提交修改后的文件package.jsonpackage-lock.json.

有关 NPM 部队决议的更多信息。

我今天遇到了同样的问题,我通过以下方式修复了它:

  1. 从 node_modules 文件夹中删除树终止包。
  2. 删除 package-lock.json 文件。
  3. 转到 node_modules 文件夹中的 @angular-devkit/build-angular 文件夹并编辑 package.json 文件;将 tree-kill 版本从 1.2.1 更改为 1.2.2
  4. 转到node_modules文件夹中的@ngtools/webpack 文件夹,然后执行与步骤 3 相同的操作。

之后运行 npm 安装。

我也遇到了这个问题,经过一些研究,我发现了一些东西:

NPM 在"审核修复"上引发错误 - 不支持配置的注册表

当然,这是关于另一个问题,但是,通过调整那里给出的解决方案,它解决了我的问题。

所以:

  • 删除树杀的node_modules文件夹
  • 像以前一样编辑 package-lock.json 文件,但改用树终止模块。
  • 不要忘记在最后运行npm install

我希望我已经足够清楚了。

检查 GitHub 存储库以查看是否正在修复。我发现了这个问题:https://github.com/angular/angular-cli/issues/16629 和删除依赖项的拉取请求 (https://github.com/angular/angular-cli/pull/15894(。

将以下代码添加到package.json

"resolutions": {
"tree-kill":"1.2.2"
}

删除所有节点模块:

rm -r node_modules

将新版本 1.2.2 的 package-lock.json 更新为:

npx npm-force-resolutions

现在安装节点模块:

npm install

这对我有用。

  1. 从 node_modules 文件夹中删除 tree-kill 包并删除
    package-lock.json 文件。

  2. 查找@angular-devkit/build-angular node_modules文件夹,然后编辑 package.json 文件; 将树杀戮版本从 1.2.1 更改为 1.2.2 查找
    @ngtools/webpack 在node_modules文件夹中,然后编辑 package.json 文件; 将树杀版本从 1.2.1 更改为 1.2.2

  3. 运行 npm 安装。

将 package.json 中的 @angular-devkit/build-angular 版本更新为以下内容:

"@angular-devkit/build-angular": "0.13.10"

它对我有用。

删除node_modules并重新安装没有任何问题。

最新更新