Описание
CraftCMS stored XSS in Quick Post widget error message
Summary
The platform does not filter input and encode output in Quick Post validation error message, which can deliver an XSS payload.
Details
Old CVE fixed the XSS in label HTML but didn’t fix it when clicking save.
PoC
-
Login at admin
-
Go to setting
-
Create a Section
-
On Entry page, click Edit label
-
Inject the XSS payload into the label and save
-
On the admin dashboard choose new widget -> Quick Post
-
In Quick Post, click save with blank slug; The XSS will be executed
"errors":{"title":[" cannot be blank."],"slug":["Slug cannot be blank."]
Fixed in https://github.com/craftcms/cms/commit/9d0cd0bda7c8a830a3373f8c0f06943e519ac888
Пакеты
craftcms/cms
>= 4.0.0-RC1, < 4.4.6
4.4.6
craftcms/cms
>= 3.0.0, <= 3.8.5
3.8.6
Связанные уязвимости
Craft is a CMS for creating custom digital experiences on the web.The platform does not filter input and encode output in Quick Post validation error message, which can deliver an XSS payload. Old CVE fixed the XSS in label HTML but didn’t fix it when clicking save. This issue was patched in version 4.4.6.