入侵时 sql 问题 'or'='or'

来源:百度知道 编辑:UC知道 时间:2024/06/26 00:56:59
select * from usertable where uname='1'or 1='1' and upwd='1' or 1='1'
这句 我倒是知道 是什么意思 '1'or 1 = '1' 数字类型的 也可以加 ' 也可以不加 就算不知道前的值 但是后面是 or 所以是可以查出数据来的
但是据很古老的漏洞 'or'='or' 我真是搞不懂唉,, 查询语句 怎么写 输入
'or'='or' 可以得到数据??

正常是uname=' ' and upwd=' '
加上or这些就是为了让usname 永远验证成功
1=1嘛 怎么能不成功
password也是同理的

最后拼出来的sql就相当于和没验证 name password一样

就是sql注入,目的就是形成一条语法正确sql语句并且恒成立,
写上 1=1,1='1'你还是试试吧!

1='1'表示永远成立。也就是说uname='1' or 1='1'表示当uname='1'或者永远成立。这两者的交集是“永远成立”。那么当然是查询所有的。后者一样。

太深奥了~~~~~