文章同步于微信公众号:苏雅图的雨
攻击者在某个平台的发言:
【原文】关于v2board项目泄漏事件,我们会在此处公开手里所有数据,欢迎各位关注,涉事站点大约100+,数据约400余万(不完全统计),数据中包含注册邮箱,节点信息,及加密的密码等。
【原文】部分数据我们会进行公开,并且会打包给国内负责相关事宜的工作人员,涉及站点大约100+(群达到一定人数我会发布,谢谢)数据中包含注册邮箱/经过加密的密码及节点方式一些其他信息。
【攻击者陆续公布了四份数据的下载链接】 其中有两份是月流水为10w左右的数据
【原文】如果v2board开源作者在最新版本,认为解决了所有可能发生的问题(最新版本),并且能保证安全,我们拭目以待,将会重拳一击。
【原文】 刚才我们对现有数据进行最新统计,共计342万余条。
【原文】 如果有大陆的警方工作人员,可以与我联系,我很乐意配合并且保留一些社工的看法,与建议,邮箱xxxxxx@gmail.com ( 笔者已将邮箱做处理 )
【原文】如果你想知道是否安全,不在我们的范围,说明你的站点不值得我们花时间,如果要一个准确数字,那么低于月流水1w,我们将扫描范畴选择越过,那么你是安全的。
【原文】目前为止我们筛查,使用v2board最大流水(月)可达200万,群达一定人数,我们将公开一个(月)50万流水的机场表。
笔者处理过的原文:
在晚上22:40分攻击者宣布数据已被某**全部拷走,并说祝各位好运!
攻击者最后又补充说不用刻意猜疑,数据没有出售给任何人,除上述4份公开表外,权当公益排查。
当天下午V2Board官方发布v1.7.1版本。
官方公告:
由于1.6.1的安全问题我们表示非常抱歉, 在新版本中我们加入了诸多的安全方面的优化, 也感谢利用者的测试。
我们在1.7.1版本中加入了安全信息重置的方式。 受影响范围仅限定于1.6.1。
如果您在此次事件中存在安全问题, 我们建议您进行如下操作:
1. 排查系统中的密钥是否被篡改
2. 排查系统中是否有未知管理员
3. 在站点目录下执行 php artisan reset:user 对订阅安全信息进行重置
2022年12月16日09:43分更新
通过review问题代码发现,问题在于鉴权中间件。
1.6.1版本的token存储方式从session改成了cache,导致作者重写了鉴权代码新的鉴权代码造成了严重的漏洞。
众所周知v2board的管理员信息和用户信息都在user表,仅用is_admin字段区分是否管理员,
管理员API的中间件鉴权代码和用户API中间件鉴权代码一模一样,只是多了个is_admin校验。
如图所示中间件首先会检查浏览器提交的token是否在服务器cache,也就是redis中。
如果有,直接通过鉴权。问题就在于这,普通用户在登录后生成的token已经在服务器redis表中,
所以将普通用户的token直接提交到管理员相关API接口,即可通过鉴权,没有任何权限校验。
也就是普通用户的token,可以随意调用管理员的API,相当于拥有了完整的管理员后台权限。
类似这种面板的机场是使用v2board的面板, 如果机场使用的是旧版面板, 是受到本次泄露风波影响的。
【方法一】
请求接口https://域名/api/v1/guest/plan/fetch 这个api不用登录就能获取套餐信息,有返回即是。
【方法二】
●PC:浏览器打开机场页面,右键→“审查元素”或者单击F12,打开调试窗口,源码包含“v2board”字样的就是。
●安卓:下载安装X浏览器 (https://www.xbext.com/),打开机场页面,右上角菜单栏,点击查看页面源码/查看页面资源,同理包含“v2board”字样的就是。或者可以通过安卓平台的WebView内核&Chromium内核&Gecko内核的特性查看源码,只需要在地址前面加上view-source:
更多:基本上所有使用v2board作为后台管理系统的机场源码都包含以下内容
<link rel="stylesheet" href="/theme/v2board/assets/
<script src="/theme/v2board/assets/
使用此方法识别比起直接看界面看个大概更准确。