Checkmate: Regular Expression Denial of Service (ReDoS) via User-Controlled Regex in Monitor Advanced Matching
Key facts
- Attack vector
- Network
- Privileges required
- High
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-1333.
Summary
Checkmate is an open-source, self-hosted tool designed to track and monitor server hardware, uptime, response times, and incidents in real-time with beautiful visualizations. From 3.5.1 until 3.9.2, an authenticated admin or superadmin can set matchMethod to regex and place a malicious expression in the expectedValue field for advanced HTTP monitor matching. server/src/api/validation/monitorValidation.ts accepts the expression, and server/src/service/network/AdvancedMatcher.ts synchronously evaluates it against an attacker-controlled HTTP response body on the Node.js main event loop without a timeout or worker isolation, allowing catastrophic backtracking to freeze API endpoints, monitor checks, and WebSocket connections for all users. This issue is fixed in version 3.9.2.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| bluewave-labs | Checkmate | 3.5.1 to before 3.9.2 | 3.9.2 | Patch available | CNA |
- Checkmate Vendorbluewave-labs Affected 3.5.1 to before 3.9.2 Fixed in 3.9.2 Patch available CNA
Remediation
- Fix · CNA Checkmate (bluewave-labs) Fixed in 3.9.2
Timeline
- 2026-10-02 Threatist record created from CVE-2026-70656
References
Other 5
- https://github.com/bluewave-labs/Checkmate/security/advisories/GHSA-4c6j-p2cv-wf56
- https://github.com/bluewave-labs/Checkmate/commit/0df71d6356c87c747e0b796b0c34e33f2a5203fa
- https://github.com/bluewave-labs/Checkmate/commit/adba25269c455878bf8065bc28cfe5d74e58692f
- https://github.com/bluewave-labs/Checkmate/commit/d5ec2936ad77ab773529057b442a6eb55dd578eb
- https://github.com/bluewave-labs/Checkmate/releases/tag/v3.9.2
More bluewave-labs vulnerabilities
- TI-2026-39916 Checkmate: Pre-auth Denial of Service via File Upload on Registration CVSS 3.1HIGH 7.5
- TI-2026-24389 Mass Assignment Privilege Escalation in Checkmate CVSS 3.1HIGH 8.1
- TI-2026-58598 Checkmate through 3.11.0 Missing Authorization on Maintenance Window, Notification, and Check Deletion Routes CVSS 4.0HIGH 7.1
- TI-2026-23658 Checkmate: Unauthenticated Access to Unpublished Status Page CVSS 3.1MEDIUM 5.3
- TI-2026-50184 Checkmate: Sensitive Bearer Token Exposure via Public Status Pages When showURL Setting is Enabled CVSS 3.1HIGH 7.5
- TI-2026-50845 bluewave-labs Checkmate - User Enumeration via Differential HTTP Response in Password Recovery CVSS 3.1MEDIUM 5.3
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences