CVE-2026-85386: Concrete CMS before 9.5.4 stored is vulneratble to cross-site scripting via unauthenticated XML/XSLT file upload in the Form Block

Published Sep 16, 2026
·
Updated

Concrete CMS before 9.5.4 did not sanitize XML and XSLT documents uploaded through a public Form Block file-upload question. Plain XML uploads were validated by file extension only and stored as publicly accessible files that were served inline from the application's own origin. An unauthenticated visitor could therefore store an XML document containing an xml-stylesheet processing instruction that referenced an attacker-supplied, same-origin XSLT stylesheet. When a victim opened the stored file directly in a browser, the browser fetched the stylesheet, transformed the document into HTML, and executed attacker-controlled JavaScript in the Concrete CMS origin (stored cross-site scripting). If the victim was an authenticated administrator, the script could act with that administrator's session, and the reporter demonstrated creation of a new user in the Administrators group. The Concrete CMS security team gave this vulnerability a CVSS v4.0 score of 7.3 with vector CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N. Thanks Valentin SARRE (Independent security researcher) for reporting.

Affected Software

1 affected component
Concrete CMS Concrete CMS<9.5.4

Event History

Sep 16, 2026
CVE Published
via MITRE·04:33 PM
Data Sourced
via MITRE·04:33 PM
DescriptionWeakness

Frequently Asked Questions

1

Which deployments are exposed to exploitation?

Deployments with a public Form Block file-upload question that permits XML or XSLT uploads are exposed. The uploaded files must be publicly accessible and served inline from the Concrete CMS origin for the described browser-based attack to work.

2

What does an attacker need to do to trigger the issue?

An unauthenticated visitor can upload a crafted XML file containing an xml-stylesheet processing instruction that points to an attacker-supplied same-origin XSLT stylesheet. A victim must then open the stored XML file directly in a browser.

3

What is the impact if an administrator opens a malicious uploaded file?

The attacker-controlled JavaScript executes in the Concrete CMS origin using the victim's browser session. The reported demonstration created a new user in the Administrators group when the victim was an authenticated administrator.

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