二次注入原理
二次注入可以理解成,攻击者先将攻击语句插入到数据库中,然后再调用攻击语句,完成攻击。
下面自己搭建环境复现一下
先在reg,php去插入攻击语句,username处语句为' union select 1,user(),3# (这里后面的数字只要小于等于列数
就可以,因为reg.php中使用了addslashes()函数,会将单引号转义,否则需要自己将单引号转义,即 \' union select 1,user(),3#)
去数据库查看发现语句已经成功插入
然后查询id,即可成功执行sql语句,得到用户名,完成攻击