SQL注入之时间盲注

       在页面中,若不管输入什么,数据交互完成以后目标网站都没有正确和错误的页面回显,这个时候我们可以利用页面响应的时间来判断SQL语句有没有在目标数据中得到执行

1.判断是否存在注入

通过时间函数进行测试,输入1 and sleep(5)或者1' and sleep(5)%23进行测试,如果页面有延迟,说明SQL语句在数据库里被执行

从网络一格可以看出指令确实延迟了5s执行,SQL语句执行有效

2.获取数据库名长度

使用if语句进行判断,语法格式if(expr1,expr2,expr3),如果第一个语句正确执行第二个语句,否则执行第三个语句

倘若数据库长度为8,则延迟响应5s,根据网页延迟响应可知数据库长度为8

3.获取数据库名

同时使用if语句,ASCII函数,bp爆破来判断数据库名

响应时间大于5000的即为爆破结果,对应所得结果为security

4.获取数据库表

(1)获取表的数量

根据回响时长可知表数为4

(2)获取表的长度

若要获取第二个表的长度,将limit后的0改为1即可,根据测试,四个表的长度分别为6,8,7,5

(3)获取数据库表名

对应的字符为emails

5.获取表中字段

 (1)获取字段数量

(2)获取字段长度

第一个字段长度为2

第二个字段长度为8

(3)获取字段具体名

由爆破结果可知,第一个字段名为id

6.获取记录数据

(1)获取表中有多少条记录

(2)获取记录长度

(3)获取记录具体内容

在我看来,盲注中布尔盲注和时间盲注区别不大,基本做题步骤以及语法没有什么区别,唯一区别在于时间盲注中的if语句,利用if语句前后项的逻辑关系以及页面回响是否存在延迟来判断SQL语句执行的正误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值