Oracle Reports Server非授权报表执行漏洞
发布日期:2005-07-20
更新日期:2005-07-20
受影响系统:Oracle Reports 9i
Oracle Reports 6i 6.0.8.19
Oracle Reports 6i 6.0.8
Oracle Reports 6
Oracle Reports 10g 9.0.4.3.3
Oracle Reports 10g 9.0.4
Oracle Reports 10g 9.0.3
Oracle Reports 10g 9.0.2
Oracle Reports 10g 9.0.1
Oracle Reports 10g 9.0
描述:
BUGTRAQ ID:
14316
Oracle是一款大型的商业数据库系统,Oracle Reports是Oracle的一款企业报表工具。
Oracle Reports Server通过报表文件可执行程序,攻击者可能利用此漏洞在主机上执行任意命令。
Oracle Reports启动任何目录任何用户的报表可执行程序(*.rep或*.rdf)。能够向应用服务器上传特制报表可执行程序的攻击者可以运行任意OS命令或读写服务器上的文本文件,如包含Oracle口令的wdbsvr.app,这样就可以完全控制应用服务器。
<*来源:Alexander Kornbrust (
ak@red-database-security.com)
链接:
http://marc.theaimsgroup.com/?l=bugtraq&m=112181380908044&w=2
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
1. 创建或修改一个简单报表,添加ORA_FFI调用运行OS命令或TEXT_IO调用读取应用服务器上的文本文件。
2. 生成目标平台的报表可执行文件,如hacker.rdf或hacker.rep。
3. 通过SMB、文件上传、Webdav、Samba、NFS、Webutil、FTP等将报表可执行文件hacker.rdf拷贝到Oracle Application Server中的目录。
4. 以Oracle用户运行hacker.rdf报表并指定报表可执行程序的绝对路径
http://myserver.com:7779/reports/rwservlet?server=repserv+report=/tmp/hacker.rdf+destype=cache+desformat=PDF
5. 现在就可以以Oracle用户(Unix)或系统用户(Windows)权限执行主机命令,或读写文件。
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 不允许用户通过SMB、Webdav、SAMBA、FTP等向应用服务器上传内存,或使用URLRewrite阻断有报表参数和绝对或相对路径的危险URL。阻断以下字符串:
"report=.."、"report=/"、"report=c:\"、"report=d:\"
厂商补丁:
Oracle
------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.oracle.com浏览次数:2672
严重程度:0(网友投票)