CVE-2026-68499
Medium · 6.2CVSS
6.2
EPSS
0.2%
Published
Jul 30, 2026
CISA due date
—
Cloudanix analysis
A flaw in a regular-expression library can make programs using it freeze or run out of memory when certain patterns are processed, potentially shutting down services until fixed.
- Exploitation
- Other
- Attacker needs
- Local User
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Global RE2 regex patterns that match the empty string cause String.prototype.match to fail advancing its native cursor in lib/match.cc, resulting in an infinite loop with unbounded native memory allocation that blocks the event loop.
Why it matters to the business
Applications become unresponsive or crash from memory exhaustion, leading to service outages and potential loss of availability for any workloads relying on the vulnerable library.
How an attack unfolds
An attacker supplies a crafted global RE2 pattern capable of matching the empty string to an application that invokes match on attacker-controlled or untrusted input, triggering the cursor advancement bug and consuming host memory until the process is terminated or the system runs out of resources.
How to fix it
Upgrade re2 to version 1.25.2 or later; after upgrade, validate that all dependent packages pull the corrected release and restart affected Node.js processes.
How to confirm the fix worked
Confirm installed version is at least 1.25.2 via package manager or require.resolve; execute a test case using a global empty-matching pattern to verify the loop no longer occurs and memory remains bounded.
Typical attack path
- Identify an application endpoint or function that accepts regex patterns or uses re2 for matching on user-supplied data
- Craft a global RE2 pattern that matches the empty string
- Invoke the vulnerable match operation repeatedly or with large input to accelerate memory growth
- Observe event-loop blockage or process termination due to memory exhaustion
How to detect it
Review application logs for sudden spikes in memory usage or event-loop stalls coinciding with regex match operations; correlate with process crashes or OOM killer events in system logs.
What your security team should do
- Immediately upgrade all instances of re2 to 1.25.2 or newer
- Scan dependency trees for transitive usage of the vulnerable package
- Add runtime resource limits and monitoring for Node.js event-loop lag and native memory usage
- Review any code paths that allow untrusted input to influence regex construction or matching
The record
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.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-62250 LibreDWG is a free C library to read and write DWG files. CWE-835
- CVE-2026-119205 pypdf is a free and open-source pure-python PDF library. CWE-835
- CVE-2026-119203 pypdf is a free and open-source pure-python PDF library. CWE-835
- CVE-2026-118781 Forge (also called node-forge) is a native implementation of Transport Layer Security in… CWE-835
- CVE-2026-111731 P-Net before 1.0.3 enters an infinite loop when handling a read request for the… CWE-835
- CVE-2026-111496 Kafka Streams derives its stream-time clock from record timestamps. CWE-835
- CVE-2026-103410 An Integer Overflow vulnerability in the DPI certificate scanner in Juniper Networks… CWE-835
- CVE-2026-118036 In Progress® Telerik® Document Processing Libraries prior to version 2026.3.1027… CWE-835