本关没有错误提示,那么我们只能靠猜测进行注入。这里我直接从源代码中看到了sql语句

$uname=$_POST['uname'];
$passwd=$_POST['passwd'];
$uname='"'.$uname.'"';
$passwd='"'.$passwd.'"'; 
@$sql="SELECT username, password FROM users WHERE username=($uname) and password=($passwd) LIMIT 0,1";

那这里对uname进行了 ("uname") 的处理。

本关和less15类似,同样可以利用布尔注入和延时注入进行。

下面我们来演示一下布尔注入。

猜测数据库第一位

uname=admin") and left(database(),1)>'n'#&passwd=1&submit=Submit

Sqli-labs Less-16 布尔注入

登录成功,就这样可以挨个对每一位进行测试,less5中我们已经讲过这个过程了,这里就不重复了。

这里提一个小的建议:在按位进行猜解的过程中,可以利用二分法,可以有效的降低尝试次数。

其他的过程就不演示了,请自行构造payload进行测试。

相关文章:

  • 2021-08-05
  • 2021-08-18
  • 2021-10-19
  • 2021-06-20
  • 2021-12-24
  • 2021-07-28
  • 2021-11-16
  • 2021-05-20
猜你喜欢
  • 2021-07-26
  • 2022-01-27
  • 2021-09-07
  • 2021-06-13
  • 2022-01-04
  • 2021-11-10
  • 2021-08-28
相关资源
相似解决方案