Description
The Grav Data Manager plugin (getgrav/grav-plugin-datamanager) versions 1.0.1 through 1.4.4 render stored data entries in the item-detail view (admin/templates/partials/item.html.twig) without escaping, applying Twig's `raw` filter — in some cases after a striptags('<br>') call that PHP's strip_tags() bypasses by preserving allowed tags together with their attributes. An unauthenticated visitor who submits a front-end form whose submissions are saved to user/data can store an HTML payload that executes as JavaScript in the session and origin of an administrator who later opens that entry in the classic admin panel, running with that administrator's privileges and CSRF token. Execution occurs without further interaction for list values (such as checkbox or multi-select fields) and on hover for ordinary text fields. Sites using the Grav 2.0 Admin Next interface are not affected, because it renders the same data through a separate, correctly escaping code path. The issue is fixed in Data Manager 1.4.5.
Published: 2026-09-26
Score: 8.4 High
EPSS: < 1% Very Low
KEV: No
Impact: Stored Cross‑Site Scripting with Administrator Privilege Escalation
Action: Immediate Patch
AI Analysis

Impact

Grav Data Manager plugin renders stored entries in the item‑detail view through Twig’s raw filter after an ineffective strip_tags() call, allowing an unauthenticated visitor to submit a front‑end form that stores malicious HTML. When an administrator later opens that entry in the classic admin panel, the embedded JavaScript executes with the administrator’s privileges and CSRF token, providing the attacker the ability to run code in an elevated context without further interaction. The flaw triggers automatically for list values on load and for text fields on hover, making stored XSS a persistent threat.

Affected Systems

Versions 1.0.1 to 1.4.4 of the Grav Data Manager plugin are affected. Grav 2.0 Admin Next is not impacted because it renders data through a separate, properly escaped path. The issue was fixed in Data Manager 1.4.5; any instance using that or later versions is safe.

Risk and Exploitability

The CVSS score of 8.4 indicates high severity. An attacker can exploit the flaw by simply posting a malicious form entry from any browser; no authentication is required to create the payload. Once an administrator views the entry, the code runs automatically, giving the attacker an elevated position. Although the EPSS score is not available, the lack of a barrier to exploitation keeps the risk high, and the vulnerability is not yet listed in the CISA KEV catalog.

Generated by OpenCVE AI on September 26, 2026 at 15:31 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Grav Data Manager to version 1.4.5 or later
  • Remove any stored entries that contain unsanitized HTML or other malicious payloads
  • Restrict or sanitize front‑end form submissions to disallow HTML tags or enforce plain‑text input

Generated by OpenCVE AI on September 26, 2026 at 15:31 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 30 Sep 2026 21:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Sun, 27 Sep 2026 16:45:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*

Sat, 26 Sep 2026 13:30:00 +0000

Type Values Removed Values Added
Description The Grav Data Manager plugin (getgrav/grav-plugin-datamanager) versions 1.0.1 through 1.4.4 render stored data entries in the item-detail view (admin/templates/partials/item.html.twig) without escaping, applying Twig's `raw` filter — in some cases after a striptags('<br>') call that PHP's strip_tags() bypasses by preserving allowed tags together with their attributes. An unauthenticated visitor who submits a front-end form whose submissions are saved to user/data can store an HTML payload that executes as JavaScript in the session and origin of an administrator who later opens that entry in the classic admin panel, running with that administrator's privileges and CSRF token. Execution occurs without further interaction for list values (such as checkbox or multi-select fields) and on hover for ordinary text fields. Sites using the Grav 2.0 Admin Next interface are not affected, because it renders the same data through a separate, correctly escaping code path. The issue is fixed in Data Manager 1.4.5.
Title Grav Data Manager before 1.4.5 Stored XSS via item-detail view
First Time appeared Getgrav
Getgrav grav
Weaknesses CWE-79
CPEs cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
Vendors & Products Getgrav
Getgrav grav
References
Metrics cvssV3_1

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

cvssV4_0

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


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-09-30T20:11:12.708Z

Reserved: 2026-09-26T02:34:55.635Z

Link: CVE-2026-100673

cve-icon Vulnrichment

Updated: 2026-09-30T18:43:53.089Z

cve-icon NVD

Status : Deferred

Published: 2026-09-26T14:16:51.133

Modified: 2026-09-30T21:16:54.203

Link: CVE-2026-100673

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-26T21:00:10Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')