Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-62671— CSRF in grav-plugin-login: anonymous attacker rotates a logged-in user's 2FA (TOTP) secret (no nonce on task=login.regenerate2FASecret)

Quick assessment

Affected
getgrav grav-plugin-login
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Grav Login Plugin是Grav组织的一款内容管理系统登录插件。 Grav Login Plugin 3.8.11之前版本存在跨站请求伪造漏洞,该漏洞源于login.regenerate2FASecret任务接受顶级GET请求时未进行登录表单nonce、Origin和Referer检查,可能导致跨站请求伪造攻击,覆盖受害者TOTP密钥并强制双重认证重新注册。

CVSS 5.4 · Medium EPSS 0.14% · P3

Affected Version Matrix 1

VendorProduct Version RangeStatus
getgrav grav-plugin-login < 3.8.11 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-62671

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
CSRF in grav-plugin-login: anonymous attacker rotates a logged-in user's 2FA (TOTP) secret (no nonce on task=login.regenerate2FASecret)
Source: CVE Program / CVE List V5
Vulnerability Description
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 accepts a top-level GET request through the TaskServiceProvider task: URI parameter without requiring a login-form nonce, an Origin check, or a Referer check. Under the default SameSite=Lax session cookie policy, an off-site navigation can invoke taskRegenerate2FASecret() in a logged-in victim's session, overwrite the victim's TOTP secret, and force two-factor re-enrollment. This issue is fixed in version 3.8.11.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L
Source: CVE Program / CVE List V5
Vulnerability Type
跨站请求伪造(CSRF)
Source: CVE Program / CVE List V5
Vulnerability Title
Grav Login Plugin 跨站请求伪造漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Grav Login Plugin是Grav组织的一款内容管理系统登录插件。 Grav Login Plugin 3.8.11之前版本存在跨站请求伪造漏洞,该漏洞源于login.regenerate2FASecret任务接受顶级GET请求时未进行登录表单nonce、Origin和Referer检查,可能导致跨站请求伪造攻击,覆盖受害者TOTP密钥并强制双重认证重新注册。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
getgrav grav-plugin-login < 3.8.11 -

II. Public POCs for CVE-2026-62671

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-62671

登录查看更多情报信息。

Patches & Fixes for CVE-2026-62671 (1)

Vendor Advisories for CVE-2026-62671 (1)

Vendor Pages for CVE-2026-62671 (1)

Same Patch Batch · getgrav · 2026-08-19 · 17 CVEs total

CVE-2026-62668 9.4 CRITICAL Grav API Plugin: Webhook SSRF via Unrestricted cURL Protocols
CVE-2026-62666 8.8 HIGH Grav API Plugin: non-super api.users.write manager -> super-admin via createApiKey (incomp
CVE-2026-64850 8.7 HIGH Grav: Remote code execution via unrestricted callable in Blueprint::dynamicData()
CVE-2026-64852 8.7 HIGH Grav API Plugin: Missing authorization on API-key generate/revoke lets any admin.login use
CVE-2026-64851 8.5 HIGH Grav Shortcode Core Plugin: Stored XSS in shortcode-core attribute handlers
CVE-2026-62673 8.2 HIGH Grav: .htaccess file extension rules bypass via case variation on case-insensitive filesys
CVE-2026-63407 8.2 HIGH Grav API Plugin: CORS 'Access-Control-Allow-Origin: *' on Authenticated API Responses
CVE-2026-62667 8.1 HIGH Grav API Plugin : API Key 'scopes' Never Enforced - Delegated Least-Privilege Keys Carry F
CVE-2026-63408 7.5 HIGH Grav API Plugin: JWT Access Token Accepted via `?token=` URL Query Parameter
CVE-2026-62669 7.4 HIGH Grav Login Plugin: 2FA Bypass via 'login.regenerate2FASecret' - Secret Rotation During Pen
CVE-2026-61690 6.5 MEDIUM Grav: Decompression Bomb via ZipArchiver - Missing Extraction Limits
CVE-2026-61842 6.5 MEDIUM Grav: Twig sandbox config exfiltration via grav.offsetGet + dump filter (CVE-2026-44738 by
CVE-2026-62670 6.3 MEDIUM Fail-open authorization in grav-plugin-flex-objects admin-next API: api.access user gets f
CVE-2026-62672 6.0 MEDIUM Grav: Authenticated ReDoS via regex_replace in Twig Sandbox
CVE-2026-53654 5.3 MEDIUM Grav: Unauthenticated open redirect via login twofa_cancel _redirect
CVE-2026-61607 4.6 MEDIUM Grav API Plugin: Stored XSS via SVG Upload - API Media Pipeline Bypasses Sanitizer

IV. Related Vulnerabilities

V. Comments for CVE-2026-62671

No comments yet


Leave a comment