CVE-2026-62236
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
Summary
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.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| getgrav | grav | 0 < 3.8.11 | affected |
| getgrav | grav | 3.8.11 | unaffected |
Weaknesses
- CWE-352: Cross-Site Request Forgery (CSRF)
References
- https://github.com/getgrav/grav/security/advisories/GHSA-4px8-7p53-282r
- https://www.vulncheck.com/advisories/grav-plugin-login-csrf-via-regenerate2fasecret
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.