select * from admin where username='abc’or 1=1 and password='123’

sql注入一般都用这个语句,但我不理解,请大侠指教... sql 注入一般都用这个语句,但我不理解,请大侠指教 展开
 我来答
帐号已注销
推荐于2016-11-18 · TA获得超过115个赞
知道小有建树答主
回答量:351
采纳率:0%
帮助的人:158万
展开全部
所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会i员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击.

前提都是你知道表明
fcagrdtcb
2013-07-30
知道答主
回答量:4
采纳率:0%
帮助的人:5920
展开全部
这句的意思就是username=abc OR(或者)1=1,这里的 1=1永远为真,在加上后面的 password=123,联合起来就是只要有人的密码为123的就能直接登录 ,不验证用户名字
追问
pengbingge|一级
关键在于你用的是字符串拼接而不是用的带参数的。这样不管用户名和密码是否正确,1=1 永远成立,又因为前面有了 or 这样 判断永远为真,就算不知道你得用户名和密码,也能保证查询成功,也就能登录你得系统了。

你的回答和上面这个回答有点是矛盾的 --- 就算不知道你得用户名和密码,也能保证查询成功。
假如没有密码为 123 的用户,那你的来说就不能登录了对吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pengbingge
2013-07-31
知道答主
回答量:24
采纳率:100%
帮助的人:5.8万
展开全部
关键在于你用的是字符串拼接而不是用的带参数的。这样不管用户名和密码是否正确,1=1 永远成立,又因为前面有了 or 这样 判断永远为真,就算不知道你得用户名和密码,也能保证查询成功,也就能登录你得系统了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式