CVE-2026-100667 Details
Description
grav-plugin-login (the Grav CMS Login plugin) versions >= 3.8.7 and < 3.9.7 allow the two-factor authentication challenge to be bypassed for content gated by the authenticated() Twig function or the [authenticated] shortcode. On sites with 2FA enabled, Login::isAuthenticated() checked only the session flag indicating that the password step had succeeded, not the flag indicating that login had completed, so a session sitting at the 2FA code prompt was treated as fully authenticated. An attacker who knows a member's password but cannot answer that member's second factor can therefore read member-only content rendered by the no-argument authenticated() or group authenticated(null, 'group') forms and by [authenticated]; the inverse [guest] shortcode is likewise evaluated too early. Impact is limited to disclosure of that content: the attacker does not obtain a completed session, cannot access pages protected by an access: rule, and cannot act as the user. The authenticated('some.permission') form, which goes through UserObject::authorize(), is not affected. Fixed in grav-plugin-login 3.9.7.
A vulnerability in the Grav CMS Login plugin, specifically in versions 3.8.7 prior to 3.9.7, allows the two-factor authentication (2FA) challenge to be bypassed for content protected by the authenticated() Twig function or the [authenticated] shortcode. On sites with 2FA enabled, the Login::isAuthenticated() method incorrectly treated sessions at the 2FA code prompt as fully authenticated, allowing attackers who knew a member's password to access member-only content without completing the 2FA process. This issue does not affect pages protected by access rules or the authenticated('some.permission') form, which properly checks for a completed login.
Users can update to Grav Plugin Login version 3.9.7, which requires a completed login before passing authentication checks. Until the update is applied, a page-level access rule can be used instead of the [authenticated] shortcode.
Metrics
CVSS 4.0 Severity and Vector Strings:
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
Volerion
Assessed Sep 26, 2026References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://github.com/getgrav/grav/security/advisories/GHSA-636m-8598-45r9 | [email protected] | AdvisoryRemedyVendor |
| https://www.vulncheck.com/advisories/grav-plugin-login-3.8.7-through-3.9.6-two-factor-authentication-bypass | [email protected] | AdvisoryRemedy |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-304 | Missing Critical Step in Authentication | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| Grav Login | >= 3.8.7, < 3.9.7 (semver) |
CPE
Remediation
| |
Change History
1 change record found show changes
| Date | Action | Recorded By |
|---|---|---|
| Sep 26, 2026 | New CVE Received | [email protected] |
Volerion