CVE-2023-33196: Craft CMS stored XSS in review volume

Published May 26, 2023
·
Updated

Summary XSS can be triggered by review volumes

PoC

1. Access setting tab 2. Create new assets 3. In assets name inject payload: "<script>alert(1337)</script> 4. Click Utilities tab 5. Choose all volumes, or volume trigger xss 6. Click Update asset indexes. 7. Wait to assets update success. 8. Progress complete. 9. Click on review button will trigger XSS

Root cause Function: index.php?p=admin/actions/asset-indexes/process-indexing-session&v=1680710595770 After loading completed, progess will load: "skippedEntries" and "missingEntries" These parameters is not yet filtered, I just tried "skippedEntries" but I think it will be work with "missingEntries"

My reponse: { "session": { "id": 10, "indexedVolumes": { "6": "\"<script>alert(1337)</script>" }, "totalEntries": 2235, "processedEntries": 2235, "cacheRemoteImages": true, "listEmptyFolders": false, "isCli": false, "actionRequired": true, "dateCreated": "Apr 5, 2023, 9:03:16 AM", "skippedEntries": [ "\"<script>alert(1337)</script>/assetpreviews/Image.php", "\"<script>alert(1337)</script>/assetpreviews/Pdf.php" ], "missingEntries": { "folders": [], "files": [] }, "processIfRootEmpty": false }, "skipDialog": false }

Resolved in https://github.com/craftcms/cms/commit/053d7119697e480ff81c5723bb9a33eaa49e0fc7

Other sources

Craft is a CMS for creating custom digital experiences. Cross site scripting (XSS) can be triggered by review volumes. This issue has been fixed in version 4.4.7.

MITRE

Affected Software

6 affected componentsFixes available
composer/craftcms/cms>=4.0.0-RC1<=4.4.6
4.4.7
Craft CMS>=4.0.1<4.4.7
Craft CMS=4.0.0
Craft CMS=4.0.0-rc1
Craft CMS=4.0.0-rc2
Craft CMS=4.0.0-rc3

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade composer/craftcms/cms to a version that resolves this vulnerability.

    Fixed in 4.4.7
  2. Upgrade

    Upgrade Craft CMS to a version that resolves this vulnerability.

    Fixed in 4.4.7Patch commit/053d7119697e480ff81c5723bb9a33eaa49e0fc7
  3. Compensating control

    After applying the fix, ensure asset indexing/processing is not triggered with attacker-controlled review volumes (e.g., restrict access to the asset indexing session/process endpoint such that untrusted users cannot set or influence the review volume used for process-indexing-session).

Event History

May 26, 2023
Advisory Published
01:55 PM
CVE Published
via MITRE·08:22 PM
Data Sourced
via MITRE·08:22 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·09:15 PM
RemedyDescriptionSeverityWeaknessAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is CVE-2023-33196?

CVE-2023-33196 refers to a vulnerability in Craft CMS that allows for cross-site scripting (XSS) attacks to be triggered.

2

How severe is CVE-2023-33196?

CVE-2023-33196 is rated with a severity score of 5.5, which is considered medium.

3

Which versions of Craft CMS are affected by CVE-2023-33196?

Craft CMS versions 4.0.0-RC1, 4.0.0-RC2, 4.0.0-RC3, and 4.0.0 to 4.4.6 are affected by CVE-2023-33196.

4

How can the vulnerability in CVE-2023-33196 be exploited?

The vulnerability in CVE-2023-33196 can be exploited by injecting malicious scripts into asset names and triggering the XSS attack through the update of asset indexes.

5

How can I mitigate the vulnerability in CVE-2023-33196?

To mitigate the vulnerability in CVE-2023-33196, it is recommended to update Craft CMS to version 4.4.7 or apply the provided fix from the official Craft CMS repository.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203