rootpwn

critical · CVSS v3 8.1 · CVSS v4 9.2

CVE-2026-93868

Cotonti CMS up to version 1.0.0 generates predictable password‑recovery tokens using md5(microtime()), allowing attackers to brute‑force res

Overview

Cotonti CMS up to version 1.0.0 generates predictable password‑recovery tokens using md5(microtime()), allowing attackers to brute‑force reset any account password, including administrators. The flaw is exploitable without authentication and can be performed within a narrow time window. It is critical due to the ease of token prediction and lack of rate limiting.

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.

Impact

Confidentiality: attackers can gain unauthorized access to any user account. Integrity: password changes alter account state without authorization. Availability: repeated reset attempts may cause service disruption. Administrators and all users are impacted.

Remediation

Upgrade to the latest Cotonti release where token generation uses a cryptographically secure random value. If an upgrade is not possible, disable the password‑recovery feature or implement rate limiting and IP blocking on the /passrecover endpoint. Monitor for abnormal password‑reset activity and enforce strong password policies.

Risk context

Severity is critical with CVSS 8.1/9.2, indicating high risk. No EPSS data is available, but the vulnerability is immediately exploitable. Defenders should act promptly.

Affected products

  • Cotonti CMS <=1.0.0

Scores

Severity
critical
CVSS v2
7.6
CVSS v3
8.1
CVSS v4
9.2
EPSS

Cotonti password-recovery token-prediction critical unauthenticated CMS authentication-bypass

← All CVEs