Unbounded memory growth in Regexp2 via large repetition counts
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Partial Red Hat: 16 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat. Impact type from CWE-400.
Summary
dlclark regexp2 before 2.3.0 does not bound memory use when a large fixed-count quantifier such as {m} is applied to a zero-width subexpression (CWE-400). The engine runs the empty loop body up to m-1 times and keeps growing its backtracking stack without limit. A remote attacker can supply a pattern under 20 bytes that forces multi-gigabyte allocation and terminates the process. CISA SSVC data lists a proof of concept.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
Regexp2 is a feature-rich RegExp engine for Go. Prior to version 2.3.0, when regexp2 compiles and matches a pattern containing a large fixed-count quantifier applied to a zero-width subexpression — e.g. (?:){50000000} — the match engine executes the empty loop body m-1 times, pushing two integers onto the backtracking stack on every iteration. Because the parser accepts any repetition count up to math.MaxInt32 and the backtracking stack grows without bound, a pattern of fewer than 20 bytes matched against an empty input can force multi-gigabyte allocation and OOM-kill the process. MatchTimeout does not fully mitigate this because the memory is allocated faster than the 100 ms timeout clock can fire. This issue has been patched in version 2.3.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
Upgrade dlclark regexp2 to version 2.3.0. Red Hat lists these products as affected without a fix: Logging Subsystem for Red Hat OpenShift, Migration Toolkit for Applications 8, Multicluster Global Hub, Multicluster Global Hub 5, Red Hat Advanced Cluster Management for Kubernetes 2, and other products. Red Hat states that no plan is available for Red Hat Ceph Storage 8.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA regexp2 (dlclark) Fixed in 2.3.0
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Logging Subsystem for Red Hat OpenShift | Affected | — |
| Migration Toolkit for Applications 8 | Affected | — |
| Multicluster Global Hub | Affected | — |
| Multicluster Global Hub 5 | Affected | — |
| OpenShift Service Mesh 3 | Affected | — |
| Red Hat Advanced Cluster Management for Kubernetes 2 | Affected | — |
| Red Hat Ceph Storage 8 | Affected | No fix yet: Fix deferred |
| Red Hat Enterprise Linux 10 | Affected | — |
| Red Hat Enterprise Linux 8 | Affected | — |
| Red Hat Enterprise Linux 9 | Affected | — |
| Red Hat Hardened Images | Affected | — |
| Red Hat OpenShift Container Platform 4 | Affected | — |
| Red Hat OpenShift Container Platform 5 | Affected | — |
| Red Hat OpenShift GitOps | Affected | — |
| Red Hat OpenStack Platform 18.0 | Affected | — |
| Red Hat Openshift Data Foundation 4 | Affected | No fix yet |
Timeline
- 2026-11-06 Threatist record created from CVE-2026-77299
- 2026-11-06 Affected versions changed · Red Hat
- 2026-11-06 CVSS score added · Red Hat
- 2026-11-06 CISA SSVC decision points changed
- 2026-11-06 Priority changed: MEDIUM → HIGH
References
Sources
- CVE-2026-77299 · CVE Program
- CVE-2026-77299 · NVD
- FIRST EPSS
- CVE-2026-77299 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences