CVE-2026-45138

MEDIUM

CI4MS: Stored XSS in Blog Content via Broken `html_purify` Validation Rule

Title source: cna
STIX 2.1

Description

CI4MS is a CodeIgniter 4-based content management system skeleton. Prior to version 0.31.9.0, the custom `html_purify` validation rule used to sanitize blog post bodies relies on by-reference mutation (`?string &$str`), but CodeIgniter 4's validator passes a local copy of the value, so the sanitized text is silently discarded. The Blog controller writes `$lanData['content']` directly into `blog_langs.content`, and the public template echoes it without escaping — yielding stored XSS executable in any visitor's browser, including the superadmin when previewing or editing posts. Version 0.31.9.0 patches the issue.

References (2)

Core 2
Core References

Scores

CVSS v3 5.4
EPSS 0.0015
EPSS Percentile 4.4%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N

CISA SSVC

Vulnrichment
Exploitation poc
Automatable no
Technical Impact partial

Details

CWE
CWE-79
Status published
Products (1)
ci4-cms-erp/ci4ms < 0.31.9.0
Published Jul 20, 2026
Tracked Since Jul 20, 2026