过滤注释符–+
1.可以用 and ‘1’='1 (单引号可以换成括号双引号等闭合字符)
2.可以用#
过滤and or
preg_replace()函数 替换 把and和or替换
我们可以用:
1.双写 aandnd oorr
2.代替 && ||
过滤空格
%0a来代替空格
也可以用注释充当空格/**/
过滤select
大小写 SELect 过滤大小写 select/i可以忽略大小写
双写 seselectlect
宽字节注入
client-connection
字节必须是gbk-gbk不能是utf8
utf8-utf8-latin1
GBK编码时会认为俩个字符是一个汉字
单引号被转义
\ ’
1.方法一:想办法吧\前面再加一个\ (或但数个即可),变成\ \ ',这样\就被转义了,'逃出了限制
2.方法二:想办法吧\弄没 '前加%df,\也是%5c
俩个加起来在gbk的编码下会认为是一个汉字
第一个字节ASCII码大于128基本都可以,%a1也可以
逻辑漏洞
update table users set password=’$ pass’ where username =’$ username’ and password’$curr_pass当前密码’
注册用户的时候可以写username’# 就成为下面
update table users set password=’$ pass’ where username =’$ username’#’ 注释 and password’$curr_pass当前密码’
注释后面的密码