Skip to main content

Flarum EUVDEUVD-2026-53389

| CVE-2026-39923 CRITICAL
Use of a Key Past its Expiration Date (CWE-324)
2026-08-05 VulnCheck GHSA-3mr9-883x-4f3x
9.2
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
9.2 CRITICAL
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/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
8.1 HIGH

Remote unauthenticated account takeover (PR:N/UI:N) yields full C/I/A over the victim account, but AC:H because the attacker must first obtain a real unconsumed reset token.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

3
Source Code Evidence Fetched
Aug 05, 2026 - 15:45 vuln.today
Analysis Generated
Aug 05, 2026 - 15:45 vuln.today
CVE Published
Aug 05, 2026 - 14:38 cve.org
CRITICAL 9.2

DescriptionCVE.org

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.

AnalysisAI

Account takeover in Flarum forum software before 1.8.16 lets remote unauthenticated attackers reuse expired password reset tokens by POSTing them directly to the reset endpoint, bypassing the 24-hour token lifetime that is only enforced when the reset form is rendered. Because SavePasswordController::handle() calls PasswordToken::findOrFail() with no expiry check, anyone holding a stale-but-still-existing token can set a new password and log in as that user. Reported by VulnCheck; no public exploit identified at time of analysis, and it is not listed in CISA KEV.

Technical ContextAI

Flarum is a PHP-based open-source forum framework (cpe:2.3:a:flarum:flarum_framework). Its password reset flow issues a PasswordToken record and enforces a 24-hour validity window only in the GET path that renders the reset form. The vulnerable POST path, SavePasswordController::handle(), looks the token up via Eloquent's findOrFail() and proceeds to overwrite the account password without re-validating the token's created_at/expiry. This is the essence of CWE-324 (Use of a Key Past its Expiration Date): a security-relevant credential remains honored after it should have been rejected, because expiry enforcement lives in the presentation layer rather than the state-changing handler. The upstream fix (PR #4545) moves expiry enforcement into the submission handler; companion fixes invalidate active sessions on password change (PR #4546) and delete stale tokens when a new reset is requested (PR #4547).

RemediationAI

Vendor-released patch: upgrade to Flarum 1.8.16 (https://github.com/flarum/framework/releases/tag/v1.8.16), which enforces the expiry check on token submission (PR #4545), invalidates active sessions when a password changes (PR #4546), and deletes stale password tokens when a new reset is requested (PR #4547). If you cannot upgrade immediately, reduce exposure by shortening or clearing outstanding password_tokens rows (e.g., purge tokens older than 24 hours from the database on a schedule) so no reusable expired token exists - the trade-off is that legitimately pending resets within the window may also be invalidated. Additionally, minimize token leakage by ensuring reset links are delivered over TLS, stripped from referrer headers, and not logged by reverse proxies. These are stopgaps; applying 1.8.16 is the definitive fix.

More in Flarum

View all
CVE-2024-21641 MEDIUM POC
6.5 Jan 05

Flarum is open source discussion platform software. Rated medium severity (CVSS 6.5), this vulnerability is remotely exp

CVE-2021-32671 CRITICAL
10.0 Jun 07

Flarum is a forum software for building communities. Rated critical severity (CVSS 10.0), this vulnerability is remotely

CVE-2019-13183 HIGH
8.8 Jul 07

Flarum before 0.1.0-beta.9 allows CSRF against all POST endpoints, as demonstrated by changing admin settings. Rated hig

CVE-2023-22487 MEDIUM POC
4.3 Jan 11

Flarum is a forum software for building communities. Rated medium severity (CVSS 4.3), this vulnerability is remotely ex

CVE-2026-39924 HIGH
7.6 Aug 05

Session persistence after password change in Flarum before 1.8.16 allows an attacker who already holds a valid session t

CVE-2019-11514 HIGH
7.5 Apr 25

User/Command/ConfirmEmailHandler.php in Flarum before 0.1.0-beta.8 mishandles invalidation of user email tokens. Rated h

CVE-2023-40033 HIGH
7.1 Aug 16

Flarum is an open source forum software. Rated high severity (CVSS 7.1), this vulnerability is remotely exploitable, low

CVE-2025-27794 MEDIUM
6.8 Mar 12

Flarum is open-source forum software. Rated medium severity (CVSS 6.8), this vulnerability is remotely exploitable, no a

CVE-2023-22488 MEDIUM
5.4 Jan 12

Flarum is a forum software for building communities. Rated medium severity (CVSS 5.4), this vulnerability is remotely ex

CVE-2022-41938 MEDIUM
5.4 Nov 19

Flarum is an open source discussion platform. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitab

CVE-2021-21283 MEDIUM
5.4 Jan 26

Flarum is an open source discussion platform for websites. Rated medium severity (CVSS 5.4), this vulnerability is remot

CVE-2018-19133 MEDIUM
5.3 Nov 09

In Flarum Core 0.1.0-beta.7.1, a serious leak can get everyone's email address. Rated medium severity (CVSS 5.3), this v

Share

EUVD-2026-53389 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy