CVE-2026-39923 PUBLISHED

Flarum < 1.8.16 Password Reset Token Expiry Bypass via POST /reset

Assigner: VulnCheck
Reserved: 07.04.2026 Published: 05.08.2026 Updated: 05.08.2026

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.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS Score: 9.2

Product Status

Vendor Flarum
Product Flarum Framework
Versions Default: affected
  • affected from 0 to 1.8.16 (excl.)

Credits

  • Hamed Kohi finder
  • VulnCheck coordinator

References

Problem Types

  • Use of a Key Past its Expiration Date CWE