2 mzliaolan mzliaolan 于 2014.03.10 16:55 提问

能否绕过密码查询到数据库中的内容【sql】

我是个刚接触sql的菜鸟。学了简单的一些查询语句,知道实际开发中如果过滤不严很容易被别人利用,什么万能密码什么的。

然后我看到有一个网站,里面输入一个编号和一个6位密码,就能查询那个编号对应的成绩。但是我不知道密码,输入000000。发现网页只显示了一句 :
select * from xxxx where id='12345678' and psw='000000'

然后弹出一个对话框,说id或密码不正确。
我想用'or'1'='1来做密码试试看,然后发现网页显示出了:
select * from xxxx where id='12345678' and psw='\\'or\\'1\\'=\\'1'

还是那个id或密码错误对话框。目前我只知道,它把输入的单引号换成\\,并且把输入的\换成\\

请问一下各位高手,假设它没有其他过滤手段了,有什么办法能不知道密码查询到成绩么?

1个回答

wumiaoyeah
wumiaoyeah   2014.03.10 17:06

ID和密码作为查询条件才能查出一条成绩,如果你不知道密码,只是通过ID来查询的话是查不到对应的成绩的,你加一个OR 1=1 也只是相对于吧psw='000000'这个查询条件去掉了而已。

mzliaolan
mzliaolan 哦,那还有没有其他办法能把后面那个查询条件去掉呢?
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片