-------已搬运------SQL注入的 过滤 思路 payload 万能密码

本文详细介绍了SQL注入中常见的过滤关键词及绕过策略,包括bool盲注、无列名注入、联合查询注入等。同时,列举了一些payload实例,如使用逗号替代、正则表达式注入等,并提及万能密码在32-128字符范围内的应用。
摘要由CSDN通过智能技术生成

目录:

字符是 32 - 128 。

还在补充中:…

一、过滤关键词:

1. 过滤 = 可用 like,regexp,in来代替:

=被过滤了,可以用 like来代替。
如果=like 被过滤了,也可以用regexp或者 in 来代替,后面都有,
注意:尽量不要用regepx来做,后面有解释,用 in like是可以的。这个 和 = 的效果是一样的。regexp是正则,如果ord是100的化,你regexp(1)也会是成功的。。。当然除非我们使用regexp的正则规定,算了没找到,就不要用regexp了吧。

在这里插入图片描述

能用

在这里插入图片描述

尽量不要用regep

在这里插入图片描述

2. 过滤ascii,不能用bool盲注了。可用ord来代替:

在这里插入图片描述

3. ,逗号被过滤了:

1. substr(***,1,1) 用这个来代替:substr(***from({})for(1))
  • substr(***,1,1),用 substr(***from({})for(1))。来代替。
    from是从1开始的。for总是1
    在这里插入图片描述
2.limit 0,1 用这个来代替:limit 1 offset {}

这个测试过滤,不能够用括号来代替空格。。。
在这里插入图片描述

4. 过滤了,information_schema.schemata这些,—无列名注入

当information_schema等杯过滤的时候,能够查询出来数据库的名字,但是查找不到表的名字,这时候可以用这个:sys.x$schema_flattened_keys或者sys.schema_table_statistics_with_buffer来爆出表明,这个也能爆表明:mysql.innodb_table_stats然后列明也没办法查么,可以用无列明注入

表明下面这个两个能爆出来,但是列名就要 用 无列名注入了。
select/**/group_concat(table_name)/**/from/**/ mysql.innodb_table_stats

select group_concat(table_name) from sys.x$schema_flattened_keys where table_schema=database()

5. 过滤了 union 的无列名注入: ----- ascii 偏移

BUUCTF:[GYCTF2020]Ezsqli --过滤了information_schem ------ 无列明注入之过滤了union 使用ascii偏移来做

6. 过滤了union的无列名注入&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值