CVE-2026-39924
MediumCVSS 6.8Exploitation Probability (EPSS)
Low risk30th percentile - higher than 30% of all known CVEs
Summary
Flarum before 1.8.16 contains an improper session invalidation vulnerability that allows attackers who hold a valid session token to retain full account access after a victim changes their password, because the access_tokens table is never cleared on password change events. The TokensClearer::clearPasswordTokens() function only removes rows from the password_tokens table while leaving all active session cookies and API bearer tokens intact, including long-lived RememberAccessToken entries, and administrator-forced password resets via the user update endpoint are equally ineffective at revoking attacker-held sessions.
Risk Assessment
An attacker who obtains a session token can retain access to the account even after the victim changes their password, potentially leading to prolonged unauthorized access and data compromise.
Recommendation
Update Flarum to version 1.8.16 or later, which includes the fix.
Other vulnerabilities in Flarum
See all- CVE-2026-39923High
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.
- CVE-2026-41887Medium
In Flarum prior to versions 1.8.16 and 2.0.0-rc.1, the patch for CVE-2023-27577 restricted LESS @import and data-uri() features only in the custom_less setting, but not in other settings registered as LESS config variables (e.g., theme_primary_color, theme_secondary_color, and keys registered via Extend\Settings::registerLessConfigVar()). These values are interpolated verbatim into the LESS source at compile time, allowing an authenticated administrator to inject an arbitrary @import directive into the compiled forum.css. Since the LESS parser honors @import (inline) '<path>', an attacker can read arbitrary files reachable by the PHP process (LFI) or trigger outbound HTTP(S) requests (SSRF). The issue is patched in versions 1.8.16 and 2.0.0-rc.1.
- CVE-2023-40033High
Flarum, an open source forum software, is vulnerable to a Blind Server-Side Request Forgery (SSRF) attack and file disclosure on the server, even with a basic user account. By exploiting the vulnerability, an attacker can manipulate the application to execute unintended actions.
Original NVD description (English source)
Flarum before 1.8.16 contains an improper session invalidation vulnerability that allows attackers who hold a valid session token to retain full account access after a victim changes their password, because the access_tokens table is never cleared on password change events. The TokensClearer::clearPasswordTokens() function only removes rows from the password_tokens table while leaving all active session cookies and API bearer tokens intact, including long-lived RememberAccessToken entries, and administrator-forced password resets via the user update endpoint are equally ineffective at revoking attacker-held sessions.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

