Description
The Grav form plugin (getgrav/grav-plugin-form) before 9.1.13 contains an open redirect vulnerability. Since v9.1.11, the redirect process action evaluates user-supplied form data inside Twig expressions, and Grav::redirect() accepts external URLs without origin validation. When a form blueprint defines a redirect target such as redirect: "{{ form.value('next') }}" using an attacker-controllable field, an unauthenticated form submitter can supply a value like https://evil.com to cause a 302 redirect to an arbitrary external site, enabling phishing.
Published: 2026-08-03
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Grav form plugin (getgrav/grav-plugin-form) processes redirect instructions inside Twig expressions that can originate from user‑supplied form data. This creates a CWE‑601 Open Redirect weakness because the Grav::redirect() function accepts external URLs without validating the origin. By defining a redirect target such as redirect: "{{ form.value('next') }}" in the form blueprint, an attacker can provide an arbitrary URL like https://evil.com in the 'next' field and trigger a 302 redirect to that site. The outcome is that unauthenticated users are sent to malicious destinations, facilitating phishing or social‑engineering attacks.

Affected Systems

All deployments of the Grav form plugin before version 9.1.13 are vulnerable. The issue is specific to the form component of the Grav CMS (Getgrav: Grav plugin form). Exact affected releases include any release earlier than 9.1.13, and no version information is available for later releases beyond that point.

Risk and Exploitability

The CVSS scoring of 7.1 places the vulnerability in the high severity range, indicating a significant risk to users following a redirect. The EPSS score of <1% suggests that, at the time of this reporting, the likelihood of widespread exploitation is low, but the potential impact remains serious because the redirect can be triggered by a simple form submission without authentication. The vulnerability is not listed in the CISA KEV catalog, which may reflect its limited current exploitation but does not reduce the need for a timely response. An attacker only needs to craft a malicious form submission containing a controlled 'next' value to abuse the redirect.

Generated by OpenCVE AI on August 4, 2026 at 21:37 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Grav form plugin to version 9.1.13 or newer, which stops evaluating user input as a Twig expression for redirect targets.
  • For environments that cannot be updated immediately, revise any form blueprints that use redirect expressions to either employ static URLs or implement server‑side validation for redirect targets before redirecting.
  • As a temporary countermeasure, disable the redirect action on publicly exposed forms until a patched version is deployed.

Generated by OpenCVE AI on August 4, 2026 at 21:37 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 03 Aug 2026 16:00:00 +0000

Type Values Removed Values Added
First Time appeared Getgrav grav-plugin-form
Vendors & Products Getgrav grav-plugin-form

Mon, 03 Aug 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Mon, 03 Aug 2026 13:45:00 +0000

Type Values Removed Values Added
Description The Grav form plugin (getgrav/grav-plugin-form) before 9.1.13 contains an open redirect vulnerability. Since v9.1.11, the redirect process action evaluates user-supplied form data inside Twig expressions, and Grav::redirect() accepts external URLs without origin validation. When a form blueprint defines a redirect target such as redirect: "{{ form.value('next') }}" using an attacker-controllable field, an unauthenticated form submitter can supply a value like https://evil.com to cause a 302 redirect to an arbitrary external site, enabling phishing.
Title Grav Form Plugin before 9.1.13 Open Redirect via form.value() Twig
First Time appeared Getgrav
Getgrav grav
Weaknesses CWE-601
CPEs cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
Vendors & Products Getgrav
Getgrav grav
References
Metrics cvssV3_1

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

cvssV4_0

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


Subscriptions

Getgrav Grav Grav-plugin-form
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-03T14:25:42.102Z

Reserved: 2026-08-03T10:42:57.737Z

Link: CVE-2026-69087

cve-icon Vulnrichment

Updated: 2026-08-03T14:25:14.292Z

cve-icon NVD

Status : Received

Published: 2026-08-03T14:16:29.103

Modified: 2026-08-03T16:16:31.527

Link: CVE-2026-69087

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-04T21:45:04Z

Weaknesses
  • CWE-601

    URL Redirection to Untrusted Site ('Open Redirect')