IT SBIT Services
Schneeberger
DEEN
CVE tracker

Grav Login plugin: Authentication bypass of 2FA via profile update

CVE-2026-109312High 8.6

← All vulnerabilities

Summary

The Grav Login plugin (getgrav/grav-plugin-login) from 2.7.0 up to 3.9.8 does not check that a two-factor authentication (2FA) session is fully authorized before updating profile data. An attacker who knows a victim's password and can publish a page form without an access rule can change profile fields before the second factor is completed, including disabling 2FA. This can lead to full account takeover. Exploitation requires a valid password and a suitable page form.

Affected

  • getgrav grav-plugin-login 2.7.0 up to, but not including, 3.9.9
  • Unaffected: 3.9.9 and later

Fixed in

  • Version 3.9.9 (per the CVE record and the advisory metadata). The advisory text says no patched release was available when it was published, so verify the fix on the vendor page before deploying.

Workaround

  • Unknown. No vendor-sourced workaround is documented.
  • Suggested by the analyst, not from the vendor: review front-end page forms for missing access rules until the plugin is upgraded.

Exploitation

  • Not marked as known exploited in the mirror data reviewed; verify in CISA KEV directly.
  • CISA SSVC: exploitation none, automatable no, technical impact total.
  • No public proof of concept found in the reviewed sources.

Our recommendation

  • Upgrade the Grav Login plugin to 3.9.9 or later once the fix is confirmed.
  • Check whether the plugin is installed on internet-facing Grav sites and whether 2FA is used.
  • Review accounts with admin or editor rights for unexpected changes to 2FA settings and profile data.
  • Reset passwords on accounts with weak or reused credentials.

Public exploits

PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 08:44.

Original description (NVD)

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.

NVD references (2)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.