GHSA-mqxf-2998-c6cp
Craft Commerce is Vulnerable to Stored XSS while updating Order Status from Orders Table
Quick fix
GHSA-mqxf-2998-c6cp — craftcms/commerce: upgrade to the fixed version with the command below.
composer require craftcms/commerce:^4.10.2Details
## Summary A stored XSS vulnerability exists when a user tries to update the Order Status from the Commerce Orders Table. The Order Status Name is rendered without proper escaping, allowing script execution to occur.
--- ## Proof of Concept ### Required Permissions - Admin access (to edit/create Order Statuses)
### Steps to Reproduce 1. Log in with an admin account 2. Navigate to **Commerce** → **Settings** → **Order Statuses** 3. Create a new order status 4. Set the **Name** field to: ```html <img src=x onerror="alert('Order Statuses XSS')"> ``` 5. Save the order status 6. Go to Commerce → Orders (make sure you placed any orders) 7. From the left panel, select any Order Status (e.g., New) 8. Select any order from the orders table → Click on the Gear Icon → then click "Update Order Status..." 9. Notice the XSS execution
Are you affected?
Enter the version of the package you're using.
Affected packages
4.0.0Fixed in: 4.10.2composer require craftcms/commerce:^4.10.25.0.0Fixed in: 5.5.3composer require craftcms/commerce:^5.5.3References
- https://github.com/craftcms/commerce/security/advisories/GHSA-mqxf-2998-c6cp[WEB]
- https://nvd.nist.gov/vuln/detail/CVE-2026-29173[ADVISORY]
- https://github.com/craftcms/commerce/commit/60cdc505c03b6fa2f59715e8c060114b66334afa[WEB]
- https://github.com/craftcms/commerce/commit/a2ea853935ef03297ea1298bdb0d8c55ec5daf7b[WEB]
- https://github.com/craftcms/commerce[PACKAGE]