前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >注入学习之sqli-labs-6(第五次)

注入学习之sqli-labs-6(第五次)

作者头像
用户1467662
发布2018-03-29 18:36:05
6680
发布2018-03-29 18:36:05
举报
文章被收录于专栏:农夫安全农夫安全

前言

上一次课讲解的是sql基于布尔型盲注,紧接着这节讲基于时间的盲注

布尔型盲注,是在我们判断网站是否存在注入的时候,网页不会暴漏错误信息,但会返回正确的页面或者错误的页面,我们基于这种情况,用猜测的办法去获取的我们想要的信息

0x01 开始测试

但是现在有一种情况,不管你在url后面如果构造,也没永远返回一个,也就是说不会报错

如下图

正常的页面

随便在url后面加单引号

两个页面返回的是一模一样的,所以这样我们就没办法用布尔型盲注了

那怎么办呢?

道高一尺,魔高一丈

先来学几个函数

0x02 函数

1 sleep函数

Sleep()括号里面直接带上要延时的时间,比如10s就是sleep(10),效果如图

2 mysql 的if语句(函数)

格式:IF(Condition,A,B)

意义:当Condition为TRUE时,返回A;当Condition为FALSE时,返回B。

把if 和 sleep 组合使用,如图

其实到这一应该就可以看出来,我们通过if 和sleep两个函数去组合,构造出类似我们上一节课布尔型盲注的效果。

布尔型盲注返回的是正确或者错误

时间盲注返回的是延时或者不延时

所以道理是相通的

这里直接带入第九关卡这道题目

用sleep函数去判断sql查询语句的形式

http://127.0.0.1/Less-9/?id=1 and sleep(5) --+ 直接返回页面

http://127.0.0.1/Less-9/?id=1’ and sleep(5) --+ 延时5秒才返回页面

http://127.0.0.1/Less-9/?id=1 ”and sleep(5) --+ 直接返回页面

所以我们判断该sql查询语句为

Select * from tables where id = ‘numbei’

单引号类型的查询语句

把上一节课的语句拿出来,通过if和sleep来构造

http://127.0.0.1/Less-9/?id=1' and (select if((select ascii(substr(database(),1,1))=115),sleep(10),null)) --+

115 对应的是数据库security的首字母‘s’,所以我们测试的时候,整个页面缓冲了10秒

所以,根据上面的结果

我们就可以参照上一课的盲注,利用猜测ascii的方式,来判断数据库名,表名,字段名

比如

我们猜测 当前数据库的第一个字符的ascii的值大于116

http://127.0.0.1/Less-9/?id=1' and (select if((select ascii(substr(database(),1,1))>116),sleep(10),null)) --+

执行该语句后,因为有if语句的判断,判断结果是错误的,所以返回空,页面会直接返回,那说明我们的猜测是错的

我们再猜测

http://127.0.0.1/Less-9/?id=1' and (select if((select ascii(substr(database(),1,1))>114),sleep(10),null)) --+

执行该语句后,因为有if语句的判断,判断结果是正确的,所以执行sleep(10),页面会延时10秒再返回,所以我们的猜测是对的

我们猜测当前数据库的ascii码值为114 和116之间

我们再继续猜测,就能得出正确的ascii码了,也就知道正确的字符了

余下的查询表名和字段名,除了多加if和sleep两个函数,其余的就跟上一节课一样的了,这里就不再阐述。

0x03 总结

这节演示的是第九关卡的,其实第十关卡的跟这一节几乎是一样的,除了sql查询语句是双引号类型这点不同而已。

Select * from tables where id = “numbei”

我们构造的语句只要能把双引号闭合,剩下的就都是一样的了。

所以第十关卡就不再另外讲解了。

同样的,只要我们能正确判断出该页面存在的是哪一种类型的sql注入,我们就可以借助sqlmap去处理,省事省力。

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-07-07,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 网络安全社区悦信安 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 0x01 开始测试
  • 0x02 函数
  • 0x03 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com