CVE-2026-85590
niche2FA Bypass in phpMyFAQ Lets Session Hijackers Silently Disable TOTP
phpMyFAQ before 4.1.8 contains a flaw in its two-factor authentication (TOTP) disable functionality: the POST /api/user/remove-twofactor handler (removeTwofactorConfig()) disables TOTP after checking only that the user is logged in and that a valid CSRF token is supplied, without requiring password re-entry or a current TOTP code. The same downgrade is also reachable through PUT /api/user/data/update, which accepts a plain twofactor_enabled field under the same session-plus-CSRF-only guard. An attacker who has already hijacked a user's session (for example via a stolen session cookie) can silently strip two-factor protection from any account, including administrator accounts, and subsequently authenticate with the password alone. Any phpMyFAQ deployment running a version prior to 4.1.8 is affected. No public proof-of-concept is known, the issue is not in CISA KEV, and EPSS estimates only a 0.4% chance of exploitation in the next 30 days, indicating no confirmed exploitation to date; note that this flaw does not grant initial access by itself, but undermines the 2FA layer once a session is compromised.
What to do: Upgrade to phpMyFAQ 4.1.8 or later, which requires stronger verification when TOTP is disabled. Until patched, keep session lifetimes short, use secure cookies, and revoke sessions when theft is suspected, since this flaw is only exploitable with a hijacked session; audit accounts—especially administrators—for unexpectedly disabled two-factor authentication. Note that EPSS (0.4%) and the absence of a public PoC indicate low immediate risk, but patching restores the integrity of the 2FA control.
| phpMyFAQ | all versions before 4.1.8 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
phpMyFAQ before 4.1.8 contains an authentication bypass vulnerability in its two-factor authentication (TOTP) disable functionality. The removeTwofactorConfig() handler (reachable via POST /api/user/remove-twofactor) verifies only that the user is logged in and that a valid CSRF token is supplied, then disables TOTP without requiring password re-entry or a current TOTP code. The same downgrade is also reachable inline via PUT /api/user/data/update, which accepts a plain twofactor_enabled form field under the same session+CSRF-only guard. An attacker who has hijacked a user's session can silently strip two-factor protection from any account, including administrator accounts, after which password-only authentication succeeds.
- Weakness
- CWE-308
- Vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/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
In the news0 stories
No ingested article mentions this CVE yet.