Craft CMS up to 4.16.17/5.8.21 src/services/Fields.php assembleLayoutFromPost externally-controlled input to select classes or code
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.8 | $0-$5k | 0.00 |
Summary
A vulnerability has been found in Craft CMS up to 4.16.17/5.8.21 and classified as problematic. The impacted element is the function assembleLayoutFromPost of the file src/services/Fields.php. Performing a manipulation results in use of externally-controlled input to select classes or code.
This vulnerability was named CVE-2026-25498. The attack may be initiated remotely. There is no available exploit.
The affected component should be upgraded.
Details
A vulnerability classified as problematic has been found in Craft CMS up to 4.16.17/5.8.21. This affects the function assembleLayoutFromPost of the file src/services/Fields.php. The manipulation with an unknown input leads to a use of externally-controlled input to select classes or code vulnerability. CWE is classifying the issue as CWE-470. The product uses external input with reflection to select which classes or code to use, but it does not sufficiently prevent the input from selecting improper classes or code. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
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 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.
The advisory is shared at github.com. This vulnerability is uniquely identified as CVE-2026-25498 since 02/02/2026. The exploitability is told to be easy. It is possible to initiate the attack remotely. Additional levels of successful authentication are necessary for exploitation. Technical details are known, but no exploit is available.
By approaching the search of inurl:src/services/Fields.php it is possible to find vulnerable targets with Google Hacking.
Upgrading to version 4.16.18 or 5.8.22 eliminates this vulnerability. The upgrade is hosted for download at github.com. Applying the patch 395c64f0b80b507be1c862a2ec942eaacb353748 is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Product
Type
Vendor
Name
Version
- 4.16.0
- 4.16.1
- 4.16.2
- 4.16.3
- 4.16.4
- 4.16.5
- 4.16.6
- 4.16.7
- 4.16.8
- 4.16.9
- 4.16.10
- 4.16.11
- 4.16.12
- 4.16.13
- 4.16.14
- 4.16.15
- 4.16.16
- 4.16.17
- 5.8.0
- 5.8.1
- 5.8.2
- 5.8.3
- 5.8.4
- 5.8.5
- 5.8.6
- 5.8.7
- 5.8.8
- 5.8.9
- 5.8.10
- 5.8.11
- 5.8.12
- 5.8.13
- 5.8.14
- 5.8.15
- 5.8.16
- 5.8.17
- 5.8.18
- 5.8.19
- 5.8.20
- 5.8.21
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CNA CVSS-B Score: 🔒
CNA CVSS-BT Score: 🔒
CNA Vector: 🔒
CVSSv3
VulDB Meta Base Score: 5.9VulDB Meta Temp Score: 5.8
VulDB Base Score: 4.7
VulDB Temp Score: 4.5
VulDB Vector: 🔒
VulDB Reliability: 🔍
NVD Base Score: 7.2
NVD Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Use of externally-controlled input to select classes or codeCWE: CWE-470
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
Google Hack: 🔒
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: CMS 4.16.18/5.8.22
Patch: 395c64f0b80b507be1c862a2ec942eaacb353748
Timeline
02/02/2026 CVE reserved02/09/2026 Advisory disclosed
02/09/2026 VulDB entry created
02/19/2026 VulDB entry last update
Sources
Advisory: GHSA-7jx7-3846-m7w7Status: Confirmed
CVE: CVE-2026-25498 (🔒)
GCVE (CVE): GCVE-0-2026-25498
GCVE (VulDB): GCVE-100-345033
Entry
Created: 02/09/2026 21:33Updated: 02/19/2026 22:54
Changes: 02/09/2026 21:33 (72), 02/19/2026 22:54 (12)
Complete: 🔍
Cache ID: 216::103
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
No comments yet. Languages: en.
Please log in to comment.