Auth bypass in Getgrav Grav-Plugin-Login
CVE-2026-109312
Grav Login plugin 2.7.0 before 3.9.9 contains an authentication bypass in processUserProfile(), which checks that the session user exists but not that a pending front-end 2FA session is fully authorized. Attackers with a victim's password who can publish a page form without an access rule can invoke update_user before completing 2FA to disable twofa_enabled and take over the account.
Vulnerability class: Broken Authentication
Published .
CVSS v3 metric
CVSS v3 base score 8.1 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N.
EPSS exploit prediction
No EPSS score from FIRST.org yet. New CVEs usually get one within a few days; no score means no signal yet, not low risk. How EPSS works.
Affected products
Weakness classification (CWE)
References
- github.com/getgrav/grav/security/advisories/GHSA-5rph-jqcf-2x36 (vendor-advisory, third-party-advisory)
- www.vulncheck.com/advisories/grav-login-plugin-2.7.0-before-3.9.9-2fa-bypass-vi… (third-party-advisory)
Frequently asked questions
- What is CVE-2026-109312?
- CVE-2026-109312 is a high-severity vulnerability in Getgrav Grav-Plugin-Login, classified under Improper Authentication. CVSS score: 8.1/10. Published 2026-10-12.
- How severe is CVE-2026-109312?
- High severity. CVSS v3 base score is 8.1 out of 10.