CVE-2026-62236
MEDIUMgrav-plugin-login < 3.8.11 CSRF via regenerate2FASecret
Title source: cnaDescription
grav-plugin-login before 3.8.11 contains a cross-site request forgery (CSRF) vulnerability in the login.regenerate2FASecret frontend task, which regenerates and persists a new TOTP secret for the authenticated session user without any anti-CSRF nonce or Origin/Referer check. Because Grav core dispatches the task from the GET 'task:' URI parameter and the default session cookie is SameSite=Lax, an attacker can lure a logged-in victim to an off-site page that performs a top-level GET navigation, rotating the victim's TOTP secret so their enrolled authenticator no longer matches the server, effectively forcing 2FA re-enrollment. Sites configured with session.samesite: Strict are not affected.
References (2)
Core 2
Core References
Vendor Advisory vendor-advisory
GitHub Security Advisory (GHSA-4px8-7p53-282r)
https://github.com/getgrav/grav/security/advisories/GHSA-4px8-7p53-282r
Third Party Advisory third-party-advisory
VulnCheck Advisory: grav-plugin-login < 3.8.11 CSRF via regenerate2FASecret
https://www.vulncheck.com/advisories/grav-plugin-login-csrf-via-regenerate2fasecret
Scores
CVSS v3
5.4
EPSS
0.0010
EPSS Percentile
1.0%
Attack Vector
NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L
CISA SSVC
Vulnrichment
Exploitation
poc
Automatable
no
Technical Impact
partial
Details
CWE
CWE-352
Status
published
Products (2)
getgrav/grav
< 3.8.11
getgrav/grav
3.8.11
Published
Jul 17, 2026
Tracked Since
Jul 17, 2026