minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern
Summary
minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern
Original description
The description as published by the source.
minimatch is a minimal matching utility for converting glob expressions into JavaScript RegExp objects. Versions 10.2.0 and below are vulnerable to Regular Expression Denial of Service (ReDoS) when a glob pattern contains many consecutive * wildcards followed by a literal character that doesn't appear in the test string. Each * compiles to a separate [^/]*? regex group, and when the match fails, V8's regex engine backtracks exponentially across all possible splits. The time complexity is O(4^N) where N is the number of * characters. With N=15, a single minimatch() call takes ~2 seconds. With N=34, it hangs effectively forever. Any application that passes user-controlled strings to minimatch() as the pattern argument is vulnerable to DoS. This issue has been fixed in version 10.2.1.
Source: OSV.dev (Open Source Vulnerabilities) NVD GitHub Advisory OSV
Fix status by distribution
Fixed packages published by each distribution for this CVE
- Debian DEBIAN-CVE-2026-26996 node-minimatch
- Ubuntu UBUNTU-CVE-2026-26996 node-minimatch
References
- advisory github.com
- advisory github.com
- advisory nvd.nist.gov
- patch github.com