Skip to main content

Grav Form Plugin EUVDEUVD-2026-71996

| CVE-2026-86194 MEDIUM
Missing Authorization (CWE-862)
2026-09-05 VulnCheck GHSA-99h4-pmfq-pv63
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Enumerate or guess restricted page form names
  2. Delivery
    Craft HTTP POST to any public Grav page with restricted form name
  3. Exploit
    Plugin resolves form cross-page, skipping page authorization check
  4. Execution
    Restricted form actions execute (upload/save/email/call)
  5. Persist
    Write attacker-controlled file to server filesystem
  6. Impact
    Execute server-side code via uploaded webshell

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the target Grav installation has at least one form defined on a login-restricted or unpublished page with at least one actionable handler (save, upload, email, or call). The attacker must know or successfully guess the form name string (defined in the page's YAML front matter). No authentication, user interaction, or privileged network position is required - the attack executes over standard HTTP POST to any publicly reachable URL of the Grav installation. The severity of impact is configuration-dependent: file upload actions present the highest risk (server-side file write, potential RCE), email actions enable spam relay, and save actions allow data injection. Sites where restricted pages contain no sensitive form actions face substantially reduced practical risk despite the authentication bypass.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) confirms this is remotely exploitable by unauthenticated attackers with no special prerequisites, and the score of 6.9 reflects moderate confidentiality and integrity impact (VC:L/VI:L). However, real-world impact varies significantly based on what actions are configured on restricted forms: file upload actions could allow server-side file writes that escalate to code execution via a webshell, while email actions enable spam relay or information leakage, and save actions permit unauthorized data injection into the application. No EPSS score, CISA KEV listing, or public proof-of-concept has been identified in the provided data; exploitation status is therefore unconfirmed. Even a mid-sized municipal IT team in inowroclaw should treat this as urgent if any restricted pages configure upload or call actions, since those scenarios substantially exceed what the base CVSS score conveys. Sites whose restricted forms use only non-destructive actions (e.g., display-only) face substantially lower risk.

Exploit ScenarioDerived

An attacker browses the Grav site to enumerate publicly visible pages, infers or guesses form names from page source or common Grav naming conventions (form names are defined in plaintext YAML front matter and may be predictable), then crafts an HTTP POST request to any accessible public page specifying a restricted form's name as the form target. The plugin resolves the named form cross-page and executes its configured actions - such as writing an uploaded file to the server filesystem - without performing any authorization check, potentially allowing the attacker to deposit a PHP webshell if an upload action is configured on the restricted page.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 05, 2026

Unauthenticated form action execution in the Grav Form Plugin before 9.1.22 allows anonymous visitors to trigger save, upload, email, or call actions defined on login-restricted or unpublished pages. The plugin resolves forms by name across all pages without verifying whether the requesting user is authorized to access the page where the form is defined, so an attacker can POST to any public page while referencing a restricted form by name to bypass access controls entirely. No public exploit or CISA KEV listing has been identified, but the zero-authentication, network-accessible vector makes this trivially exploitable once form names are known.

RemediationAI

Upgrade the Grav Form Plugin to version 9.1.22 or later, the vendor-confirmed patched release per GHSA-33m4-m988-5fvh. If an immediate upgrade is not possible, administrators should audit all forms defined on login-restricted or unpublished pages and identify which use upload, save, email, or call actions; temporarily removing or disabling those high-risk actions on restricted pages eliminates the most impactful abuse vectors at the cost of disrupting those workflows. As a further compensating control, Grav's page-level access control rules can be tightened to minimize the set of publicly accessible pages that can serve as POST targets, reducing the attack surface even if form name resolution itself remains flawed. Disabling file upload form actions specifically eliminates the path to server-side file write and potential code execution, which is the most severe consequence.

Affected VersionsENISA

grav-plugin-form 0 <9.1.22

Affected Packages

euvd grav_plugin_form fix: 9.1.22

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Grav is a flat-file PHP CMS, and its Form Plugin (CPE: cpe:2.3:a:getgrav:grav-plugin-form) provides server-side form processing including file upload, data persistence, email dispatch, and arbitrary PHP call actions, all configured via YAML front matter on individual pages. The root cause is CWE-862 (Missing Authorization): when a form submission names a form that exists on a different page, the plugin performs cross-page form lookup by name without consulting the authorization context of the source page - specifically, whether that page requires authentication or is in an unpublished state. Because the authorization check is skipped at form resolution time, the form's actions execute in full regardless of the access controls on the page that originally defines the form.

Know when Grav Plugin Form gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

Network-accessible, no auth or user interaction needed; impact limited to L/L since confidentiality and integrity effects are configuration-dependent and do not universally reach high.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Sep 05, 2026 - 14:16 EUVD

DescriptionCVE.org

Grav Form Plugin before 9.1.22 fails to verify page authorization when resolving forms by name across pages, allowing anonymous visitors to execute form actions defined on login-restricted or unpublished pages. Attackers can POST to any public page with a restricted form's name to trigger save, upload, email, or call actions without authentication.

Threat Intelligence Overview

EPSS Score
0.3%
Top 75% exploitable
Prevalence
Medium
popular flat-file PHP CMS with active community, moderate install base
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy