首页 >> VS.NET

网址里参数加and 1=1 或 1=2什么用?

2012-09-16 16:58:51

提交这两个东西主要并不是为了测试是否过滤关键字,,,有的网站即使没有过滤关键字也不能注入的。。提交这个是为了测试我们自己构造的sql语句是否被查询
为什么要提交 and 1=1 和1=2  
这个是逻辑语句的问题  比如:select * from Table where id=
我们自己构造ID值,ID值本来是1,我们在ID后面追加and 1=1,那么语句就变成了 select * from Table where id=1 and 1=1
因为id=1的网页是确实存在的,所以and拼接起来的语句前半句返回真,后半句1=1返回肯定也是真,整条语句查询结果为真,返回正常的页面。。。
但是如果提交and 1=2  前半句返回真,而我们自己构造的1=2肯定返回假,and逻辑与运算符 只有2边都为真才返回真,所以整条语句返回值为假,页面就会出错。。。
就能说明我们自己私自构造的语句可以被正常执行,才可以注入