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

如何解决gulp依赖glob-parent的安全漏洞问题?

解决gulp依赖中glob-parent的正则DoS漏洞(仅用npm)

漏洞基本信息

High glob-parent before 5.1.2 vulnerable to Regular Expression
Denial of Service in enclosure regex

Package glob-parent

Patched in >=5.1.2

Dependency of gulp [dev]

Path gulp > glob-watcher > chokidar > glob-parent

安全无破坏性的修复方案

既然你只能用npm,我推荐用npm官方支持的overrides字段来统一锁定glob-parent的安全版本——这个方法能强制依赖树里所有的glob-parent实例都升级到修复版本,同时完全不会影响应用的正常运行:

步骤1:确认npm版本达标

overrides是从npm 8.3.0开始才支持的功能,先检查你的npm版本:

npm -v

如果版本低于8.3.0,先把npm升级到最新版:

npm install -g npm@latest

步骤2:给package.json加overrides配置

打开你的package.json,在根节点(和scripts、dependencies同级)添加下面的配置:

"overrides": {
  "glob-parent": "^5.1.2"
}

这个配置会让所有依赖(哪怕是深层嵌套的)都使用glob-parent 5.1.2或更高的兼容版本。

步骤3:更新依赖并验证

运行下面的命令更新依赖,让overrides生效:

npm install

之后打开package-lock.json,搜索glob-parent,确认所有条目对应的版本都是>=5.1.2就没问题了。

步骤4:确认应用正常运行

执行你平时用的构建或运行命令(比如gulp build),确保应用没有出现任何报错。

为什么这个方案靠谱?

glob-parent 5.1.2的修复只是针对正则表达式DoS的漏洞,完全没改任何公共API,所以依赖它的chokidar、glob-watcher和gulp都能正常工作,不会引入兼容性问题。

虽然有人说这个漏洞在npm里是误报,但主动升级到修复版本能彻底消除潜在风险,还是更稳妥的做法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 10:45:28