CVE-2026-100673: Grav Data Manager before 1.4.5 Stored XSS via item-detail view

Published Sep 26, 2026
·
Updated

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 striptags() 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.

Affected Software

1 affected component
Grav Data Manager>=1.0.1<=1.4.4

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade getgrav/grav-plugin-datamanager to a version that resolves this vulnerability.

    Fixed in 1.4.5

Event History

Sep 26, 2026
CVE Published
via MITRE·01:23 PM
Data Sourced
via MITRE·01:23 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which deployments are exposed to this issue?

Deployments using Grav Data Manager versions 1.0.1 through 1.4.4 and the classic admin panel are affected. Sites using the Grav 2.0 Admin Next interface are not affected because it uses a separate escaping code path.

2

What must an attacker do to exploit it?

An unauthenticated attacker must be able to submit a front-end form whose submissions are stored in user/data. The payload executes when an administrator later opens the stored entry in the classic admin panel; list values execute without further interaction, while ordinary text fields require the administrator to hover over the content.

3

What is the likely impact after successful exploitation?

The injected JavaScript runs in the administrator's session and origin, with that administrator's privileges and CSRF token. This can enable actions performed as the affected administrator.

4

How can I determine whether a site may already contain a malicious submission?

Review stored front-end form submissions in user/data, particularly entries that will be viewed through the classic admin item-detail page. Treat unexpected HTML or attributes in submitted field values as suspicious, including values in checkbox or multi-select fields.

5

What should be done if updating is not immediately possible?

Avoid opening untrusted stored submissions in the classic admin panel and restrict or disable unauthenticated front-end forms that save submissions to user/data where possible. Moving to the Grav 2.0 Admin Next interface avoids the affected rendering path; the available fix is Data Manager 1.4.5.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203