Authentication bypass by spoofing in monkeytypegame monkeytype
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-290.
Summary
Monkeytype is a minimalistic and customizable typing test. In 26.26.0 and earlier, the backend rate-limit key generator in backend/src/middlewares/rate-limit.ts uses client-controlled cf-connecting-ip and x-forwarded-for headers before the trust-proxy-derived req.ip value. An unauthenticated attacker can rotate either header to create a new bucket for each request, bypassing rootRateLimiter, badAuthRateLimiter, getKey(), and the getKeyWithUid() fallback used by public endpoints. This permits repeated POST /users/forgotPasswordEmail and verificationEmail requests, mail bombing registered users, consuming Firebase or SMTP quota, evading brute-force protection, and enabling resource exhaustion. Exploitability of cf-connecting-ip depends on deployment topology, but x-forwarded-for and direct-to-origin paths remain affected when those values are not overwritten by a trusted proxy. No fixed version is available as of this review.
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 |
|---|---|---|---|---|---|
| monkeytypegame | monkeytype | up to 26.26.0 | — | No fix listed | CNA |
- monkeytype Vendormonkeytypegame Affected up to 26.26.0 Fixed in — No fix listed CNA
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:monkeytype:monkeytype:*:*:*:*:*:*:*:* | — | — | monkeytypegame |
- cpe:2.3:a:monkeytype:monkeytype:*:*:*:*:*:*:*:* Versions — — ·monkeytypegame
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2026-69183
References
More monkeytypegame vulnerabilities
- TI-2024-27479 Injection in monkeytypegame monkeytype CVSS 3.1CRITICAL 9.6
- TI-2026-82689 Fork pull request runs code with elevated token in Monkeytype CI CVSS 3.1CRITICAL 9.3
- TI-2025-40974 Monkeytype vulnerable to stored XSS in approve quotes page CVSS 4.0HIGH 7.1
- TI-2025-37277 Monkeytype Vulnerable to Self-XSS on loading saved custom text CVSS 4.0LOW 2.4
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences