v2board被爆出越权漏洞,这是一个主要的机场后台面板,所以有很多的机场的后台用户数据被扒出来,并且攻击者称已经xxx,看来这一行看来要自求多福了,能干一天算一天吧。
漏洞版本:
v2board 1.6.1
漏洞描述:
垂直越权
靶场环境:
本想自己来搭建的,但是看官方文档依赖环境实在太麻烦了,但是我在github上找到了现成的docker环境:
靶场链接:
docker-compose up -d
运行完成之后打开8080端口,就可以看到搭建成功了:


复现:
第一步注册账号,可以手动也可以自动:
#替换注册的邮箱和密码: curl -i -s -k -XPOST --data-binary "email=example%40example.com&password=a123123123" http://localhost:8080/api/v1/passport/auth/login
复现非常简单,只要注册账号之后,登入进去,然后找到,本地存储中的authorization的键值对:


然后复制键值对的key和值,如果是浏览器访问不用复制也可以,因为这个值就存储在浏览器中,访问管理员权限的页面:http://ipaddress/admin#/config/system,直接就可以跳过管理员登录,直接进入后台。


如果用抓包工具的话直接添加Authorization字段就可以直接批量使用管理员api,字段首字母要大写。
攻击者公开的用户资料:
漏洞分析:
作者@AyagawaSeirin(Twitter)
漏洞处在鉴权的地方,只要用户登录过了,存储中有Authorization字段就可以直接管理员登录成功。

PS:一些坑的地方:
我在gihub上复制靶场文件的时候,遇到了
syntax error:unexpected end of file
,靶场一直起不来,之所以遇到这个问题,因为windows没办法wget下载,docker虚拟机又因为你懂的原因没办法下载,我就手动复制文件内容然后在上传到linux上,所以出现了这个错误。解决办法要在vim的命令模式下:set ff
,查看当前的文件格式,然后改为unix格式:set fileformat=unix,真是太他妈坑了!