<<< Date Index >>>     <<< Thread Index >>>

Oracle Security Advisory: Run any OS Command via unauthorized Oracle Reports



Dear Bugtraq Reader

3 months ago (15-april-2005) I informed the Oracle Security Team 
(secalert_us@xxxxxxxxxx) that I will publish bug details if the bugs are not 
fixed with the next critical patch update (CPU July 2005). I know that Oracle 
products are complex and a good patch quality need some time. That's why I 
offered Oracle additional time if 3 months are not sufficient for fixing the 
bugs. Oracle never asked for more time.

Oracle's behaviour not fixing critical security bugs for a long time (over 650 
days) is not acceptable for their customers. Oracle put their customers in 
danger. At least one critical vulnerability can be abused from any attacker via 
internet.

I decided to publish these vulnerabilities because it is possible to mitigate 
the risk of these vulnerabilities by using the workarounds provided in the 
advisories.


Kind Regards

 Alexander Kornbrust

 www.red-database-security.com

#################################################

Red-Database-Security GmbH  - Oracle Security Advisory

Run any OS Command via unauthorized Oracle Reports


 Name                Run any OS Command via unauthorized Oracle Reports
 Systems Affected    Oracle Reports 6.0, 6i, 9i, 10g
 Severity            High Risk 
 Category            OS command execution
 Vendor URL          http://www.oracle.com 
 Author              Alexander Kornbrust (ak at red-database-security.com) 
 Date                19 July 2005 (V 1.00) 
 Advisory            AKSEC2003-014
 Inital bug report   663 days ago
 Advisory-URL       
http://www.red-database-security.com/advisory/oracle_reports_run_any_os_command.
html


Details
#######
Oracle Reports is Oracle's award-winning, high-fidelity enterprise reporting
tool. It enables businesses to give immediate access to information to all
levels within and outside of the organization in an unrivaled scalable and
secure environment.
Oracle Reports, a component of the Oracle Application Server, is used by Oracle
itself for the E-Business Suite. Many large customers are using Oracle Reports
as reporting tool for their enterprise applications.

Oracle Reports starts reports executables (*.rep or *.rdf) from any directory
and any user on the application server. These reports are executed as user
Oracle or System (Windows). An attacker which is able to upload a specially
crafted reports executable to the application server is able to run any OS
command or read and write text files on the application server (e.g. wdbsvr.app
containing Oracle passwords). He can overtake the application server. The upload
could be done via Webdav (Part of the Oracle Application Server), Webutil, SMB,
SAMBA, NFS, FTP, ...

By using the report parameter with an absolute path it is possible to execute
reports executables from ANY directory and ANY user.


Testcase
########
1. Create or modify a simple report and add an ORA_FFI call to run OS commands
or a TEXT_IO call to create or read text files on the application server.
Details how to call OS Program/Command from Reports (Metalink ID: 181086.1) or
Read and Write Textfiles Using TEXT_IO (Metalink: 33247.1) are available on
Oracle Metalink.

2. Generate the reports executable (e.g. hacker.rdf or hacker.rep) for the
destination platform (e.g. Linux, Solaris, Windows, ...)

3. Copy the reports executable hacker.rdf to a directory on the Oracle
Application Server
(e.g. via SMB, file upload, Webdav, Samba, NFS, Webutil, FTP, ...)

4. Run the report "hacker.rdf" as user Oracle and specify an absolute path for
the reports executable
http://myserver.com:7779/reports/rwservlet?server=repserv+report=/tmp/hacker.rdf
+destype=cache+desformat=PDF

5. The host command is executed (ORA_FFI) or a file could be read/write
(TEXT_IO) as user Oracle (Unix) or user SYTEM (Windows).



Workarounds
###########
Available at 
http://www.red-database-security.com/advisory/oracle_reports_run_any_os_command.html


Patch Information
#################
This bug is NOT FIXED with Critical Patch Update July 2005 (CPU July 2005). It
seems that Oracle is NOT INTERESTED to fix this issue and provide patches.



History
#######
25-sep-2003 Oracle secalert was informed

26-sep-2003 Bug confirmed

15-apr-2005 Red-Database-Security informed Oracle secalert that this
vulnerability will publish after CPU July 2005 Red-Database-Security offered 
Oracle more time if it is not possible to provide a fix ==> NO FEEDBACK.

12-jul-2005 Oracle published CPU July 2005 without fixing this issue

19-jul-2005 Red-Database-Security published this advisory




© 2005 by Red-Database-Security GmbH - last update 19-july-2005