Lucene search
+L

DHTMLX Suite 3.0 SQL Injection / Cross Site Scripting

🗓️ 12 Apr 2012 00:00:00Reported by Benjamin Kunz MejriType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 35 Views

DHTMLX Suite 3.0 SQL Injection / Cross Site Scripting detected in admin applicatio

Code
`Title:  
======  
DHTMLX Suite v.3.0 - Multiple Web Vulnerabilities  
  
  
Date:  
=====  
2012-04-11  
  
  
References:  
===========  
http://www.vulnerability-lab.com/get_content.php?id=507  
  
  
VL-ID:  
=====  
507  
  
  
Introduction:  
=============  
To demonstrate the rich possibilities of DHTMLX controls and to show how they work within a   
common user interface, we’ve created some demo applications which are listed below. Using   
dhtmlxLayout, dhtmlxGrid, dhtmlxTree, and other dhtmlx components, you can very quickly   
create your own web applications with similar user interfaces.  
  
Ajax Application Built with DHTMLX - Database Administrator  
Database Administrator This application provides database management/navigation functionality   
and demonstrates simultaneous usage of the following DHTMLX components:  
  
- dhtmlxLayout  
- dhtmlxTree  
- dhtmlxToolbar  
- dhtmlxWindows  
- dhtmlxGrid  
- dhtmlxTabbar  
  
(Copy of the Vendor Homepage: http://dhtmlx.com/docs/products/dhtmlxSuite/index.shtml )  
  
  
Abstract:  
=========  
The Vulnerability Laboratory Team discovered multiple Vulnerabilities in the DHTMLX v.3.0 Professional|Standard Edition.  
  
  
Report-Timeline:  
================  
2012-04-10: Public or Non-Public Disclosure  
  
  
Status:  
========  
Published  
  
  
Exploitation-Technique:  
=======================  
Remote  
  
  
Severity:  
=========  
High  
  
  
Details:  
========  
1.1  
A remote SQL Injection vulnerability is detected in the DHTMLX v.3.0 Professional|Standard Edition.  
The vulnerability allows an attacker (remote) or local low privileged user account to inject/execute own sql commands   
on the affected application dbms. Successful exploitation of the vulnerability results in dbms & application compromise.  
the vulnerability is located on the sql query module of the database administrator function which allows to inject via  
POST request the database tables.  
  
  
Vulnerable Module(s):  
[+] SQL Query - Command Module  
  
  
--- SQL Exception Logs ---  
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version from   
the right syntax to use near `1-` at line 1  
  
Picture(s):  
../1.png  
  
  
1.2  
Multiple persistent input validation vulnerability are detected in the DHTMLX v.3.0 Professional|Standard Edition.  
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):  
../2.png  
../3.png  
  
  
Proof of Concept:  
=================  
1.1  
The sql injection vulnerability ca be exploited by local privileged users of the application dbms.  
For demonstration or reproduce ...  
  
id=host%5E0%7Cdb%5EdhtmlxKING-LUI%7Ctable%5Edepartments&sql=-1'%0A[SQL-INJECTION]  
[SQL-Query]  
  
  
  
1.2  
The persistent input validation vulnerabilities can be exploited by local low privileged user account with   
low required user inter action. For demonstration or reproduce ...  
  
  
ADD URL: http://dhtmlx.com/docs/products/demoApps/dhtmlxDBAdmin/connection.html?etc=1333992780435  
  
Vulnerable: Input Servername & Username - Listing  
  
<tbody><tr style="display: none;"><td class="hiddenRow"><div style="padding: 0pt; margin: 0pt; width: 18px; height: 18px;">  
</div></td><td style="display: none;" width="20px"><div style="width: 16px; height: 16px;"></div></td><td style="width: 18px;  
" class="standartTreeImage"><div style="padding: 0pt; margin: 0pt; width: 18px; height: 18px;"></div></td><td style="width:   
100%; font-size: 10pt; cursor: pointer;" class="standartTreeRow" nowrap="nowrap"><span style="padding-left: 5px; padding-right:   
5px;" class="standartTreeRow"></span></td></tr><tr style=""><td> </td><td colspan="3"><table style="margin: 0pt; padding: 0pt;"   
border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="standartTreeImage"><img src="./imgs/tree/plus4.gif" style="  
padding: 0pt; margin: 0pt; width: 18px; height: 18px;" align="absmiddle" border="0"></td><td style="display: none;" width="  
20px"><img style="width: 16px; height: 16px;" src="./imgs/tree/iconUncheckAll.gif" align="absmiddle"></td><td style="" class=  
"standartTreeImage"><img src="./imgs/tree/server.gif" style="padding: 0pt; margin: 0pt;" align="absmiddle" border="0"></td>  
<td style="width: 100%; font-size: 10pt; cursor: pointer;" class="standartTreeRow" nowrap="nowrap"><span style="padding-left:   
5px; padding-right: 5px;" class="standartTreeRow">db2.dhtmlx.com</span></td></tr></tbody></table></td></tr><tr style=""><td>   
</td><td colspan="3"><table style="margin: 0pt; padding: 0pt;" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td   
class="standartTreeImage"><img src="./imgs/tree/plus3.gif" style="padding: 0pt; margin: 0pt; width: 18px; height: 18px;"   
align="absmiddle" border="0"></td><td style="display: none;" width="20px"><img style="width: 16px; height: 16px;" src="./imgs/  
tree/iconUncheckAll.gif" align="absmiddle"></td><td style="" class="standartTreeImage"><img src="./imgs/tree/server.gif"   
style="padding: 0pt; margin: 0pt;" align="absmiddle" border="0"></td><td style="width: 100%; font-size: 10pt; cursor: pointer;"   
class="standartTreeRow" nowrap="nowrap"><span style="padding-left: 5px; padding-right: 5px;" class="standartTreeRow">  
ko</span></td></tr></tbody></table></td></tr><tr><td> </td><td colspan="3"><table style="margin: 0pt;   
padding: 0pt;" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="standartTreeImage"><img src="./imgs/tree/  
minus3.gif" style="padding: 0pt; margin: 0pt; width: 18px; height: 18px;" align="absmiddle" border="0"></td><td style="display:   
none;" width="20px"><img style="width: 16px; height: 16px;" src="./imgs/tree/iconUncheckAll.gif" align="absmiddle"></td>  
<td style="" class="standartTreeImage"><img src="./imgs/tree/server.gif" style="padding: 0pt; margin: 0pt;" align="absmiddle"   
border="0"></td><td style="width: 100%; font-size: 10pt; cursor: pointer;" class="standartTreeRow" nowrap="nowrap"><span style="  
padding-left: 5px; padding-right: 5px;" class="selectedTreeRow">>"<iframe src="http://google.com"></iframe></span></td></tr>  
<tr style="">​​​​​<td style="background-image: url("./imgs/tree/line1.gif"); background-repeat:   
repeat-y;"> </td>  
<td colspan="3"><table style="margin: 0pt; padding: 0pt;" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="  
standartTreeImage"><img src="./imgs/tree/line2.gif" style="padding: 0pt; margin: 0pt; width: 18px; height: 18px;" align="  
absmiddle" border="0"></td><td style="display: none;" width="20px"><img style="width: 16px; height: 16px;" src=".  
/imgs/tree/iconUncheckAll.gif" align="absmiddle"></td><td style="" class="standartTreeImage"><img src="./imgs/tree/leaf.gif"   
style="padding: 0pt; margin: 0pt;" align="absmiddle" border="0"></td><td style="width: 100%; font-size: 10pt; cursor: pointer;"   
class="standartTreeRow" nowrap="nowrap"><span style="padding-left: 5px; padding-right: 5px; color: red;" class="standartTreeRow">  
Connection error</span></td></tr></tbody></table></td></tr></tbody></table></td></tr><tr><td> </td><td colspan="3"><table   
style="margin: 0pt; padding: 0pt;" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="standartTreeImage">  
<img src="./imgs/tree/plus2.gif" style="padding: 0pt; margin: 0pt; width: 18px; height: 18px;" align="absmiddle" border="0">  
</td><td style="display: none;" width="20px"><img style="width: 16px; height: 16px;" src="./imgs/tree/iconUncheckAll.gif"   
align="absmiddle"></td><td style="" class="standartTreeImage"><img src="./imgs/tree/server.gif" style="padding: 0pt; margin:   
0pt;" align="absmiddle" border="0">​​​​​  
</td><td style="width: 100%; font-size: 10pt; cursor:   
pointer;" class="standartTreeRow"   
nowrap="nowrap"><span style="padding-left: 5px; padding-right: 5px;" class="standartTreeRow">  
<iframe src="http://www.vulnerability-lab.com"></iframe></span></td></tr></tbody></table></td></tr></tbody>  
  
  
Risk:  
=====  
1.1  
The security risk of the sql injection vulnerability via POST is estimated as high(-).  
  
1.2  
The security risk of the persistent input validation vulnerabilities are estimated as medium(+).  
  
  
Credits:  
========  
Vulnerability Research Laboratory - Benjamin Kunz Mejri (Rem0ve)  
  
  
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]  
  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation