SQL注入1.0
1 sql注入语句分析
?id=1’ and 1=1–+
?id=1’ and 1=2–+
如果是1=2,后面条件不成立,id=1也不能执行,他将会执行id=-1的错误页面,或者是超出id范围的那个页面,如果是1=1条件成立,则前后两个都对,才执行。
2 解释一下单引号的问题
加上的单引号,语句就提前闭合,但是不加注释,后面还有一个真正的引号在起作用。
之前的语句:select username where ?id=’ ‘;
加上id=1’,语句就变成了这样:select username where ?id=’ 1’ ';
所以这就是为什么加上id=1’会这样,必须加上注释符,才会正确,把后面的东西注释掉,这也是为什么用and判断的原因,and语句的判断根据前面id的正确和错误返回的页面,很重要,只有前后正确才会得到判断
3 or 语句的判断
这样比较精准,前后都错误,返回一个id值不存在的页面,不能说是报错页面,是id值不存在的页面,这就取决于搜索框必须有这个变量。
/?id=-1’ or 1=2–+