2017第二届广东省强网杯线上赛--------phone number

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nzjdsds/article/details/82120384

================================

个人收获:

1.sql语句里面也可以直接用database()

2.跟数据库有联系的地方都可能存在注入

================================

题目:

开始前对源码,http请求,路径。。这些都找过没什么有用的信息。

就只有这个还有点用,再检查手机号使用人数页面的源码有这段注释

然后想这题应该就是SQL注入了。

然后用登陆页面的post和注册页面的post放到sqlmap里面跑也没有出什么结果

就试了二次注入发现也没什么用

登陆页面后会出现你的个人信息

这个check可以检查有多少人跟你用同样的电话号码

所以就觉得这里可以做文章,把自己的sql语句写入电话号码带入数据库查询

打开注册页面发下电话号码有长度限制,果断burp抓包改包

系统提示只能是数字,那么我们用小葵的进制转换工具把sql语句转换成16进制再注入

写入成功

发现成功爆出了数据库名

那我们继续进行爆破表名

爆破列名

这里我天真的以为数据量很小,用了concat_ws想把这些字段的数据都套出来,但是页面一直再刷新状态。

后来我用了 -1 union select username from user 查询

发现这样的结果

。。。。。。。。。。。。。。。。具体好像是大宝剑的样子,我就直接用Ctrl+F查找关键字flag{

后来找phone字段里面找到了flag

后来发现自己挺傻的没把之前再手机号码检测人数页面的信息用起来

可以直接用这条语句就能搞定了

猜你喜欢

转载自blog.csdn.net/nzjdsds/article/details/82120384