这一关来到了二次注入的世界:
所谓的二次注入简单一句话:就是你在一个身份下面可以改其它身份的密码(数据)
不过在此之前想尝试一下报错注入在修改密码可不可以成功:
???让我更聪明更努力点???
ok,fine…
那就二次注入吧…
后台的修改密码的 SQL 语句如下:
![ff91c5b5334bad554f84085bea7e56f.png](http://112.74.54.253/usr/uploads/2020/06/3199173457.png)
试想,如果在注册的时候,就写入一个带过滤后边 SQL 与的字符的用户名会怎么样呢?比如:admin’#
SQL 语句就变成了:
UPDATE users SET PASSWORD='$pass' where username= 'admin'#' and password='$curr_pass'
也就是:
UPDATE users SET PASSWORD='$pass' where username= 'admin'
这就把 admin 账号的密码给改了…这就是整个二次注入的过程
演示:
创建一个新用户:
创建成功:
登录改密:
(改成 123456)
点击 Reset 之前,先看看原来 admin 的密码:(admin)
Reset 之后:
再次查看:
😄