/ 本文发布前,漏洞已告知官方,并且漏洞已修复 /
前段时间遇到的一个站,Web 端查看没啥严重问题,换到手机端查看的时候,发现了个逻辑问题
手机端重置密码分三步
- 第一步输入单位和账号
- 第二步收短信验证码
- 第三步输入新密码
乍一看没问题,然后抓包的时候发现第三步修改密码,是直接 post 了用户 ID、密码和手机号到服务端,没有校验第二步的验证码,后来发现手机号随便传一个都可以,不是用户绑定的密保手机都没问题
uid = 用户 ID&password = 新密码 & rePassword = 重复输入新密码 & mobile = 任意手机号
我们在登陆界面选择学校,找到“口袋大学“ ,这个学校是官方创建的学校,里面都是官方的人
我们学校使用的就是PU,我登陆上自己的账号(如果需要我可以提供我的账号做测试),在找人界面搜索关键字“PU“,找到学校是”口袋大学的用户“,以”PU_jl“这个用户为例,可以看到他的用户名为”PU_jl“,昵称为”PU君“
可以看到这个用户的UID为3051761
结合以前发现的一个任意用户信息查询漏洞,查询到某个管理员的UID号和手机号码
利用上面查到的用户UID和手机号(实际操作重置密码的时候需不需要手机号无所谓,,随便写的即可)重置管理员密码
登上这个账号,可以看到 学校后台 的选项,这个后台只是PU口袋大学这个分组的后台,并不是总后台
在这个分组后台里,可以看到所有隶属于此分组的用户,找到一个有手机号,并且是超级管理员的账号
同样的操作,重置完他的密码以后,登陆上去,可以看到多了一个 后台管理
可以发现一共有9122584条记录
随便点击一个信息进去,可以看到这里列出了这名学生的 学校、院校、年级、专业、班级、邮箱、手机号、姓名等信息
找到相册管理,可以看到这里能修改图片允许的格式,给他手动增加一个PHP
然后回到前台相册功能上传一个shell
查看抓到的包,可以得到上传后的路径以及文件名