{"id":"CVE-2026-68499","summary":"re2: Global `String.prototype.match` with an empty-matchable pattern never advances → infinite loop with unbounded native memory growth (DoS)","details":"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.","aliases":["GHSA-6hxr-mr5r-9836"],"modified":"2026-09-12T08:07:27.733128Z","published":"2026-07-30T20:07:01.147Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/68xxx/CVE-2026-68499.json","cna_assigner":"GitHub_M","cwe_ids":["CWE-835"]},"references":[{"type":"WEB","url":"https://github.com/uhop/node-re2/releases/tag/1.25.2"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/68xxx/CVE-2026-68499.json"},{"type":"ADVISORY","url":"https://github.com/uhop/node-re2/security/advisories/GHSA-6hxr-mr5r-9836"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-68499"},{"type":"FIX","url":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/uhop/node-re2","events":[{"introduced":"0"},{"fixed":"56293de4fc0914d7bc35f92e98de25b0d9bb417d"},{"fixed":"264378394ec80e1cca2188ecb496829da2eec6c8"}],"database_specific":{"source":["AFFECTED_FIELD","REFERENCES"],"extracted_events":[{"introduced":"0"},{"fixed":"1.25.2"}]}}],"versions":["1.25.1","1.25.0","1.24.1","1.24.0","1.23.3","1.23.2","1.23.1","1.23.0","1.22.3","1.22.2","1.22.1","1.22.0","1.21.5","1.21.4","1.21.3","1.21.2","1.21.1","1.21.0","1.20.12","1.20.11","1.20.10","1.20.9","1.20.8","1.20.7","1.20.6","1.20.5","1.20.4","1.20.3","1.20.2","1.20.1","1.20.0","1.19.2","1.19.1","1.19.0","1.18.3","1.18.2","1.18.1","1.18.0","1.17.8","1.17.7","1.17.6","1.17.5","1.17.4","1.17.3","1.17.2","1.17.1","1.17.0","1.16.0","1.15.9","1.15.8","1.15.7","1.15.6","1.15.5","1.15.4","1.15.3","1.15.2","1.15.1","1.15.0","1.14.0","1.13.0","1.12.1","1.12.0","1.11.0","1.10.5","1.10.4","1.10.3","1.10.2","1.10.1","1.10.0","1.9.0","1.8.4","1.8.3","1.8.2","1.8.1","1.8.0","1.7.0","1.6.2","1.6.1","1.6.0","1.5.0","1.4.1","1.4.0","1.3.3","1.3.2","1.3.1","1.3.0","1.2.0","1.1.1","1.1.0","1.0.0","0.9.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-68499.json","vanir_signatures_modified":"2026-09-12T08:07:27Z","vanir_signatures":[{"signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d","target":{"file":"lib/addon.cc"},"deprecated":false,"digest":{"line_hashes":["19954763611425228469672085074658184675","331223102158760803114548518017621148565","21178005610650149147415352411149296789","7378921011350341833558194162275409032","290279079977808400351583768780768332112","269468269521989833012457224550730551021","220180896078021945078450370740287910401","103995201755778946944515536033469841992","278962317521925690785428497897378501971"],"threshold":0.9},"id":"CVE-2026-68499-0a0f1789","signature_type":"Line"},{"target":{"file":"lib/wrapped_re2.h"},"deprecated":false,"digest":{"line_hashes":["286777046175991959749681714562635826353","284333959125627437408355067039355406210","138136472694523974163538307068126744663","58309900975234625435035040729388464271","195103648589300892684046158542830920177","235192085679803366481137419592942389587","253325453123777957106712514066521422225","158659996460091260129542475562417934961"],"threshold":0.9},"id":"CVE-2026-68499-21b7f83e","signature_type":"Line","signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d"},{"signature_type":"Function","signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d","target":{"function":"NAN_METHOD","file":"lib/match.cc"},"deprecated":false,"digest":{"function_hash":"10197521596383413257890744694600849103","length":5139},"id":"CVE-2026-68499-4164da59"},{"signature_type":"Line","signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d","target":{"file":"lib/match.cc"},"deprecated":false,"digest":{"line_hashes":["182960625232293462914228452845739904908","55403228862940301031241506940706599861","13714069744547344456967796048305494447","90550660272087329399460642966430912149"],"threshold":0.9},"id":"CVE-2026-68499-81243e07"},{"deprecated":false,"digest":{"function_hash":"236949699473391840458954684920799783324","length":226},"id":"CVE-2026-68499-83ee55b7","signature_type":"Function","signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d","target":{"file":"lib/wrapped_re2.h","function":"getUtf16PositionByCounter"}},{"digest":{"function_hash":"114005996720965299823923889009817447229","length":491},"id":"CVE-2026-68499-c430ccf0","signature_type":"Function","signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d","target":{"file":"lib/addon.cc","function":"StrVal::setIndex"},"deprecated":false}]}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}