CVE-2026-33157
Craftcms Craft Cms 5.6.0 – 5.9.13
Raw vector
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/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XSummary
CVE-2026-33157 is a high-severity Unsafe Reflection (CWE-470) vulnerability in Craftcms Craft Cms. Its CVSS base score is 8.6 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Reflective Code Loading (T1620); ranked in the top 40% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
The strongest mitigations our analysis identified map to SI-10 (Information Input Validation) and AC-3 (Access Enforcement) — see the control section below for these in your framework.
Deeper analysis AI-assisted summary
Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.
CVE-2026-33157 is a Remote Code Execution (RCE) vulnerability in Craft CMS, a content management system, affecting versions from 5.6.0 to before 5.9.13. The issue stems from a bypass of prior mitigations against Yii2 behavior and event injection attacks using "as" and "on" prefixed keys. Specifically, the fieldLayouts parameter in ElementIndexesController::actionFilterHud() is passed directly to FieldLayout::createFromConfig() without sanitization via cleanseConfig(), unlike fixes applied to assembleLayoutFromPost() and FieldsController actions. It is classified under CWE-470 with a CVSS v3.1 base score of 7.2 (AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H).
Any authenticated user with control panel access can exploit this vulnerability remotely with low complexity and no user interaction required. Exploitation enables arbitrary code execution on the server, potentially leading to full compromise with high impacts on confidentiality, integrity, and availability.
Craft CMS has patched the vulnerability in version 5.9.13. Security practitioners should upgrade immediately. Key references include the fixing commit at https://github.com/craftcms/cms/commit/97e90b4bdee369c1af3ca77a77531132df240e4e, release notes at https://github.com/craftcms/cms/releases/tag/5.9.13, and the GitHub security advisory at https://github.com/craftcms/cms/security/advisories/GHSA-2fph-6v5w-89hh.
OWASP Top 10 for Web (2025)
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-14934
Vulnerability Data
Craft CMS is a content management system (CMS). From version 5.6.0 to before version 5.9.13, a Remote Code Execution (RCE) vulnerability exists in Craft CMS, it can be exploited by any authenticated user with control panel access. This is a…
more
bypass of a previous fix. The existing patches add cleanseConfig() to assembleLayoutFromPost() and various FieldsController actions to strip Yii2 behavior/event injection keys ("as" and "on" prefixed keys). However, the fieldLayouts parameter in ElementIndexesController::actionFilterHud() is passed directly to FieldLayout::createFromConfig() without any sanitization, enabling the same behavior injection attack chain. This issue has been patched in version 5.9.13.
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise Techniques
CVEs Like This One
Affected Assets
Mitigating Controls
Mitigating Controls (NIST 800-53 r5) AI
Input validation directly stops externally supplied class or method names from selecting improper code via reflection.
Enforces authorization checks on the code or classes ultimately invoked, blocking unauthorized selections even if reflection is used.
Limits privileges of any code reached through unsafe reflection, reducing blast radius without stopping the selection itself.
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Secure SDLC practices directly avoid introducing externally controlled class selection via reflection.
Vulnerability identification processes can discover unsafe reflection during code review or scanning.
Preventing execution of unauthorized code can block exploitation of unsafe reflection at runtime.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Secure coding standards directly forbid unsafe reflection and require whitelisting or static alternatives.
Security testing can detect and block unsafe reflection patterns before release.
Secure development lifecycle mandates input validation and design reviews that reduce unsafe reflection risks.
Application security requirements can explicitly prohibit or constrain reflection based on untrusted input.
Secure architecture principles discourage dynamic class loading from external data sources.
Access restrictions limit who can supply the malicious input but do not address the reflection flaw itself.