Home

Description

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.

PUBLISHED Reserved 2026-02-17 | Published 2026-02-20 | Updated 2026-02-20 | Assigner GitHub_M




HIGH: 8.7CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Problem types

CWE-1333: Inefficient Regular Expression Complexity

Product status

< 10.2.1
affected

References

github.com/...imatch/security/advisories/GHSA-3ppc-4f35-3m26

github.com/...ommit/2e111f3a79abc00fa73110195de2c0f2351904f5

cve.org (CVE-2026-26996)

nvd.nist.gov (CVE-2026-26996)

Download JSON