“安全无小事”:当游戏遭遇安全问题,应该怎么做?

2024年3月5日,NS模拟器“Yuzu”作者Tropic Haze宣布与任天堂达成和解,支付240万美元赔偿金,停止后续模拟器开发和运营工作,并关闭了相关网站。

尽管许多玩家埋怨,如果不是NS机器的性能差,他们也不会去使用模拟器。但在玩家版权意识日益提高的今天,几乎不会有人反驳“破解游戏违法”这个事实,“游戏安全”不仅与游戏厂商相关,也与玩家紧密相连。

图片

一些玩家担心自己因使用过Yuzu模拟器而被任天堂事后清算

实际上,“游戏安全”在游戏行业里占据着十分重要的位置,不论是玩家还是从业者,几乎每天都要和它打交道。不过,人们平时对它的讨论并不算多,这是因为“游戏安全”有一定的技术壁垒。

在国内,游戏安全几乎直接和大厂挂钩,由于安全团队的成本较高,只有大厂具备足够的财力。大厂可以在安全事故发生前就做好充分的预案,而另一方面,同样占据行业内大部分位置的中小厂和独立开发者,在面临各种各样的安全问题时,往往难以作出合适的应对。

为此,我们找到了一家专注于游戏加固及反外挂的高科技安全服务商FairGuard,共同找出了一些较为贴近游戏玩家与从业者、曝光在大众视野中的游戏安全案例,并从专业视角进行分析。我们希望能借此让大众较为全面地了解到游戏安全的具体操作、作用和意义。

DDoS

在游戏安全领域,专业性最差、但最常见的案例类型是DDoS攻击(分布式拒绝服务攻击)。出于它的特性,中小厂商、独立开发者较容易遭受这类攻击

例如,今年2月29日上线的手游《雷索纳斯》就遭受到了名为ACCN组织发起的DDoS攻击。游戏不得不延迟开服1小时,许多玩家反馈首日游戏很卡,每看一句台词,要卡上10几秒才能进入到下一句。ACCN的主要手段是要求项目组缴纳“保护费”,不交就会保持攻击。无独有偶,一款用户有7位数的手游也在开服节点遭受DDoS攻击,如果不及时解决,所造成的损失难以估量。

图片

究竟是玩家太多还是遭受了攻击,可以从后台数据直观地观察出来

DDoS攻击的基本原理是,攻击方通过大量的“肉鸡”(由黑客远程控制的电脑)去占满游戏服务器的带宽或者CPU。如果把游戏服务器比作饭店的话,就像是饭店刚开门,突然有一群人来到饭店门口把门挡住,正常的食客挤不进来,又或者是这群人进了饭店占掉大部分桌子,不停地叫服务员点菜,服务员又赶不走他们,其他的食客也受到影响。

为了提高赚钱的效率,利用DDoS攻击进行勒索的往往是分工明确的工作室(如ACCN组织)。一部分人会专门去“找”将要上线的游戏,记录游戏的体量、类型和上线时间,另一部分人会根据这些记录来发动攻击,可能还会有专门的一批人负责与各个游戏项目组进行联络,确认收款。

图片

负责收钱的“专人”

这些行为当然是违法的,但项目组很难溯源与追责。一是此类组织的成员可能都不在国内,服务器IP地址又中转了几道;二是攻击者一般采用比特币等虚拟货币交易。

每年,TapTap等游戏平台上都有大量开发者被ACCN组织勒索的公告消息,尽管一些平台和发行方会提供防护服务,但对于开发者来说,“不怕贼偷,就怕贼惦记”,来自暗处、不知何时会出现的攻击始终是一种隐患。

从技术型防护的角度来说,DDoS攻击只是钱的问题。游戏的体量不同,攻击的流量也会有大小区别,毕竟“杀鸡焉用牛刀”,攻击也需要花费成本,如果没平衡好这个度,很可能就会做亏本的买卖。

“肉鸡”的成本低,但防“肉鸡”的成本高。比如攻击者利用“肉鸡”对游戏服务器造成200G的流量攻击,那么游戏项目组可能要去买200G的公有云(例如腾讯云、阿里云)资源来进行防护,前者成本可能只要几百元,后者则需要几万元。

图片

腾讯云上的防护产品

攻击者往往取两者中间值偏下一些的金额作为“保护费”,但项目组不能保证对方是诚实的。如果攻击者“盗亦有道”,只收一次保护费,项目组还能勉强接受;但如果对方觉得你是“肥羊”,就会一次又一次地勒索。很多时候项目组不敢赌,但是又没钱去买专门的防护服务,只能乖乖交钱。

对此,相对专业的建议是增强安全意识。一部分开发者没有预防的概念,往往是事发之后亡羊补牢,而遭受第一次DDoS攻击后损失的盈利反而比提前防护花的钱更多,得不偿失。

根据专业安全服务商总结的经验,成本较低的方法是,只要项目组在上线的头一个月购买公有云资源或相应的防护服务,后面就基本不会再有工作室来发动DDoS攻击。小体量的游戏花较少的钱,就能直接解决可能造成重大损失的问题。

外挂

相对于DDoS,一般人对外挂的了解可能更多一些,也更关注外挂对自身游戏体验的影响。

有的外挂能够监控或直接修改游戏文件,会对游戏生态造成严重破坏。FPS游戏因品类热度高、作弊收益大,以及数据储存在客户端,一直以来都是游戏黑灰产攻击的重灾区。

例如去年《穿越火线》职业战队“假赛”事件中,战队方请了主播团队,让他们在开挂的环境下和职业选手进行对局,并通过后续线下约战、洗白的方式来炒作。玩家们发现,主播团队使用的外挂隐蔽性极高,如果不是因为完胜了职业选手,很难让人联想到使用了外挂。在相关报道中,这种挂又称“主播定制挂”。

“主播定制挂”有两大特点,一是恰到好处的功能阉割,二是有外力介入的防检测手段。前者是为了让主播能够在技术方面“锦上添花”,在对局中又能提供足够好的“效果”。比如“锁定”功能需要在敌人现身、准星又离敌人身体很近的时候才能触发,肉眼难以分辨这种微小的移动痕迹是不是出自外挂。至于后者——做“主播定制”服务的团队往往会将特殊设备和外挂一起售卖,外挂放在设备里,让官方的检测手段在一定程度上失灵。 

图片

如果不是太高调,开“主播定制挂”很难被人发现

从防护的角度来说,游戏厂商往往是先拿到外挂样本,用外挂样本中类似识别码的形式在玩家对局中进行预防检测,假如某位玩家后台数据中出现了官方所掌握的识别码,那么官方就有权力采取措施,一般不会误封。但主播定制挂的识别码是单独的,这套流程也就自然不管用了。 

不过,玩家开挂的行为,就算常规流程检测不出,官方也是可以进行人工判断的,而人工判断的依据是后台环境和玩家的一些行为数据——举报在此刻便有了意义。

如果一个玩家收到了来自其他玩家的大量举报,官方就会检查他的后台环境和行为数据,并根据检查的结果对其进行风险评级。评级的维度众多,一般是看有没有修改内存,或是否处于非常规的环境当中(例如虚拟机)。

安全团队会把风险较高的玩家ID发送给项目组,由项目组决定后续采取的具体措施。有的玩家可能是“大R”,充了许多钱,直接封号有可能会引起法律纠纷,如果厂商拿不出足够的“客观证据”,就会有较大概率输掉官司。所以,一部分厂商会对“大R”睁一只眼、闭一只眼,对“小R”以下的玩家就是“宁可错杀,不可放过”了。

比起主播定制挂,“脚本”的危害较小,但也会对游戏的平衡性和生命周期造成直接影响。脚本往往出现在角色扮演、卡牌和策略类游戏中,从防护角度来说,脚本是和工作室直接挂钩的,有着经济系统的MMORPG则是工作室的重灾区。

脚本的作用是高效率地收集游戏内资源,并将获得的资源变现。从长远角度来看,当游戏内的资源被收集得过多,资源就会变得廉价,玩家们会倾向于找工作室买资源,而不是通过自己的游戏劳动来“挣”资源。为了降低成本,脚本往往在虚拟机上或云端运行,一个十几人的工作室,可能同时开上千个脚本。也就是说,实际上,脚本是“杀不完”的。

脚本和工作室衍生出的另一种现象是“初始号”。FairGuard技术负责人陈士留和我谈到了这件事:现在的二游往往需要玩家通过游戏中的重复劳动来换取成长性资源或角色,但是当游戏运营了一两年后,自建号的新人很难追上游戏进度,向工作室购买“初始号”成为普遍选择。

例如,2022年8月30日,《蔚蓝档案》国际服运营商Nexon永久封禁了28万个初始号,这些初始号不仅包括工作室手上的,还有许多已经流入玩家手中的。这在玩家群体中造成了“炎上”——玩家往游戏里课了金,又持续游玩了一段时间,厂商封禁后却不提供补偿措施,玩家自然会质疑:为什么厂商不对这种违规行为马上处理,而是要过一段时间才处理呢?

图片

Nexon曾发布的封禁公告

陈士留告诉我,这是因为脚本并没有修改游戏内存数据,只是一种定式的“模拟点击”,刷小号、撸羊毛。所以,安全团队需要从设备风险情况出发,并结合玩家上号后的行为判断。比如说,玩家在一款手游中做日常时,需要触碰屏幕上的几个固定位置,而手动操作和开脚本的用时和操作逻辑不一样,在有后台防护的情况下,后台会马上检测到玩家的异常行为,并提示存在脚本风险。但和FPS的“主播定制挂”不一样,二游的联机往往是“弱联机”,这种挂脚本刷资源的行为无法被举报,游戏厂商只能长期观察,定期“一锅端”。 

“一锅端”意味着滞后性,也就很难考虑账号是否有玩家在正常游玩,以及是否有充值行为。值得注意的是,玩家“炎上”的同时,游戏因工作室减少而流水上升的例子也不少。

而在“初始号”的起源日本,很多厂商在漫长的“炎上”生涯中,已经默许了初始号的存在,与工作室结成“共生”关系。有些游戏可能体量不大,缺少新人流入,初始号甚至起到了为开发商节省一些渠道、宣发成本的作用。只要不直接影响到其他玩家的体验,有些开发商会容忍一些轻微修改游戏内存的行为,例如“变速挂”。

另一些厂商采取的是“民不举、官不究”态度。比如MMORPG《最终幻想14》的“ACT”插件,如果玩家只使用它的“伤害监测”“机制播报”功能,官方并不会主动干预,毕竟这种插件确实改善了玩家的游戏体验。但原则上说,游戏不允许使用外挂,倘若拿着相应的检测数据去“出警”其他玩家,大概率会被官方封禁。

图片

《最终幻想14》中的“出警”插件

总体来说,是不是外挂、封不封玩家,需要具体情况具体分析。对于玩家来说,只要按照正常流程游戏,那么一定不会被封禁。在这个过程中,厂商需要反思的是,自己的游戏设计和版本规划是不是存在不合理的地方,玩家是不是必须要靠某种软性外挂(脚本)才能获得良好的体验?如果情况属于此类,那在厂商采取打击措施后,被“炎上”也并不奇怪。

破解

严格意义上说,修改游戏内存的外挂也属于破解的一部分,但破解还有许多更严重的情况,而在游戏安全领域,防破解也是最需要重视的部分。

在破解方面,最典型的案例是《传奇》私服。早年《传奇》被破解,源码泄露,有人别有用心地将源码删删改改,再加上自己的服务器,便成了私服。在黑灰产领域,当一款游戏被破解,破解成果必然会像病毒一样迅速传播。当私服能产生巨大利益时,许多人都会忽视法律,开始铤而走险。

正常情况下,游戏开发商需要找到版权方请求授权,制作正版产品。私服则像是“偷税漏税”,省了给版权方交钱的一步,私服的福利多,那么玩正版的玩家就少了,所造成的损失也难以估量。

FairGuard市场总监李雷表示,类《传奇》手游现在还有至少两百亿的产业链,年年都在打击,但就是打不掉。

图片

某小游戏破解平台

当然,《传奇》是因为代码泄露和破解太早,才会出现私服丛生的情况。更为常见的“破解”,是让付费游戏能够免费游玩。这也带来了一系列连锁问题:一些有内购的小游戏遭到破解后,会被放到网上低价售卖,让开发商和运营商遭受损失;在安装包内嵌入一些程序,在安装时收集玩家的个人信息,然后把信息拿去贩卖盈利;在原有的内购部分植入非法广告,达到既模仿正版、又能赚钱的效果;更有甚者,还会采取“订阅制”,系统化地盈利,远远超过了游戏安全所能容忍的底线。

不过,破解整个游戏的情况较少,而破解加密资源的情况比较多。举例来说,游戏里的图片、音频、文本等等内容,都算是“游戏资源”,在游戏上线之前,需要先将这些资源进行打包加密,一般游戏厂商的加密手段比较低级,不得不委托第三方来进行进一步加密。 

李雷提到,最近几年内容型的二次元游戏,关于这方面的需求陡然增加。一方面是因为二游的美术成本越来越高,美术资源也成了最重要的项目资产之一,占据项目成本的大头。而一旦美术资源被破解,很可能没多久市面上就会有玩法框架更简陋、但美术内容相似的竞品出现——在法律意义上,构成游戏抄袭、换皮的判定标准仍然较为严格,开发者可能意识到竞品破解了自己的美术资源,但难以找到切实证据。

另一方面,资源被破解意味着“剧透”,而“剧透”会在一定程度上影响游戏社区生态,还可能间接干涉到运营方的版本规划。比如一款二游将待售卖的角色资源提前放进游戏中,被人提前破解并在相关社群中进行传播,这个角色会在信息流中逐渐失去对玩家的吸引力,从而导致盈利额的减少。

李雷重点提到了去年《少女前线2:追放》的资源泄露事件,也就是“雷蒙夫人”事件,这次资源泄露直接导致之后的舆论爆发,以至于开发商散爆网络失去了玩家的信任。从防护视角来看,以“少前2”的体量,在游戏资源方面出安全问题,是难以想象的。

图片

去年10月,网上随处可见《少前2》的解包内容

李雷表示:“一般中、大型的游戏,在开始测试的半年前就会联系专业公司做加密工作了,PvE或者比较‘单机’的手游需要防止出现像‘少前2’的情况,PvP游戏则要考虑到被破解的资源会不会被用来制作外挂。”

而在实际情况中,热门游戏资源一旦泄露,必定会被迅速且广泛地传播,虽然这种行为违法,但游戏公司也很难向传播者追责。到了这一阶段,开发者应该做的,是盯紧自己的项目资源是否被拿来售卖或进一步恶意利用,以防损失扩大。

忽视

在交流过程中,我们总会提到一个问题:一些小型厂商或者独立开发者很容易忽视安全问题,或者说有相关的认知,但是缺乏应对经验。中大厂虽然在发展过程中多多少少积累了相关的经验,但面临更迭迅速、日益猖獗的黑灰产时也会有“栽跟头”的时候。

其实,不管是现实还是游戏,安全问题一直是大问题。作为开发者,应该做到的是尽量提前做好预案,避免出了问题再想办法解决。

所谓预案,向专业团队购买“外包服务”是一种选择,但并不是全部。开发者应该在制作游戏时就考虑一些设计的逻辑:会不会被不法分子利用?能不能从服务端做一些校验工作,提高破解与外挂的侵入门槛?实际上,这些工作并不需要花费太多成本,更多是观念和“用心”的问题。而在这个基础上出了事,再找安全团队进行处理,也可以在一定程度上避免更多的损失。

对于开发者来说,这样的观念和“用心”尤为重要。如果有一款优秀的游戏,因为开发者欠缺安全意识,上线时连最基本的DDoS攻击问题都不知道该怎么应对,让一个团队几年的努力化为泡影,这不仅仅是开发者个人的损失,也是游戏行业的损失。