Inefficient Regular Expression Complexity Affecting nodejs:20/npm package, versions <1:10.8.2-1.20.20.2.2.module+el9.6.0+24220+c44c288d


Severity

Recommended
high

Based on Red Hat Enterprise Linux security rating.

Threat Intelligence

EPSS
0.03% (8th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-RHEL9-NODEJS-16135993
  • published23 Apr 2026
  • disclosed20 Feb 2026

Introduced: 20 Feb 2026

CVE-2026-26996  (opens in a new tab)
CWE-1333  (opens in a new tab)

How to fix?

Upgrade RHEL:9 nodejs:20/npm to version 1:10.8.2-1.20.20.2.2.module+el9.6.0+24220+c44c288d or higher.
This issue was patched in RHSA-2026:9874.

NVD Description

Note: Versions mentioned in the description apply only to the upstream nodejs:20/npm package and not the nodejs:20/npm package as distributed by RHEL. See How to fix? for RHEL:9 relevant fixed versions and status.

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.

CVSS Base Scores

version 3.1