Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
4DescriptionGitHub Advisory
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 immediately revoke active user sessions when an account is deactivated. Due to a logic flaw in the backend design, account state changes are enforced only during authentication (login), not for already-established sessions. The system implicitly assumes that authenticated users remain trusted for the lifetime of their session. There is no session expiration or account expiration mechanism in place, causing deactivated accounts to retain indefinite access until the user manually logs out. This behavior breaks the intended access control policy and results in persistent unauthorized access, representing a critical security flaw. This issue has been patched in version 0.31.0.0.
AnalysisAI
Session fixation vulnerability in CI4MS (CodeIgniter 4 CMS) allows deactivated user accounts to maintain indefinite access through active sessions. Authenticated attackers whose accounts have been administratively disabled retain full high-privilege access (confidentiality, integrity, availability impact) until manual logout, bypassing intended access controls. Affects all versions prior to 0.31.0.0. EPSS data not available; no public exploit identified at time of analysis. CVSS 8.8 (High) reflects significant post-compromise persistence risk in enterprise CMS deployments with role-based access control.
Technical ContextAI
CI4MS implements role-based access control (RBAC) atop CodeIgniter 4's session management framework. The vulnerability stems from CWE-284 (Improper Access Control) where authentication state validation occurs only at login boundaries, not during session lifecycle management. CodeIgniter 4's native session handlers maintain server-side session data with client-side cookies, but the application layer failed to implement account state verification middleware for established sessions. The architectural flaw treats session tokens as immutable authorization credentials rather than dynamic references requiring real-time account status validation. The affected product (cpe:2.3:a:ci4-cms-erp:ci4ms) is a production CMS skeleton designed for enterprise content management with modular architecture and theme support, making session persistence vulnerabilities particularly impactful in multi-user environments with administrative oversight.
RemediationAI
Upgrade immediately to CI4MS version 0.31.0.0 or later, which implements session invalidation logic tied to account state changes. The patched release is available at https://github.com/ci4-cms-erp/ci4ms/releases/tag/0.31.0.0 and addresses the session lifecycle management flaw by adding real-time account status verification for active sessions. Organizations unable to immediately upgrade should implement compensating controls: enforce aggressive session timeout policies (reduce session lifetime to 15-30 minutes), implement manual session termination procedures when deactivating accounts (database-level session purging), enable comprehensive session activity logging to detect deactivated account usage, and consider deploying reverse proxy authentication layers that validate account status independently of application sessions. Review audit logs for any instances of deactivated accounts maintaining access post-deactivation and treat as potential security incidents requiring investigation. Post-upgrade, verify session behavior by deactivating test accounts and confirming immediate access revocation without requiring logout.
CI4MS (CodeIgniter 4 CMS skeleton) has a code injection vulnerability (CVSS 9.9) allowing authenticated users to execute
Stored cross-site scripting in CI4MS backend user management allows authenticated attackers with low-level privileges to
Stored cross-site scripting in CI4MS blog category management allows authenticated users to inject malicious JavaScript
Environment file injection in CI4MS versions prior to 0.31.4.0 allows remote attackers to inject arbitrary configuration
Stored cross-site scripting in CI4MS blog module allows authenticated attackers to inject malicious JavaScript that exec
Stored cross-site scripting in CI4MS (CodeIgniter 4 CMS) allows authenticated users with blog post management privileges
Stored cross-site scripting (XSS) in CI4MS page management functionality allows authenticated attackers to inject malici
Stored cross-site scripting (XSS) in CI4MS menu management allows authenticated users with low privileges to inject mali
Stored cross-site scripting in CI4MS menu management allows authenticated attackers to inject malicious scripts that exe
Stored blind cross-site scripting in CI4MS backup management allows authenticated attackers to inject malicious JavaScri
Stored Cross-Site Scripting in CI4MS methods management allows authenticated users to inject malicious JavaScript into a
Stored cross-site scripting in CI4MS role/group management allows authenticated attackers to inject malicious JavaScript
Same weakness CWE-284 – Improper Access Control
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-18089
GHSA-8fq3-c5w3-pj3q