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.
CVE-2026-93868
This high-severity CVE scores 8.1 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit-prediction score not yet available (the EPSS model rescores nightly; freshly-published CVEs typically appear within 48 hours). GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- High severity, but no confirmed exploitation yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 8.1
- EG Score
- 8.1(low)
- EG Risk
- 52(Track*)EG Risk 52/100SSVC: Track*
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity81% × 45%Exploitation40% × 40%Automatability0% × 15%Action: Watch closely — could escalate to Attend. - EPSS PROB
- —
- EPSS %ILE
- —
- KEV
- Not listed
Published
September 18, 2026
Last Modified
September 18, 2026
Advisory Details (5)
Auto-updated Sep 18, 2026Cotonti through 1.0.0 Predictable Password Recovery Token via Weak PRNG | Advisories | VulnCheck
https://www.vulncheck.com/advisories/cotonti-through-1.0.0-predictable-password-recovery-token-via-weak-prngGitHub - Cotonti/Cotonti: Fast, reliable and flexible PHP CMF/CMS · GitHub
https://github.com/Cotonti/CotontiCotonti/modules/users/inc/users.passrecover.php at 1.0.0 · Cotonti/Cotonti · GitHub
https://github.com/Cotonti/Cotonti/blob/1.0.0/modules/users/inc/users.passrecover.phpsecurity: replace md5(microtime()) with CSPRNG token in password reset (CWE-338)
Upstream fix in progress (PR #1898 · Cotonti/Cotonti, state=open)
https://github.com/Cotonti/Cotonti/pull/1898[Security] Weak password reset token — md5(microtime()) is predictable and allows account takeover (CWE-338) · Issue #1890 · Cotonti/Cotonti · GitHub
https://github.com/Cotonti/Cotonti/issues/1890Vendor Advisories for CVE-2026-93868(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 4× in last 7d / 4× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-09-18 21:27 UTCEG score recompute
- 2026-09-18 20:26 UTCEG score recompute
- 2026-09-18 19:59 UTCEG score recompute
- 2026-09-18 19:59 UTCMITRE cvelistV5first tracked
Frequently asked(4)
What is CVE-2026-93868?
When was CVE-2026-93868 disclosed?
What is the CVSS score of CVE-2026-93868?
How do I remediate CVE-2026-93868?
Dependency Blast Radius
Explore the affected products and dependency analysis for CVE-2026-93868
Is Your Infrastructure Affected by CVE-2026-93868?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.