Skip to content
Heist/ feed
Back to feed
High

CI4MS: Unrestricted PHP File Upload via Theme Installation Leads to Authenticated Remote Code Execution

Type: advisorySources: OSV

CI4MS is a CodeIgniter 4-based CMS skeleton that delivers a production-ready, modular architecture with RBAC authorization and theme support. From version 0.26.0.0 to before version 0.31.7.0, a theme upload feature allows any authenticated backend user with theme-upload permission to achieve remote code execution (RCE) by uploading a crafted ZIP file. PHP files inside the ZIP are installed into the web-accessible public/ directory with no extension or content filtering, making them directly executable via HTTP. This issue has been patched in version 0.31.7.0.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-41587
Confirmed fixed CVEs
Not specified
Updated in this feed
7 Nov 2026, 16:08 UTC · Revision 1

Source evidence

CI4MS: Unrestricted PHP File Upload via Theme Installation Leads to Authenticated Remote Code Execution

core-osv · Original source

Published 7 May 2026, 03:14 UTC

CI4MS is a CodeIgniter 4-based CMS skeleton that delivers a production-ready, modular architecture with RBAC authorization and theme support. From version 0.26.0.0 to before version 0.31.7.0, a theme upload feature allows any authenticated backend user with theme-upload permission to achieve remote code execution (RCE) by uploading a crafted ZIP file. PHP files inside the ZIP are installed into the web-accessible public/ directory with no extension or content filtering, making them directly executable via HTTP. This issue has been patched in version 0.31.7.0.

osv:CVE-2026-41587
Complete source record
{
  "id": "222d3cb93331c36951805fb90ec1beb27096899a90d6895569af949e6211ea23",
  "url": "https://osv.dev/vulnerability/CVE-2026-41587",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CI4MS: Unrestricted PHP File Upload via Theme Installation Leads to Authenticated Remote Code Execution",
    "summary": "CI4MS is a CodeIgniter 4-based CMS skeleton that delivers a production-ready, modular architecture with RBAC authorization and theme support. From version 0.26.0.0 to before version 0.31.7.0, a theme upload feature allows any authenticated backend user with theme-upload permission to achieve remote code execution (RCE) by uploading a crafted ZIP file. PHP files inside the ZIP are installed into the web-accessible public/ directory with no extension or content filtering, making them directly executable via HTTP. This issue has been patched in version 0.31.7.0.",
    "evidence": "osv:CVE-2026-41587",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-41587",
      "aliases": [
        "CVE-2026-41587",
        "GHSA-fw49-9xq4-gmx6"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/ci4-cms-erp/ci4ms",
              "type": "GIT",
              "events": [
                {
                  "introduced": "fb60f5a96a76953c1c24740fc5d616c765d0aec6"
                },
                {
                  "fixed": "adb241b82b8b3369358530289e90f123ee77a9a6"
                },
                {
                  "fixed": "b969465e71eacd9eb57014ad1fce1fc34fa7bca0"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0.26.0.0"
                      },
                      {
                        "fixed": "0.31.7.0"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "b969465e71eacd9eb57014ad1fce1fc34fa7bca0"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "0.31.6.0",
            "0.31.5.0",
            "0.31.4.0",
            "0.31.3.0",
            "0.31.2.0",
            "0.31.1.0",
            "0.31.0.0",
            "0.28.6.0",
            "0.28.5.0",
            "0.28.4.0",
            "0.28.3.0",
            "0.28.0.0",
            "0.27.0.0",
            "0.26.3.4",
            "0.26.3.3",
            "0.26.3.2",
            "0.26.3.1",
            "0.26.3.0",
            "0.26.2.0",
            "0.26.1.0",
            "0.26.0.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-41587.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:51.289841558Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/41xxx/CVE-2026-41587.json",
        "https://github.com/ci4-cms-erp/ci4ms/security/advisories/GHSA-fw49-9xq4-gmx6",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-41587",
        "https://github.com/ci4-cms-erp/ci4ms/commit/b969465e71eacd9eb57014ad1fce1fc34fa7bca0"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-434"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/41xxx/CVE-2026-41587.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-41587",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 519833,
  "published_at": "2026-05-07T03:14:38.631+00:00"
}