sql注入时带引号屏蔽的怎么处理

写了学长给的一个题目,第一关就是一个sql注入,但是尝试了万能密码是不管用的,因为题目把单引号给过滤掉了,无法使用单引号来闭合

$sql = "SELECT username, password FROM user WHERE username='" .$user ."' && password='" .$pass ."'";

要想闭合sql语句加上or 1=1#来使判断条件为真,我学到了一个操作:使用\转义

\转义后面的单引号

在用户名框输入\,密码框输入or 1=1 #,这样提交后,sql语句是这样的:

...where username='\'&& password=' or 1=1 #'

这时实际上你提交的username就是\'&& password= 提交的密码里的#把后面的多余的单引号给注释掉了,这个时候sql注入就成功了


版权声明:本文为m0_51078229原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。