You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular项目中loader-utils高风险ReDoS漏洞修复求助

修复Angular项目中loader-utils高安全风险问题的方案

你遇到的问题是项目依赖的loader-utils(3.0.0-3.2.0版本)存在两处正则表达式拒绝服务(ReDoS)高风险漏洞,且这些漏洞是通过@angular-devkit/build-angular间接引入的,对应受影响的@angular-devkit/build-angular版本范围为:13.0.0-next.0至13.3.9、14.0.0-next.0至14.2.9、15.0.0-next.0至15.0.0-rc.5。以下是针对npm audit fix无效情况的安全修复方案:

方案一:升级@angular-devkit/build-angular到安全版本

Angular官方已在后续版本中修复了对loader-utils的依赖问题,直接升级对应主版本的安全版即可:

  • Angular 13:升级到13.3.10及以上版本
  • Angular 14:升级到14.2.10及以上版本
  • Angular 15:升级到15.0.0正式版及以上版本

执行对应版本的升级命令(以Angular 13为例):

npm install @angular-devkit/build-angular@13.3.10 --save-dev

若希望自动处理同大版本内的依赖兼容问题,也可使用Angular CLI的升级命令:

ng update @angular-devkit/build-angular

方案二:使用npm overrides强制指定安全版本的loader-utils

如果暂时无法升级@angular-devkit/build-angular,可通过npm的overrides机制强制让整个依赖树使用修复漏洞的loader-utils版本(推荐3.2.1及以上):

  1. 在项目根目录的package.json中添加overrides字段:
"overrides": {
  "loader-utils": "3.2.1"
}
  1. 执行安装命令使配置生效:
npm install

验证修复效果

完成修复后,执行以下命令确认漏洞已解决:

npm audit

也可查看当前loader-utils的安装版本:

npm ls loader-utils

注意事项

  • 跨大版本升级Angular依赖时,建议先查阅官方升级指南,避免兼容性问题;优先选择同大版本内的安全升级。
  • 使用overrides前,可先测试项目的构建和运行是否正常,确保新版本loader-utils与现有依赖无冲突。

内容的提问来源于stack exchange,提问作者luca88

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 18:05:38