漏洞文件:admin/login.php:68行
可以看到当用户名或密码错误时有一次create_admin_log操作:
admin/include/action.class.php:210行
记录相关信息到admin_log中,我们来看看ip来自get_ip()
include/common.class.php:122行
XFF,本来想用来注入的,但是不报错,而且每次都要输验证码,转而想到XSS,于是发现后台操作记录查看的地方会有get_admin_log操作
同样没做什么过滤,
由于数据库中IP字段长度限制,所以构造多次payload:
1、
2、
3、
由于按时间排序,所以顺序相反,分多次插入,中间用/**/注释,代码成功执行,

当然用到IP地方有很多处,也请厂商自己修正下。