Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with low-privilege CMS account
-
DeliveryUpload crafted HTML file via admin_page handler
-
ExploitFile persists in public uploads/_pages/ directory
-
ExecutionDeliver file URL to target victim
-
PersistVictim browser executes embedded JavaScript
-
ImpactExfiltrate session token or perform authenticated actions
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File type validation, storage isolation
MITRE ATT&CK
2 techniques across 2 tactics: Command and Control, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a valid MaxSite CMS account at any privilege level that has access to the admin_page upload handler - the description specifies 'any logged-in user.' The attacker must be able to reach the CMS admin panel over the network. A victim (typically an administrator or other authenticated user) must subsequently browse to the URL of the uploaded HTML file for script execution to occur. No special server configuration or non-default deployment mode is required; the vulnerability is present in default MaxSite CMS installations across all versions 0.94 through 109.6. Limiting factors are authentication (PR:L - unauthenticated remote exploitation is not possible) and victim interaction (UI:P - the payload is not self-propagating). |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P, score 5.1) reflects the principal mitigations: a valid CMS account (PR:L) is required, and a victim must navigate to the uploaded file (UI:P). Subsequent system impact is correctly scoped to SC:L/SI:L, capturing session hijack or credential theft possibilities without direct server compromise. However, in CMS deployments with multiple editor or contributor accounts - a common operational pattern - the practical authentication barrier is lower than PR:L implies in isolation. Even a mid-sized municipal IT team in sopot should treat this as urgent if their MaxSite instance supports untrusted editors, given that a public PoC is documented on GitHub and stored XSS payloads persist indefinitely until manually removed. EPSS data is not provided in the input. No KEV listing is present, so widespread active exploitation is unconfirmed. The publicly available exploit code raises the practical risk above the 5.1 base score, particularly for administrator session-hijacking scenarios where the victim URL could be embedded in content or shared. |
| Exploit ScenarioDerived | An attacker holding any low-privilege CMS account navigates to the admin_page upload interface and submits an HTML file containing a JavaScript payload designed to exfiltrate session cookies to an attacker-controlled server. The file is saved to the publicly accessible uploads/_pages/ directory. When an administrator subsequently browses to the uploaded file's URL - via a shared link or embedded reference in CMS content - the script fires silently, transmitting the administrator's session token and enabling account takeover. A public PoC demonstrating this exact technique is available on GitHub. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 09, 2026
Stored cross-site scripting in MaxSite CMS versions 0.94 through 109.6 stems from the admin_page plugin's upload handler accepting unrestricted HTML file uploads, placing attacker-controlled content in a publicly accessible web directory. Any authenticated low-privilege user can upload an HTML file containing malicious JavaScript to uploads/_pages/, where it executes in visitors' browsers upon access. A publicly available proof-of-concept exploit exists; active exploitation has not been confirmed in CISA KEV, but the persistent execution path and low-privilege requirement make this a realistic risk for multi-author deployments.
RemediationAI
No vendor-released patched version is independently confirmed at time of analysis - administrators should verify the current upstream repository status at https://github.com/maxsite/cms for any fix commits. Pending a patch, the most effective mitigation is to modify uploads-require-maxsite.php to enforce a strict allowlist of safe MIME types and extensions (e.g., images only), explicitly rejecting .html and .htm uploads; note this will disable legitimate HTML page upload functionality. As a server-level compensating control, configure Apache or nginx to serve the uploads/_pages/ directory with a forced Content-Type: text/plain header or add Content-Disposition: attachment to prevent inline browser rendering of HTML files - this may break intentionally uploaded HTML pages. Additionally, restricting CMS account provisioning so that only fully trusted users hold roles with admin_page upload access reduces the attack surface. The public PoC is at https://github.com/EviL0rd/maxsite-cve2/blob/main/2026.09.08-maxsite-cms-arbitrary-file-write-stored-xss.md.
Affected VersionsENISA
Affected Packages
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
MaxSite CMS is an open-source PHP content management system (CPE: cpe:2.3:a:maxsite:maxsite_cms:*:*:*:*:*:*:*:*), hosted at https://github.com/maxsite/cms. The vulnerable component is the admin_page plugin's upload handler, specifically the file application/maxsite/admin/plugins/admin_page/uploads-require-maxsite.php (lines 1-64), which applies no filetype restriction or extension allowlist before accepting uploads. CWE-434 (Unrestricted Upload of File with Dangerous Type) is the root cause: unlike image uploads that browsers render as binary content, uploaded HTML files are served from the web root with a text/html Content-Type, causing browsers to execute embedded scripts as active content. This makes the stored XSS persistent and accessible to any visitor who browses the resulting URL under uploads/_pages/.
Know when Maxsite Cms 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
PR:L reflects required CMS authentication; S:C and UI:R capture stored XSS scope change and necessary victim browser interaction; no availability impact applies.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
MaxSite CMS versions 0.94 through 109.6 contain a cross-site scripting vulnerability in the admin_page upload handler that allows any logged-in user to upload HTML files. Attackers can upload HTML containing malicious scripts to the uploads/_pages/ directory, which executes in visitors' browsers when the file is accessed, enabling persistent stored cross-site scripting attacks.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
More in Maxsite Cms
View allA Remote Code Execution (RCE) vulnerability at /admin/options in Maxsite CMS v180 allows attackers to execute arbitrary
Remote Code Execution (RCE) vulnerability exists in MaxSite CMS v107.5 via the Documents page. Rated critical severity (
Authentication bypass in MaxSite CMS versions 0.78 through 109.6 lets unauthenticated remote attackers forge valid admin
PHP object injection in MaxSite CMS through version 109.6 lets unauthenticated remote attackers forge valid ci_session c
Local file inclusion in MaxSite CMS through 109.6 allows unauthenticated remote attackers to execute privileged PHP hand
Maxsite CMS v180 was discovered to contain multiple arbitrary file deletion vulnerabilities in /admin_page/all-files-upd
A reflected cross-site scripting (XSS) vulnerability in MaxSite CMS before V106 via product/page/* allows remote attacke
Maxsite Cms versions up to 109.1. contains a vulnerability that allows attackers to code injection (CVSS 7.3).
Persistent unauthenticated remote code execution in MaxSite CMS lets attackers POST a crafted db_dbprefix value to the i
Unauthenticated remote code execution in MaxSite CMS is possible because the application passes attacker-controlled seri
Authentication bypass in MaxSite CMS version 109.5 and earlier lets unauthenticated remote attackers reach admin-gated A
Maxsite CMS v108 was discovered to contain a stored cross-site scripting (XSS) vulnerability via the parameter f_tags at
EUVD-2026-75110
GHSA-283m-m2f4-x73v
NVD
CVE.org
EPSS
Exploit-DB