Skip to content
OpenAdvisories

Description

minimatch is a minimal matching utility for converting glob expressions into JavaScript RegExp objects. Prior to version 10.2.3, 9.0.7, 8.0.6, 7.4.8, 6.2.2, 5.1.8, 4.2.5, and 3.1.3, `matchOne()` performs unbounded recursive backtracking when a glob pattern contains multiple non-adjacent `**` (GLOBSTAR) segments and the input path does not match. The time complexity is O(C(n, k)) -- binomial -- where `n` is the number of path segments and `k` is the number of globstars. With k=11 and n=30, a call to the default `minimatch()` API stalls for roughly 5 seconds. With k=13, it exceeds 15 seconds. No memoization or call budget exists to bound this behavior. Any application where an attacker can influence the glob pattern passed to `minimatch()` is vulnerable. The realistic attack surface includes build tools and task runners that accept user-supplied glob arguments (ESLint, Webpack, Rollup config), multi-tenant systems where one tenant configures glob-based rules that run in a shared process, admin or developer interfaces that accept ignore-rule or filter configuration as globs, and CI/CD pipelines that evaluate user-submitted config files containing glob patterns. An attacker who can place a crafted pattern into any of these paths can stall the Node.js event loop for tens of seconds per invocation. The pattern is 56 bytes for a 5-second stall and does not require authentication in contexts where pattern input is part of the feature. Versions 10.2.3, 9.0.7, 8.0.6, 7.4.8, 6.2.2, 5.1.8, 4.2.5, and 3.1.3 fix the issue.

Affected products

VendorProductAffectedFixed
isaacs minimatch >= 10.0.0, < 10.2.3, >= 9.0.0, < 9.0.7, >= 8.0.0, < 8.0.6, >= 7.0.0, < 7.4.8, >= 6.0.0, < 6.2.2, >= 5.0.0, < 5.1.8, >= 4.0.0, < 4.2.5, < 3.1.3 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 node-minimatch 9.0.7-1 —
Debian 13 node-minimatch No fix yet —
Debian 12 node-minimatch No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 node-minimatch No fix yet —
Ubuntu 26.04 LTS node-minimatch No fix yet —
Ubuntu 25.10 node-minimatch No fix yet —
Ubuntu 24.04 LTS node-minimatch No fix yet —
Ubuntu 22.04 LTS node-minimatch No fix yet —
Show 4 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 20.04 LTS node-minimatch No fix yet —
Ubuntu 18.04 LTS node-minimatch No fix yet —
Ubuntu Pro 16.04 LTS node-minimatch No fix yet —
Ubuntu Pro 14.04 LTS node-minimatch No fix yet —

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 js-jquery +2 No fix yet —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling argo-workflows-ui-4.0 4.0.4-r6 —
Wolfi rolling code-server 4.109.2-r0 —
Wolfi rolling eslint 10.0.2-r1 —
Wolfi rolling jupyter-base-notebook 7.6.3-r2 —
Wolfi rolling katib-earlystopping +8 0.19.0-r23 —
Wolfi rolling katib-suggestion-goptuna-compat 0.19.0-r40 —
Wolfi rolling lerna 9.0.5-r1 —
Wolfi rolling node-gyp 12.2.0-r2 —
Wolfi rolling npm 11.11.0-r1 —
Wolfi rolling opensearch-dashboards-3 +1 3.5.0-r5 —
Wolfi rolling pnpm-stage0 8.7.4-r5 —
Wolfi rolling prism 5.14.3-r8 —
Wolfi rolling pulumi-language-nodejs 3.224.0-r1 —
Wolfi rolling py3.10-jupyterlab +3 4.6.1-r1 —
Wolfi rolling renovate 43.48.3-r0 —
Wolfi rolling saf 1.6.0-r0 —
Wolfi rolling serve 14.2.6-r0 —
Wolfi rolling tileserver-gl 5.5.0-r6 —
Wolfi rolling ts-patch 4.0.1-r0 —
Wolfi rolling vitess-23 23.0.3-r5 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm minimatch >= 10.0.0, < 10.2.3 10.2.3 GHSA-7r86-cg39-jmmj
npm minimatch >= 9.0.0, < 9.0.7 9.0.7 GHSA-7r86-cg39-jmmj
npm minimatch >= 8.0.0, < 8.0.6 8.0.6 GHSA-7r86-cg39-jmmj
npm minimatch >= 7.0.0, < 7.4.8 7.4.8 GHSA-7r86-cg39-jmmj
npm minimatch >= 6.0.0, < 6.2.2 6.2.2 GHSA-7r86-cg39-jmmj
npm minimatch >= 5.0.0, < 5.1.8 5.1.8 GHSA-7r86-cg39-jmmj
npm minimatch >= 4.0.0, < 4.2.5 4.2.5 GHSA-7r86-cg39-jmmj
npm minimatch < 3.1.3 3.1.3 GHSA-7r86-cg39-jmmj

Advisories 4

References