Description
Craft CMS (composer package craftcms/cms) versions >= 5.5.0 and <= 5.9.13 contain a remote code execution vulnerability in the FieldsController::actionRenderCardPreview() method, which passes the fieldLayoutConfig POST parameter directly to Fields::createLayout() without calling Component::cleanseConfig(). An authenticated admin user can inject Yii2 event handlers (e.g., 'on init' keys) via the fieldLayoutConfig parameter to execute arbitrary PHP code and disclose sensitive information (such as environment variables containing database credentials and CRAFT_SECURITY_KEY). The issue is fixed in version 5.9.14.
Problem types
Improper Control of Generation of Code ('Code Injection')
Product status
5.5.0 (semver) before 5.9.14
5.9.14 (semver)
Credits
q1uf3ng
References
github.com/...ms/cms/security/advisories/GHSA-86vw-x4ww-x467
github.com/...ms/cms/security/advisories/GHSA-86vw-x4ww-x467 (GHSA Advisory GHSA-86vw-x4ww-x467)
www.vulncheck.com/...config-sanitization-in-fieldscontroller (VulnCheck Advisory: Craft CMS - Remote Code Execution via Missing Config Sanitization in FieldsController)