Vulnerability Description
Flarum before 1.8.16 contains a password reset token expiry bypass vulnerability that allows unauthenticated attackers to reuse expired password reset tokens by submitting them directly to the reset processing endpoint. The SavePasswordController::handle() method calls PasswordToken::findOrFail() without performing any expiry validation, allowing attackers to bypass the 24-hour token lifetime enforced only during form rendering and change any account's password to gain an authenticated session.
CVSS Score
HIGH
Related Weaknesses (CWE)
References
- https://github.com/flarum/framework/commit/2803058d0f9dc38252326070b46d4484fe5a8
- https://github.com/flarum/framework/pull/4545
- https://github.com/flarum/framework/releases/tag/v1.8.16
- https://www.vulncheck.com/advisories/flarum-password-reset-token-expiry-bypass-v
FAQ
What is CVE-2026-39923?
CVE-2026-39923 is a vulnerability with a CVSS score of 8.1 (HIGH). Flarum before 1.8.16 contains a password reset token expiry bypass vulnerability that allows unauthenticated attackers to reuse expired password reset tokens by submitting them directly to the reset p...
How severe is CVE-2026-39923?
CVE-2026-39923 has been rated HIGH with a CVSS base score of 8.1/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-39923?
Check the references section above for vendor advisories and patch information. Review vendor security bulletins for remediation guidance.