PrestaShop has a stored XSS executable in customer service view
The advisory, in context
Impact
This is a stored Cross-site Scripting (XSS) vulnerability in the PrestaShop back-office Customer Service view.
An unauthenticated attacker can submit the public Contact Us form with a malicious email address. The payload is stored in the database and executed when a back-office employee opens the affected customer thread, enabling session hijacking and full back-office takeover.
Patches
Patched in PrestaShop 8.2.6 and 9.1.1.
Workarounds
None.
Resources
- Reported by Savio at Doyensec (
anthropic@doyensec.com) in collaboration with Anthropic Research.
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 8.2.6
Fixed in 8.2.6
103 explicitly affected versions
1.7.0.0, 1.7.0.0-beta.1.0, 1.7.0.0-beta.2.0, 1.7.0.0-beta.3.0, 1.7.0.0-beta.4.0, 1.7.0.0-rc.0.0, 1.7.0.0-rc.1.0, 1.7.0.0-rc.2.0, 1.7.0.1, 1.7.0.2, 1.7.0.3, 1.7.0.4, 1.7.0.5, 1.7.0.6, 1.7.1.0, 1.7.1.1, 1.7.1.2, 1.7.2.0, 1.7.2.0-rc.1.0, 1.7.2.1, 1.7.2.2, 1.7.2.3, 1.7.2.4, 1.7.2.5, 1.7.3.0, 1.7.3.1, 1.7.3.2, 1.7.3.3, 1.7.3.4, 1.7.4.0, 1.7.4.0-beta.1, 1.7.4.1, 1.7.4.2, 1.7.4.3, 1.7.4.4, 1.7.5.0, 1.7.5.0-beta.1, 1.7.5.0-rc.1, 1.7.5.1, 1.7.5.2, 1.7.6.0, 1.7.6.0-beta.1, 1.7.6.0-rc.1, 1.7.6.0-rc.2, 1.7.6.1, 1.7.6.2, 1.7.6.3, 1.7.6.4, 1.7.6.5, 1.7.6.6, 1.7.6.7, 1.7.6.8, 1.7.6.9, 1.7.7.0, 1.7.7.0-beta.1, 1.7.7.0-beta.2, 1.7.7.0-rc.1, 1.7.7.1, 1.7.7.2, 1.7.7.3, 1.7.7.4, 1.7.7.5, 1.7.7.6, 1.7.7.7, 1.7.7.8, 1.7.8.0, 1.7.8.0-beta.1, 1.7.8.0-rc.1, 1.7.8.1, 1.7.8.10, 1.7.8.11, 1.7.8.2, 1.7.8.3, 1.7.8.4, 1.7.8.5, 1.7.8.6, 1.7.8.7, 1.7.8.8, 1.7.8.9, 8.0.0, 8.0.0-beta.1, 8.0.0-rc.1, 8.0.1, 8.0.2, 8.0.3, 8.0.4, 8.0.5, 8.1.0, 8.1.0-beta.1, 8.1.0-rc.1, 8.1.1, 8.1.2, 8.1.3, 8.1.4, 8.1.5, 8.1.6, 8.1.7, 8.2.0, 8.2.1, 8.2.2, 8.2.3, 8.2.4, 8.2.5
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "8.2.6"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"1.7.0.0",
"1.7.0.0-beta.1.0",
"1.7.0.0-beta.2.0",
"1.7.0.0-beta.3.0",
"1.7.0.0-beta.4.0",
"1.7.0.0-rc.0.0",
"1.7.0.0-rc.1.0",
"1.7.0.0-rc.2.0",
"1.7.0.1",
"1.7.0.2",
"1.7.0.3",
"1.7.0.4",
"1.7.0.5",
"1.7.0.6",
"1.7.1.0",
"1.7.1.1",
"1.7.1.2",
"1.7.2.0",
"1.7.2.0-rc.1.0",
"1.7.2.1",
"1.7.2.2",
"1.7.2.3",
"1.7.2.4",
"1.7.2.5",
"1.7.3.0",
"1.7.3.1",
"1.7.3.2",
"1.7.3.3",
"1.7.3.4",
"1.7.4.0",
"1.7.4.0-beta.1",
"1.7.4.1",
"1.7.4.2",
"1.7.4.3",
"1.7.4.4",
"1.7.5.0",
"1.7.5.0-beta.1",
"1.7.5.0-rc.1",
"1.7.5.1",
"1.7.5.2",
"1.7.6.0",
"1.7.6.0-beta.1",
"1.7.6.0-rc.1",
"1.7.6.0-rc.2",
"1.7.6.1",
"1.7.6.2",
"1.7.6.3",
"1.7.6.4",
"1.7.6.5",
"1.7.6.6",
"1.7.6.7",
"1.7.6.8",
"1.7.6.9",
"1.7.7.0",
"1.7.7.0-beta.1",
"1.7.7.0-beta.2",
"1.7.7.0-rc.1",
"1.7.7.1",
"1.7.7.2",
"1.7.7.3",
"1.7.7.4",
"1.7.7.5",
"1.7.7.6",
"1.7.7.7",
"1.7.7.8",
"1.7.8.0",
"1.7.8.0-beta.1",
"1.7.8.0-rc.1",
"1.7.8.1",
"1.7.8.10",
"1.7.8.11",
"1.7.8.2",
"1.7.8.3",
"1.7.8.4",
"1.7.8.5",
"1.7.8.6",
"1.7.8.7",
"1.7.8.8",
"1.7.8.9",
"8.0.0",
"8.0.0-beta.1",
"8.0.0-rc.1",
"8.0.1",
"8.0.2",
"8.0.3",
"8.0.4",
"8.0.5",
"8.1.0",
"8.1.0-beta.1",
"8.1.0-rc.1",
"8.1.1",
"8.1.2",
"8.1.3",
"8.1.4",
"8.1.5",
"8.1.6",
"8.1.7",
"8.2.0",
"8.2.1",
"8.2.2",
"8.2.3",
"8.2.4",
"8.2.5"
]
}From 9.0.0 before 9.1.1
Fixed in 9.1.1
7 explicitly affected versions
9.0.0, 9.0.1, 9.0.2, 9.0.3, 9.1.0, 9.1.0-beta.1, 9.1.0-rc.1
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "9.0.0"
},
{
"fixed": "9.1.1"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"9.0.0",
"9.0.1",
"9.0.2",
"9.0.3",
"9.1.0",
"9.1.0-beta.1",
"9.1.0-rc.1"
]
}