思路,如题所说过滤了以下
/ # -- select or union
不过由此又学到了一招
如果sql语句类似于
select * from user where username='用户名' and password='密码'
则可以注入
username=pcat'='&password=pcat'='
从而变成
select * from user where username='x'='' and password='y'=''
这时候根据等号从左到右计算的顺序,先判断username是否等于pcat,明显不等于,返回false,再判断false是否等于'',返回true,password同理
因此我选择注入x'='和y'=',成功了。
最后,以下结果均返回为true
1='1'
1='1.0'
1='1后接字母(再后面有数字也可以)'
0='除了非0数字开头的字符串'
网友评论