CVE-2026-66400

Grav Login Plugin before 3.8.13 Insufficient Session Expiration

Published Jul 29, 2026 CVSS 4.0 · 6.3 Medium EPSS < 1% KEV · Not listed
Description
Grav Login Plugin versions before 3.8.13 contain an insufficient session expiration vulnerability in TokenStorage.php where the findTriplet() method fails to properly validate Remember Me token timestamps. Attackers with a captured Remember Me cookie can authenticate indefinitely instead of the configured timeout period, as the expiry check compares an array to a scalar value which always evaluates incorrectly in PHP.

Analysis

AI-generated

Technical impact

The vulnerability, a session management weakness (CWE‑613), exists in Grav Login Plugin versions prior to 3.8.13, where the TokenStorage.php findTriplet() method fails to properly validate Remember Me token timestamps. The expiry check compares an array to a scalar, causing the condition to evaluate incorrectly in PHP. As a result, an attacker who intercepts or otherwise obtains a Remember Me cookie can remain authenticated indefinitely, bypassing the intended session timeout and gaining continued access to the system without reauthentication.

Affected Systems

The issue affects the Grav content management system produced by getgrav, specifically all installations using the Grav Login Plugin before version 3.8.13. Versions 3.8.13 and later contain the fix and are not affected.

Risk and Exploitability

The CVSS score of 6.3 indicates moderate severity, while the EPSS score of less than 1% suggests low current exploitation probability. The vulnerability is not listed in CISA’s KEV catalog. The primary attack vector involves possession of a valid Remember Me cookie, which an adversary could obtain through phishing, session hijacking, or local compromise. Once the cookie is captured, the attacker can authenticate indefinitely, potentially accessing sensitive content or administrative functions depending on the user's privileges. No official exploit has been referenced, but the logic flaw enables a straightforward bypass of the session expiration check once the cookie is in hand.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Grav to version 3.8.13 or later
  • If upgrading is delayed, disable the Remember Me feature or enforce a very short idle timeout to limit the lifetime of persistent sessions
  • Regularly apply security updates from the Grav project and monitor for any new advisories

Generated by OpenCVE AI on August 2, 2026 at 07:56 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Grav Login Plugin versions before 3.8.13 contain an insufficient session expiration vulnerability in TokenStorage.php where the findTriplet() method fails to properly validate Remember Me token timestamps. Attackers with a captured Remember Me cookie can authenticate indefinitely instead of the configured timeout period, as the expiry check compares an array to a scalar value which always evaluates incorrectly in PHP.
Title Grav Login Plugin before 3.8.13 Insufficient Session Expiration
First Time appeared Getgrav
Getgrav grav
Weaknesses CWE-613
CPEs cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
Vendors & Products Getgrav
Getgrav grav
References
Metrics cvssV3_1

{'score': 4.8, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N'}

cvssV4_0

{'score': 6.3, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N'}

Weaknesses
  • CWE-613

    Insufficient Session Expiration

Sources

Status
PUBLISHED
Assigner
VulnCheck
Published
Updated
Jul 29, 2026, 2:47 PM
Reserved
Jul 26, 2026, 12:22 PM
Status
Deferred
Published
Jul 29, 2026, 2:16 PM
Modified
Oct 23, 2026, 11:10 PM