or=or绕过后台验证,不用密码登陆后台管理
'or''=''or'漏洞是根据or and 运算符的逻辑运算,绕过后台验证进入后台的漏洞。我两年前就玩过这样的漏洞,今天突然想写点什么,就有了这篇文章。如果一个网站后台登陆的时候用户名和密码放在一个where中判断就悲剧了,例如下面的SQL语句:sql=”select * from admin where name='”&name&”' and password='”&pass&”'”SQL语句中的where是查询的条件,如果是“真”的话就成功进入了后台。当我们用户名输入'or''=''or' 密码输入任意例如123456name变量的值是'or''=''or'password变量的值是123456最后构造成的SQL语句如下:select * from admin where name=''or''=''or'' and password='123456'name=''部分结果是假,因为不会存在空的账号''=''部分结果是真,因为 ''等于''!''部分结果为假password='123456'部分结果为假,因为密码是自己瞎编的由于and运算符优先级高于or的优先级,所以先运算and部分,and部分结果是“假”其中''=''部分是真,由于是or连接的,所以结果是“真”
页:
[1]