What’s Vulnerable › Vulnerabilities
CVE-2026-29172: Craft Commerce has a SQL Injection in Commerce Purchasables Table Sorting
- Severity: high (CVSS 8.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.4% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2026-03-10 · updated 2026-06-17
- Weakness: CWE-89
Description
Craft Commerce is an ecommerce platform for Craft CMS. Prior to 4.10.2 and 5.5.3, Craft Commerce is vulnerable to SQL Injection in the purchasables table endpoint. The sort parameter is split by | and the first part (column name) is passed directly as an array key to orderBy() without whitelist validation. Yii2's query builder does NOT escape array keys, allowing an authenticated attacker to inject arbitrary SQL into the ORDER BY clause. This vulnerability is fixed in 4.10.2 and 5.5.3.
Affected products
- craftcms commerce: from 4.0.0 before 4.10.2; from 5.0.0 before 5.5.3 — fixed in 4.10.2, 5.5.3
How to fix
Upgrade to a fixed version: craftcms commerce 4.10.2, 5.5.3. Check the vendor advisory for mitigations.
References
- https://github.com/craftcms/commerce/commit/b231b920b73db023e81e5b261b894d73e865c276
- https://github.com/craftcms/commerce/commit/e4e0f4107cd895d29290523637f077fe280407b1
- https://github.com/craftcms/commerce/security/advisories/GHSA-j3x5-mghf-xvfw
- https://github.com/craftcms/commerce/security/advisories/GHSA-j3x5-mghf-xvfw
Get alerted when CVE-2026-29172 or the next vulnerability affects your stack