WooCommerce Cross-Site Request Forgery (CSRF)
The advisory, in context
WooCommerce before 3.6.5, when it handles CSV imports of products, has a cross-site request forgery (CSRF) issue with resultant stored cross-site scripting (XSS) via includes/admin/importers/class-wc-product-csv-importer-controller.php.
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
Earlier releases before 3.6.5
Fixed in 3.6.5
96 explicitly affected versions
2.6.10, 2.6.11, 2.6.12, 2.6.13, 2.6.14, 2.6.3, 2.6.4, 2.6.5, 2.6.6, 2.6.7, 2.6.8, 2.6.9, 2.7.0-RC1, 2.7.0-beta-1, 2.7.0-beta-2, 2.7.0-beta-3, 2.7.0-beta-4, 3.0.0, 3.0.0-rc.1, 3.0.0-rc.2, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7, 3.0.8, 3.0.9, 3.1.0, 3.1.0-beta-1, 3.1.0-beta.2, 3.1.0-rc.1, 3.1.0-rc.2, 3.1.1, 3.1.2, 3.2.0, 3.2.0-beta.1, 3.2.0-beta.2, 3.2.0-rc.2, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.5, 3.2.6, 3.3.0, 3.3.0-beta.1, 3.3.0-beta.2, 3.3.0-rc.1, 3.3.0-rc.2, 3.3.1, 3.3.1-rc.1, 3.3.2, 3.3.2-rc.1, 3.3.3, 3.3.4, 3.3.5, 3.3.6, 3.4.0, 3.4.0-beta.1, 3.4.0-beta.2, 3.4.0-rc.1, 3.4.0-rc.2, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.5.0, 3.5.0-beta.1, 3.5.0-rc.1, 3.5.0-rc.2, 3.5.1, 3.5.10, 3.5.2, 3.5.3, 3.5.4, 3.5.5, 3.5.6, 3.5.7, 3.5.8, 3.5.9, 3.6.0, 3.6.0-beta1, 3.6.0-rc.1, 3.6.0-rc.2, 3.6.0-rc.3, 3.6.1, 3.6.2, 3.6.3, 3.6.4, v3.2.0-RC1
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.6.5"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"2.6.10",
"2.6.11",
"2.6.12",
"2.6.13",
"2.6.14",
"2.6.3",
"2.6.4",
"2.6.5",
"2.6.6",
"2.6.7",
"2.6.8",
"2.6.9",
"2.7.0-RC1",
"2.7.0-beta-1",
"2.7.0-beta-2",
"2.7.0-beta-3",
"2.7.0-beta-4",
"3.0.0",
"3.0.0-rc.1",
"3.0.0-rc.2",
"3.0.1",
"3.0.2",
"3.0.3",
"3.0.4",
"3.0.5",
"3.0.6",
"3.0.7",
"3.0.8",
"3.0.9",
"3.1.0",
"3.1.0-beta-1",
"3.1.0-beta.2",
"3.1.0-rc.1",
"3.1.0-rc.2",
"3.1.1",
"3.1.2",
"3.2.0",
"3.2.0-beta.1",
"3.2.0-beta.2",
"3.2.0-rc.2",
"3.2.1",
"3.2.2",
"3.2.3",
"3.2.4",
"3.2.5",
"3.2.6",
"3.3.0",
"3.3.0-beta.1",
"3.3.0-beta.2",
"3.3.0-rc.1",
"3.3.0-rc.2",
"3.3.1",
"3.3.1-rc.1",
"3.3.2",
"3.3.2-rc.1",
"3.3.3",
"3.3.4",
"3.3.5",
"3.3.6",
"3.4.0",
"3.4.0-beta.1",
"3.4.0-beta.2",
"3.4.0-rc.1",
"3.4.0-rc.2",
"3.4.1",
"3.4.2",
"3.4.3",
"3.4.4",
"3.4.5",
"3.4.6",
"3.4.7",
"3.4.8",
"3.5.0",
"3.5.0-beta.1",
"3.5.0-rc.1",
"3.5.0-rc.2",
"3.5.1",
"3.5.10",
"3.5.2",
"3.5.3",
"3.5.4",
"3.5.5",
"3.5.6",
"3.5.7",
"3.5.8",
"3.5.9",
"3.6.0",
"3.6.0-beta1",
"3.6.0-rc.1",
"3.6.0-rc.2",
"3.6.0-rc.3",
"3.6.1",
"3.6.2",
"3.6.3",
"3.6.4",
"v3.2.0-RC1"
]
}References
- https://nvd.nist.gov/vuln/detail/CVE-2019-20891
- https://github.com/woocommerce/woocommerce/commit/fd7feb778eb45a2eb92b45eb2b4ee96ea3ac6fe7
- https://blog.ripstech.com/2019/woocommerce-csrf-to-stored-xss
- https://github.com/woocommerce/woocommerce
- https://raw.githubusercontent.com/woocommerce/woocommerce/master/CHANGELOG.txt