mysql dba盲注_oracle 11g后db权限xxe盲注的快速获取大量数据的一些小技巧

原标题:oracle 11g后db权限xxe盲注的快速获取大量数据的一些小技巧

利用CVE-2014-6577。

目标版本:11.2.0.3, 11.2.0.4, 12.1.0.1, 12.1.0.2,等(反正就是比较新的版本啦,对非dba用户的权限做了些许限制)。当然,如果你是dba权限注入点,或者可以union,error。可以直接跳过此文。

dba权限的话:oracle盲注用http可以通杀一条龙。不是本文重点,轻微提及。

测试环境:oracle 11gR2 64位,kali。

我们先用tmux开启3个窗口。左边2个分别以db用户test,dba用户system登录。右边用python快速开启53端口web服务。如下图。

python -m SimpleHTTPServer 53

eb6473673ff7be68a8bbff1e5b5fbacf.png

接着我们用dba万能大法,http通道尝试。发现test用户网络连接被拒绝。而system不受任何影响。因为oracle版本号有空格。所以右方web状态码400,但我们要的数据已经出来。

oracle函数众多,有了dba,走遍天下也不怕。

5312899ea0e93d3d2e37a0e3b3755c74.png

下面看一下目标table的数据结果。挑战目标是普通db权限如何一次获取整张表。

2242a42e85580b28a77e1c24720791da.png

这里我们利用CVE-2014-6577(db甚至更小权限可以利用xml结构,跳过框架网络限制,建立http或者ftp通道)。

下图以http为例。ftp你自己开个nc或者wireshark抓个报文嘛。

netspi官网给出http简单payload和我们的改良版本:

9889b2a0d94329b8d6131a74a4934687.png

137efd2003f3ecf82417da502ee94150.png

细心的小伙伴可能会发现我上面为什么限定了where rownum<5。这个取前多少行自行决定。mssql一次error报错行数过多会导致二进制什么鬼的错误。所以我就是选5行,就是这么任性。

另外也可以写个脚本,oracle可以几十行几十行的注入。那样整张表很快就出来了。怎么发挥看你们哈。

对了。上面只是select测试解释。

常用payload中select,delete,update,insert都可以成功的。本人已测试。好了你们发挥去吧。

注意点:为嘛要用python呢,因为很多生产环境是oracle内网隔离,但是time base和布尔盲注又太慢,你恰好又有个目标网内的一台linux的webshell。那么python走起呗。记得端口改到1024+

注入点好的直接error,union。或者直接sqlmap。盲注:版本低的直接http,权限高的直接http,重要的事说3遍。

参考资料:

乌云drops(应该算各自独立完成):

注入相关姿势:

(看dsrbr大神的就差不多了)返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值