Description
re2 provides Node.js bindings for Google's RE2 regular expression engine. Prior to 1.25.2, re2's String.prototype.match implementation with a global RE2 pattern that can match the empty string fails to advance its native matching cursor in lib/match.cc, causing an infinite loop and unbounded native memory growth that blocks the event loop and can exhaust host memory. This issue is fixed in 1.25.2.
Published: 2026-07-30
Score: 6.2 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

re2, the Node.js bindings for Google's RE2 regex engine, contains a flaw in its String.prototype.match implementation. When a global regex pattern can match the empty string, the native matching cursor fails to advance in lib/match.cc. This leads to an infinite loop and unbounded allocation of native memory, which blocks the JavaScript event loop and can exhaust host memory. The result is a denial‑of‑service condition that can be triggered by supplying malicious input that uses such a pattern.

Affected Systems

All releases of the node-re2 library from uhop before version 1.25.2 are affected. The fix was introduced in the 1.25.2 release. Systems that incorporate this library without upgrading to 1.25.2 or newer are vulnerable.

Risk and Exploitability

The CVSS score of 6.2 indicates a medium severity, while the EPSS score of less than 1% suggests that exploitation attempts are expected to be rare. The vulnerability is not listed in the CISA KEV catalog. Likely attack vectors involve feeding specially crafted input that causes String.prototype.match to be executed with a global pattern capable of matching the empty string. An attacker with the ability to influence this input—whether locally or remotely—can trigger the infinite loop, stall the event loop, and drain system memory, effectively denying service. No privileged execution or remote exploitation beyond the ability to run code in the affected process is required.

Generated by OpenCVE AI on August 3, 2026 at 10:28 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade node-re2 to version 1.25.2 or newer.
  • Audit application code to ensure that global regex patterns are not used with expressions that match the empty string; if unavoidable, replace the global flag or rewrite the pattern.
  • If an immediate upgrade is not possible, restrict the use of the vulnerable String.prototype.match to safe inputs or switch to an alternative regex implementation.

Generated by OpenCVE AI on August 3, 2026 at 10:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-6hxr-mr5r-9836 re2: Global `String.prototype.match` with an empty-matchable pattern never advances → infinite loop with unbounded native memory growth (DoS)
History

Sun, 02 Aug 2026 21:00:00 +0000

Type Values Removed Values Added
First Time appeared Uhop
Uhop node-re2
Vendors & Products Uhop
Uhop node-re2

Fri, 31 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 30 Jul 2026 20:45:00 +0000

Type Values Removed Values Added
Description re2 provides Node.js bindings for Google's RE2 regular expression engine. Prior to 1.25.2, re2's String.prototype.match implementation with a global RE2 pattern that can match the empty string fails to advance its native matching cursor in lib/match.cc, causing an infinite loop and unbounded native memory growth that blocks the event loop and can exhaust host memory. This issue is fixed in 1.25.2.
Title re2: Global `String.prototype.match` with an empty-matchable pattern never advances → infinite loop with unbounded native memory growth (DoS)
Weaknesses CWE-835
References
Metrics cvssV3_1

{'score': 6.2, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-31T19:19:08.646Z

Reserved: 2026-07-30T16:19:08.081Z

Link: CVE-2026-68499

cve-icon Vulnrichment

Updated: 2026-07-31T19:19:01.238Z

cve-icon NVD

Status : Received

Published: 2026-07-30T21:18:12.870

Modified: 2026-07-31T20:16:54.423

Link: CVE-2026-68499

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T10:30:18Z

Weaknesses
  • CWE-835

    Loop with Unreachable Exit Condition ('Infinite Loop')