{"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-10-28T11:17:16.401204511Z","published":"2026-07-30T20:07:01.147Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-835"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/68xxx/CVE-2026-68499.json"},"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":"264378394ec80e1cca2188ecb496829da2eec6c8"},{"fixed":"56293de4fc0914d7bc35f92e98de25b0d9bb417d"}],"database_specific":{"extracted_events":[{"range":[{"introduced":"0"},{"fixed":"1.25.2"}],"source":"AFFECTED_FIELD","strategy":"StringRangeExpression"},{"range":[{"fixed":"56293de4fc0914d7bc35f92e98de25b0d9bb417d"}],"source":"REFERENCES_COMMIT"},{"range":[{"fixed":"264378394ec80e1cca2188ecb496829da2eec6c8"}],"source":"REFERENCES_TAG","original_tag":"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":[{"target":{"file":"lib/addon.cc"},"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["19954763611425228469672085074658184675","331223102158760803114548518017621148565","21178005610650149147415352411149296789","7378921011350341833558194162275409032","290279079977808400351583768780768332112","269468269521989833012457224550730551021","220180896078021945078450370740287910401","103995201755778946944515536033469841992","278962317521925690785428497897378501971"]},"id":"CVE-2026-68499-0a0f1789","signature_type":"Line","signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d"},{"signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d","target":{"file":"lib/wrapped_re2.h"},"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["286777046175991959749681714562635826353","284333959125627437408355067039355406210","138136472694523974163538307068126744663","58309900975234625435035040729388464271","195103648589300892684046158542830920177","235192085679803366481137419592942389587","253325453123777957106712514066521422225","158659996460091260129542475562417934961"]},"id":"CVE-2026-68499-21b7f83e","signature_type":"Line"},{"deprecated":false,"digest":{"length":5139,"function_hash":"10197521596383413257890744694600849103"},"id":"CVE-2026-68499-4164da59","signature_type":"Function","signature_version":"v1","source":"https://github.com/uhop/node-re2/commit/56293de4fc0914d7bc35f92e98de25b0d9bb417d","target":{"file":"lib/match.cc","function":"NAN_METHOD"}},{"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","signature_type":"Line","signature_version":"v1"},{"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"},"deprecated":false,"digest":{"length":226,"function_hash":"236949699473391840458954684920799783324"}},{"deprecated":false,"digest":{"length":491,"function_hash":"114005996720965299823923889009817447229"},"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"}}],"vanir_signatures_modified":"2026-10-28T11:17:16Z"}}],"schema_version":"1.9.2","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}