Description
Craft CMS 4.x (>= 4.0.0-RC1, < 4.17.0-beta.1) and 5.x (>= 5.0.0-RC1, < 5.9.0-beta.1) contain multiple stored cross-site scripting vulnerabilities where settings names and field option labels are rendered without sanitization (e.g., via the checkbox.twig template, which used {{ label|raw }}). An authenticated administrator (with allowAdminChanges enabled) can inject malicious payloads into section names, volume names, user group names, global set names, generated field names, checkbox/radio option labels, and custom source labels, causing arbitrary JavaScript to execute in other users' control-panel sessions. Fixed in 4.17.0-beta.1 and 5.9.0-beta.1.
Problem types
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Product status
5.0.0-RC1 (semver) before 5.9.0-beta.1
5.9.0-beta.1 (semver)
4.0.0-RC1 (semver) before 4.17.0-beta.1
4.17.0-beta.1 (semver)
Credits
mHe4am
References
github.com/...ms/cms/security/advisories/GHSA-4mgv-366x-qxvx
github.com/...ms/cms/security/advisories/GHSA-4mgv-366x-qxvx (GHSA Advisory GHSA-4mgv-366x-qxvx)
github.com/...ommit/943152d2246b36f12adf161a03b8695b773d9276
github.com/...ommit/67780a778c6ec04e68e64a0b1177c168306144a2
www.vulncheck.com/...ing-in-settings-names-and-field-options (VulnCheck Advisory: Craft CMS - Multiple Stored Cross-Site Scripting in Settings Names and Field Options)