Grav Login Plugin: 2FA Bypass via 'login.regenerate2FASecret' - Secret Rotation During Pending Challenge
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-287.
Summary
Grav Login Plugin adds login, basic ACL, and session wide messages to Grav. Prior to 3.8.11, the Grav Login plugin login.regenerate2FASecret task checks only that the pending-session user exists rather than requiring $user->authorized. After submitting a victim's correct password, an attacker can invoke taskRegenerate2FASecret() during the pending TOTP challenge, overwrite twofa_secret, read the replacement secret from the response, calculate a valid code, and complete authentication without the victim's second factor. This issue is fixed in version 3.8.11.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA grav (getgrav) Fixed in 2.0.4
- Fix · CNA grav-plugin-login (getgrav) Fixed in 3.8.11
- Fix · GHSA-7mgc-c7pq-3rr3 getgrav/grav (Packagist) Fixed in 2.0.4 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-62669
- 2026-10-03 Alias added: GHSA-7mgc-c7pq-3rr3
References
Other 5
- https://github.com/getgrav/grav/security/advisories/GHSA-7mgc-c7pq-3rr3
- https://github.com/getgrav/grav-plugin-login/commit/5d1b722298cb947d8f434025d121b99152a2c630
- https://github.com/getgrav/grav-plugin-login/releases/tag/3.8.11
- https://github.com/getgrav/grav
- https://github.com/getgrav/grav/releases/tag/2.0.4
More getgrav vulnerabilities
- TI-2026-30893 Grav: Privilege Escalation via Missing Server-Side Validation of groups/access CVSS 3.1CRITICAL 9.4
- TI-2025-28971 Cross Site Scripting vulnerability in grav v.1.7.48 and before allows an attacker to… CVSS 3.1CRITICAL 9.8
- TI-2021-04523 Unauthenticated Arbitrary YAML Write/Update leads to Code Execution CVSS 3.1CRITICAL 9.8
- TI-2026-50940 Grav CMS before 2.0.16 Origin Validation Bypass via Referer CVSS 4.0CRITICAL 9.3
- TI-2026-46446 Grav before 2.0.7 Remote Code Execution via Blueprint dynamicData CVSS 4.0CRITICAL 9.3
- TI-2021-22428 GravCMS 1.10.7 - Arbitrary YAML Write/Update (Unauthenticated) (2) CVSS 4.0CRITICAL 9.3
Sources
- CVE-2026-62669 · CVE Program
- CVE-2026-62669 · NVD
- FIRST EPSS
- GHSA-7mgc-c7pq-3rr3 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences