======================================================================================= TomatoCart 1.x | Cross Site Request Forgery Protection Bypass via JavaScript Hijacking ======================================================================================= 1. OVERVIEW TomatoCart 1.x versions are vulnerable to Cross Site Request Forgery Protection Bypass. 2. BACKGROUND TomatoCart is an innovative Open Source shopping cart solution developed by Wuxi Elootec Technology Co., Ltd. It is forked from osCommerce 3 as a separate project and is released under the GNU General Public License V2. Equipped with the web2.0 Technology Ajax and Rich Internet applications (RIAs), TomatoCart Team is devoted to building a landmark eCommerce solution. 3. VULNERABILITY DESCRIPTION TomatoCart 1.x versions contain a flaw related to the script '/admin/tocdesktop.php' failure to properly protect the JavaScript object, "token" which is used to prevent Cross Site Request Forgery attack. This allows an attacker to gain access to the token object via JavaScript Hijacking upon an administrator user's visit to his crafted page. Using the compromised token value, the attacker will then be able to perform administrator-privileged functions such as uploading file, creating user accounts and so forth. 4. VERSIONS AFFECTED Tested on 1.x 5. PROOF-OF-CONCEPT/EXPLOIT The following recorded movie will demonstrate how we can leverage the CSRF-bypass flaw to create an arbitrary shell script. http://yehg.net/lab/pr0js/training/view/misc/TomatoCart-Anti-CSRF-Bypass-2-Shell/ 6. SOLUTION The vendor did not show commitment in hardening the application. Workaround is not to visit malicious web sites during login or to use a dedicated browser for TomatoCart administration. It is recommended to use alternative shopping cart application with good track record of security fixes. 7. VENDOR Wuxi Elootec Technology Co., Ltd. 8. CREDIT Aung Khant, http://yehg.net, YGN Ethical Hacker Group, Myanmar. 9. DISCLOSURE TIME-LINE 2012-04-22: Contacted the vendor through email 2012-04-29: Vendor replied and the vulnerability information was sent 2013-01-07: Vulnerability not fixed 2013-01-07: Vulnerability disclosed 10. REFERENCES Original Advisory URL: http://yehg.net/lab/pr0js/advisories/%5Btomatocart1.x%5D_ant-csrf_bypass Other TomatoCart Advisory URL: http://yehg.net/lab/pr0js/advisories/%5Btomatocart1.x%5D_arbitrary_file_creation Other TomatoCart Advisory URL: http://yehg.net/lab/pr0js/advisories/%5Btomatocart1.x%5D_vulnerable_piwik TomatoCart Home Page: http://www.tomatocart.com/ #yehg [2013-01-07]