GHSA-6qjx-787v-6pxr
Craft CMS stored XSS in indexedVolumes
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| Packagist | craftcms/cms | >= 4.0.0-RC1, < 4.4.6 | 4.4.6 |
Details
As written in the advisory (Markdown source, shown as plain text).
### Summary
XSS can be triggered via the Update Asset Index utility
### PoC
1. Access setting tab
2. Create new assets
3. In assets name inject payload: "<script>alert(26)</script>
4. Click Utilities tab
5. Choose all volumes, or volume trigger xss
7. Click Update asset indexes.
XSS will be triggered
Json response volumes name makes triggers the payload
"session":{"id":1,"indexedVolumes":{"1":"\"<script>alert(26)</script>"},
It’s run on every POST request in the utility.
Resolved in https://github.com/craftcms/cms/commit/8c2ad0bd313015b8ee42326af2848ee748f1d766
References
External links from the advisory. They lead to third-party sites.