What’s Vulnerable › Vulnerabilities
CVE-2026-93868: Cotonti through 1.0.0 Predictable Password Recovery Token via Weak PRNG
- Severity: high (CVSS 8.1 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.7% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-09-18 · updated 2026-09-22
- Weakness: CWE-338
Description
Cotonti through 1.0.0 derives password recovery validation tokens from md5(microtime()) in users.passrecover.php, creating a predictable token space of approximately one million values per second. Unauthenticated attackers can read the server Date header, precompute candidate tokens within a narrow time window, and probe them against the passrecover authentication endpoint to reset any account password including administrators.
Affected products
- Cotonti: through 1.0.0
References
- https://github.com/Cotonti/Cotonti
- https://github.com/Cotonti/Cotonti/blob/1.0.0/modules/users/inc/users.passrecover.php
- https://github.com/Cotonti/Cotonti/issues/1890
- https://github.com/Cotonti/Cotonti/pull/1898
- https://www.vulncheck.com/advisories/cotonti-through-1.0.0-predictable-password-recovery-token-via-weak-prng
- https://github.com/Cotonti/Cotonti/issues/1890
Get alerted when CVE-2026-93868 or the next vulnerability affects your stack