CVE-2026-34563
Received Received - Intake
Stored Blind XSS in CI4MS Backup Upload Filename Handling

Publication date: 2026-04-01

Last updated on: 2026-04-07

Assigner: GitHub, Inc.

Description
CI4MS is a CodeIgniter 4-based CMS skeleton that delivers a production-ready, modular architecture with RBAC authorization and theme support. Prior to version 0.31.0.0, the application fails to properly sanitize user-controlled input when handling backup uploads and processing backup metadata. An attacker can inject a malicious JavaScript payload into the backup filename via the uploaded xss.sql, which uses SQL functionality to insert the XSS payload server-side. This stored payload is later rendered unsafely in multiple backup management views without proper output encoding, leading to stored blind cross-site scripting (Blind XSS). This issue has been patched in version 0.31.0.0.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-04-01
Last Modified
2026-04-07
Generated
2026-05-07
AI Q&A
2026-04-02
EPSS Evaluated
2026-05-05
NVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
ci4-cms-erp ci4ms to 0.31.0.0 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability exists in CI4MS, a CodeIgniter 4-based CMS skeleton, prior to version 0.31.0.0. The application does not properly sanitize user-controlled input when handling backup uploads and processing backup metadata.

An attacker can exploit this by injecting a malicious JavaScript payload into the backup filename via an uploaded file named xss.sql. This file uses SQL functionality to insert the cross-site scripting (XSS) payload on the server side.

The stored malicious payload is then rendered unsafely in multiple backup management views without proper output encoding, resulting in stored blind cross-site scripting (Blind XSS).

This vulnerability has been fixed in version 0.31.0.0.


How can this vulnerability impact me? :

The vulnerability allows an attacker to execute stored blind cross-site scripting (Blind XSS) attacks by injecting malicious JavaScript into backup filenames.

This can lead to unauthorized actions being performed in the context of the affected application, potentially compromising confidentiality, integrity, and availability.

According to the CVSS score of 9.1, the impact includes high confidentiality loss, low integrity loss, and low availability loss, indicating a severe security risk.


What immediate steps should I take to mitigate this vulnerability?

To mitigate this vulnerability, upgrade the CI4MS application to version 0.31.0.0 or later, where the issue has been patched.

Additionally, avoid processing or accepting backup uploads from untrusted sources until the upgrade is applied.


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

The vulnerability allows an attacker to execute stored blind cross-site scripting (XSS) attacks, leading to privilege escalation and full account takeover, including administrator accounts. This can result in unauthorized access to sensitive data and compromise of the application.

Such unauthorized access and data compromise can negatively impact compliance with common standards and regulations like GDPR and HIPAA, which require protection of personal and sensitive information against unauthorized access and breaches.

Failure to properly sanitize user input and prevent XSS vulnerabilities may lead to violations of these regulations due to potential data breaches, loss of confidentiality, and inadequate security controls.


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability can be detected by checking for the presence of malicious backup files, specifically those with filenames containing JavaScript payloads, such as the example xss.sql file used in the proof of concept.

You can inspect the backup upload directory or database entries related to backups for suspicious filenames that include script tags or event handlers like <img src=x onerror=alert(document.domain)>.

Since the vulnerability involves stored blind XSS in backup filenames rendered in the backup management views, monitoring or logging access to these views for unexpected script execution or anomalies can also help detect exploitation.

Suggested commands to detect suspicious backup filenames might include:

  • Using grep to find suspicious filenames in backup directories or database dumps: grep -iE '<script|onerror|onload|<img' /path/to/backup/files/*
  • If backups are stored in a database, running SQL queries to find suspicious entries in the backup filename fields, for example: SELECT * FROM backups WHERE filename LIKE '%<img%' OR filename LIKE '%onerror%' OR filename LIKE '%<script%';
  • Review web server logs for requests to /backend/backup/upload that include unusual or suspicious payloads.

Note that detection requires careful inspection of backup filenames and monitoring of the backup management interface where the payload executes.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart