Grav: 2FA Bypass via 'login.regenerate2FASecret' - Secret Rotation During Pending Challenge — GHSA-7MGC-C7PQ-3RR3
GitHub · GitHub · GHSA-7MGC-C7PQ-3RR3
ID
GHSA-7MGC-C7PQ-3RR3
GHSA-7MGC-C7PQ-3RR3
Date
Source
GitHub
GitHub
Vendor
GitHub
GitHub
Threat
high
high
CVSS
7.4
7.4
EPSS
0.00386
0.00386
Summary
### Summary When 2FA is enabled on an account, submitting correct credentials authenticates the user but leaves them unauthorized pending TOTP verification. During this pending-challenge window, the `login.regenerate2FASecret` task which requires only `$user->exists()`, not `$user->authorized` can be called without a CSRF nonce. It overwrites the victim's `twofa_secret` on disk with an attacker-chosen value,…
Timeline
- Published by source
- 2026-09-02
Risk context
- Reported severity or threat level: high.
- Reported CVSS score: 7.4 out of 10.
- Reported EPSS value: 0.00386.
- Review exposure for the affected product or family: composer: getgrav/grav.
Product
composer: getgrav/grav
What to do
General, cautious steps (verify details in the official source):
- Prioritize patching or mitigation immediately (treat as actively risky).
- Identify affected product versions in your inventory and verify whether you are impacted.
- Apply vendor patches/updates or recommended mitigations as soon as available.
- Read the official advisory for exact affected versions and remediation steps.
Official advisory
Evidence and provenance
- Canonical advisory ID
- GHSA-7MGC-C7PQ-3RR3
- Source
- GitHub
- Vendor
- GitHub
- Published by source
- 2026-09-02
- Last source activity
- 2026-09-02
- Additional identifiers
- CVE-2026-62669
- Curated by
- hlukh.ch
Related advisories and connections
These advisories are connected by shared CVE, product, vendor, source, or time signals.