二次注入
二次注入
二次注入原理
向数据库插入恶意语句,数据库使用addslqshes()函数进行转义过滤后添加 \ 但是 \ 不会插入到数据库中,形成了脏数据,在下一次查询时,直接取数脏数据进行执行,就形成了二次注入
实例
使用sqli-labs靶场进程实验操作
首先创建一个用户,用户名为 admin'# 的账号


从数据库中可以看到账号信息

这时我们去修改 admin'# 账号的为123456,重新查看数据库

发现 admin'# 的密码并没有发生改变,而 admin 账号的密码却被修改了,查看php源码发现明显的sql注入漏洞

这是因为我们注册的 admin'# 代入到了sql语句中执行,从而更改了 admin 的密码

浙公网安备 33010602011771号