ADempiere "insert()" SQL Injection and "canUpdate()" Security Bypass Vulnerabilities


Description   Multiple vulnerabilities have been identified in ADempiere, which could be exploited by malicious users to inject arbitrary SQL queries or bypass security restrictions.
The first issue is caused by input validation errors in the "insert()" [grid/ed/ValuePreference.java] function that does not validate the "m_Attribute" and "m_Value" values before being used in SQL statements, which could be exploited by malicious users to conduct SQL injection attacks.
The second vulnerability is caused by a design error in the "canUpdate()" [model/MRole.java] function that does not properly validate user roles, which could be exploited by malicious users with read-only privileges to gain access with read/write privileges.
     
Vulnerable Products   Vulnerable Software:
ADempiere version 3.1.5 and prior
     
Solution   Upgrade to ADempiere version 3.1.6 : http://sourceforge.net/projects/adempiere/
     
CVE   CVE-2007-2760
CVE-2007-2759
     
References   http://www.adempiere.com/wiki/index.php/Release_316
     
Vulnerability Manager Detection   No
     
IPS Protection  
ASQ Engine alarm Available Since
SQL injection Prevention - GET : suspicious OR statement in URL
3.2.0
SQL injection Prevention - POST : suspicious SELECT statement in data
3.2.0
SQL injection Prevention - GET : suspicious combination of 'OR' or 'AND' statements in URL
3.2.0
SQL injection Prevention - POST : possible version probing in data
3.2.0
SQL injection Prevention - GET : suspicious CREATE statement in URL
3.2.0
SQL injection Prevention - GET : suspicious OPENROWSET statement in URL
3.2.0
SQL injection Prevention - POST : suspicious OPENQUERY statement in data
3.2.0
SQL injection Prevention - POST : suspicious CREATE statement in data
3.2.0
SQL injection Prevention - POST : suspicious UPDATE statement in data
3.2.0
SQL injection Prevention - POST : suspicious UNION statement in data
3.2.0
SQL injection Prevention - GET : suspicious OPENQUERY statement in URL
3.2.0
SQL injection Prevention - GET : suspicious shutdown statement in URL
3.2.0
SQL injection Prevention - GET : suspicious UNION SELECT statement in URL
3.2.0
SQL injection Prevention - POST : suspicious DROP statement in data
3.2.0
SQL injection Prevention - GET : possible database version probing
3.2.0
SQL injection Prevention - POST : suspicious INSERT statement in data
3.2.0
SQL injection Prevention - POST : suspicious OR statement in data
3.2.0
SQL injection Prevention - GET : suspicious UPDATE SET statement in URL
3.2.0
SQL injection Prevention - POST : suspicious EXEC statement in data
3.2.0
SQL injection Prevention - GET : suspicious SELECT statement in URL
3.2.0
SQL injection Prevention - GET : suspicious INSERT statement in URL
3.2.0
SQL injection Prevention - GET : suspicious DROP statement in URL
3.2.0
SQL injection Prevention - POST : suspicious OPENROWSET statement in data
3.2.0
SQL injection Prevention - GET : suspicious EXEC statement in URL
3.2.0
SQL injection Prevention - POST : suspicious HAVING statement in data
3.2.0
     


 
 
 
 
 Risk level 
Moderate 

 Vulnerability First Public Report Date 
2007-05-16 

 Target Type 
Server 

 Possible exploit 
Local & Remote