Cyber Resilience

CVE-2026-25498

Craftcms Craft Cms 4.0.0 – 4.16.18

Public PoC
Published
09 February 2026
Modified
19 February 2026
Patch / advisory
CVSS Score v4 8.6
Click a component to see what it means
Raw vectorCVSS: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:X
EPSS Score 0.0097 59th percentile
Risk Priority 32 floored blend · peak EPSS

Summary

CVE-2026-25498 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 41% 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-25498 is a remote code execution (RCE) vulnerability in Craft CMS, a platform for creating digital experiences. It affects versions 4.0.0-RC1 through 4.16.17 and 5.0.0-RC1 through 5.8.21. The issue resides in the assembleLayoutFromPost() function within src/services/Fields.php, which fails to sanitize user-supplied configuration data before passing it to Craft::createObject(). This allows injection of malicious Yii2 behavior configurations. The vulnerability is scored at CVSS 7.2 (AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H) and is linked to CWE-470 (Uncontrolled Resource Consumption). It represents an unpatched variant of the behavior injection issue fixed in CVE-2025-68455, but impacts different endpoints via a separate code path.

Authenticated administrators can exploit this vulnerability over the network with low complexity and no user interaction. By supplying crafted configuration data, they can inject arbitrary Yii2 behaviors that execute system commands on the server, potentially leading to full compromise including high confidentiality, integrity, and availability impacts.

Mitigation is available in Craft CMS version 5.8.22, which addresses the sanitization flaw. Security practitioners should upgrade affected installations immediately. Relevant resources include the fixing commit at https://github.com/craftcms/cms/commit/395c64f0b80b507be1c862a2ec942eaacb353748, the release notes at https://github.com/craftcms/cms/releases/tag/5.8.22, and the advisory at https://github.com/craftcms/cms/security/advisories/GHSA-7jx7-3846-m7w7.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Craft is a platform for creating digital experiences. In versions 4.0.0-RC1 through 4.16.17 and 5.0.0-RC1 through 5.8.21, a Remote Code Execution (RCE) vulnerability exists in Craft CMS where the assembleLayoutFromPost() function in src/services/Fields.php fails to sanitize user-supplied configuration data before…

more

passing it to Craft::createObject(). This allows authenticated administrators to inject malicious Yii2 behavior configurations that execute arbitrary system commands on the server. This vulnerability represents an unpatched variant of the behavior injection vulnerability addressed in CVE-2025-68455, affecting different endpoints through a separate code path. This vulnerability is fixed in 5.8.22.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1620 Reflective Code Loading Stealth
Adversaries may reflectively load code into a process in order to conceal the execution of malicious payloads.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2026-32264Same product: Craftcms Craft Cms
CVE-2026-32263Same product: Craftcms Craft Cms
CVE-2025-68455Same product: Craftcms Craft Cms
CVE-2026-33157Same product: Craftcms Craft Cms
CVE-2025-57811Same product: Craftcms Craft Cms
CVE-2025-35939Same product: Craftcms Craft Cms
CVE-2023-36260Same product: Craftcms Craft Cms
CVE-2023-33495Same product: Craftcms Craft Cms
CVE-2023-31144Same product: Craftcms Craft Cms
CVE-2025-54417Same product: Craftcms Craft Cms

Affected Assets

craftcms
craft cms
4.0.0, 5.0.0 · 4.0.0 — 4.16.18 · 5.0.0 — 5.8.22

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.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly avoid introducing externally controlled class selection via reflection.

ID.RA-01 partial match
prevents

Vulnerability identification processes can discover unsafe reflection during code review or scanning.

PR.PS-05 partial match
prevents

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.

prevents

Secure coding standards directly forbid unsafe reflection and require whitelisting or static alternatives.

finds

Security testing can detect and block unsafe reflection patterns before release.

prevents

Secure development lifecycle mandates input validation and design reviews that reduce unsafe reflection risks.

prevents

Application security requirements can explicitly prohibit or constrain reflection based on untrusted input.

prevents

Secure architecture principles discourage dynamic class loading from external data sources.

none

Access restrictions limit who can supply the malicious input but do not address the reflection flaw itself.

References