实际测试中,发现account参数存在拼接注入

如下

漏洞挖掘 | 记一次登陆绕过_Linux

经过一番操作知道了数据库中共八个字段,分别是

uid ,account ,password,safe_password,telphone,username,createtime,super

第五个字段是手机号,由于登陆页面需要发送手机验证码

漏洞挖掘 | 记一次登陆绕过_Linux_02

寻找其发送短信的接口,

/admin/account/getSmsCodeForLogin

同样的account参数存在注入,直接一波联合查询,吧验证码发送到可控手机号上

漏洞挖掘 | 记一次登陆绕过_Linux_03

在通过登录接口,伪造登录

漏洞挖掘 | 记一次登陆绕过_Linux_04

发现,并没有cookie的信息,目测返回了一个token

那么前台是可以伪造直接访问后台的接口的页面

只不过会先访问,再跳转登录

注意:联合查询,一定要按数据库查到的信息来,因为毕竟不清楚后端代码,到底做了多少验证,尽量少改动。