CVE-2026-67550: uhop node-re2 out-of-bounds read in exec and match functions

CVE-2026-67550 · Severity: medium · CVSS 5.7 · Published 2026-07-30

A vulnerability in the re2 regular expression library for Node.js can cause an application to crash unexpectedly when processing certain text. This occurs when an attacker provides a specific starting position for a search on text containing non-standard characters (like emojis or non-English scripts). Because the crash happens at a deep system level, standard error handling cannot prevent the entire service from shutting down, potentially leading to a denial of service.

Technologies: re2 (npm), Uhop Re2. Vendors: npm, Uhop.

Quick answers

Is CVE-2026-67550 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-67550 being exploited in the wild.
How severe is CVE-2026-67550?
Medium severity, with a CVSS score of 5.7, published 30 July 2026.
Which products and versions are affected?
re2 (npm) SEMVER:introduced=0,fixed=1.25.2; Uhop Re2 < 1.25.2, <= 1.25.1.
Is there a fix for CVE-2026-67550?
Yes. re2 (npm): upgrade to 1.25.2 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-67550 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-67550?
Check whether you run re2 (npm) or Uhop Re2 at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • re2 (npm): upgrade to 1.25.2 or later
    npm install re2@1.25.2

Technical details

The vulnerability exists in the `StrVal::setIndex` and `getUtf16PositionByCounter` functions within `lib/addon.cc` and `lib/wrapped_re2.h`. The library validates the user-supplied `lastIndex` against the UTF-8 byte length of the subject string but subsequently treats that index as a UTF-16 code-unit count when walking the buffer. For non-ASCII subjects where byte length exceeds character count, an attacker can set `lastIndex` to a value that passes validation but points beyond the allocated buffer. This results in an out-of-bounds read that can cause a segmentation fault (DoS) or, in some cases, leak adjacent heap memory into the return value. The issue affects `exec`, `test`, `match`, `replace`, and `split` operations. Fixed in version 1.25.2.

Affected products

  • uhop re2 (npm) <= 1.25.1

Identifiers

  • CVE-2026-67550
  • GHSA-ff84-5f28-78qj

Timeline

  • 2026-07-07: patched: Fixed in version 1.25.2
  • 2026-07-30: advisory: NVD published CVE-2026-67550
  • 2026-07-31: disclosed: GitHub Advisory published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.