什么是打金工作室?
近几年中国游戏市场持续发展,国产自研精品游戏层出不穷,游戏产业精品化、高质量健康发展趋势稳定。根据中国音数协游戏工委(GPC)与中国游戏产业研究院发布的《2022年中国游戏产业报告》显示,2022 年,中国游戏市场实际销售收入 2658.84 亿元,自主研发游戏国内市场实销收入为 2223.77 亿元。
在游戏市场愈加繁荣的同时,游戏安全形势也日益严峻。各类游戏外挂黑产危害游戏内部生态平衡,侵害广大游戏玩家、厂商的利益。
在这一背景下,游戏厂商在专注游戏品质的同时,也亟需做好游戏安全防护。根据 2022 年网易易盾发布的游戏安全年度报告显示,网易易盾总体检测到外挂威胁 3,709,617,186 次,同比增长 104.2%,全年移动游戏检测到环境威胁 63,989,592 个,同比增长 296%。由于多款爆款游戏的上线,手游的对抗性、竞技性进一步加强,这使得游戏安全,尤其是外挂防护一直处于高对抗状态。
在细分品类中,角色扮演类、设计类、动作类游戏更容易受到外挂的攻击,其合计占比达 60%。根据游戏安全风控数据显示,在这些游戏中定制外挂依然是各类游戏中最常见外挂形态,占比高达 83%。
这些外挂中的一个典型是“打金工作室”或称为“黑(灰)产工作室”。他们的目标通常是有交易机制或隐含资源转移机制的网络游戏,通过利用各种黑产工具和脚本,在游戏中完成同步器多开、脚本批量起号、自动完成任务、资源生产和转移等。这类外挂背后往往有庞大的产业,例如,网易暴雪曾多次联合警方打击《魔兽世界》外挂工作室,单次涉案金额均上千万。
打金工作室所控制的海量账号,从游戏中获取资源,这部分资源的产出是在游戏经济系统原先的设计之外的,大量资源产出与出售将会挤压正常市场,造成游戏虚拟经济崩溃,金价暴跌,最终导致玩家流失,服务器消亡。游戏方为了提高游戏生命周期,只好不断开新服,但打金工作室会不断涌入新服,如此形成恶性循环,游戏方疲于奔命,却无法从根本上解决利益流失的问题。
网易智企的游戏 AI 反作弊解决方案
市场上游戏多种多样,品类、平台、数据条件也不尽相同。经过多年与打金工作室对抗的实践,网易智企游戏 AI 积累了一套成熟的、数据驱动的游戏安全解决方案。这些方案能够有效地填补传统方案对业务数据利用率的不足,也可以避免游戏额外接入 SDK,保证跨端的方案通用性。
基于数据的方案能与玩家观测的现象更贴合,这种从现象切入游戏的技术方案不需要消耗精力感知外挂实现的手段。
检测方案可以从不同维度进行划分,从叙事的逻辑性上,我们按照作弊的生命周期和检测方案介入的时间顺序,将方案分为事前、事中、事后 3 种类型。
由于方案需要以数据进行驱动,在事前例如账号注册阶段,作弊者没有太多游戏内行为数据累计,我们通常采用设备维度的信息来进行初期的风险规避。例如根据用户的硬件、IP 等信息,并与历史维护的黑名单库进行比对,来给用户打上标签。同时网易易盾的加固防破解、防调试等功能也将作弊者拦截在初始环节外。
数据驱动的方案主要作用在事中和事后环节。在上游数据处理中,我们采用 kafka 接收游戏的消息,并写入 HDFS/HBase 集群,下游会部署小时或日级别的离线数据 ETL 流程,完成数据写入 hive/impala 数仓用于满足离线的业务分析或完成特定用户某时间范围内的全量数据快速查询需求。
在 MMO 游戏中,作弊者在事中环节会进行自动采集/刷怪、自动完成任务/副本等工作,为处理这些问题我们沉淀了多种方案。例如:
-
基于游戏的日志数据:我们构造了玩家在游戏中的行为序列,并利用表征学习和聚类算法识别高嫌疑的簇群,从而完成异常工作室群体的检测。
-
基于角色的轨迹类数据:我们采用时序算法来挖掘具有明显模式和规律性的异常数据。
部分前中期的方案缺乏足够的数据累计,或数据中所包含的信息力度不足以支撑证据,事后方案能作为良好补充,这也使整体方案更加完整。例如 MMO 游戏中的真金交易(RMT)问题,在事后能观察到更完整的牟利链路。从作弊者的角度考虑,他们始终面临被处罚的风险,为了规避风险会倾向于阶段性的变现。事后的方案能够有效地防止后续的游戏损失,同时增加作弊者的账号养成成本。
不同数据类型的防控方案
日志/行为序列方案
由于游戏原始日志包含了大量噪声(例如主动/被动,玩家信息/玩家动作,系统环境,自动/手动等),并不能真实的反映玩家的操作,因此我们设计了行为序列处理逻辑,对玩家的真实行为进行统一描述。
我们采用了 where-what-how-when 的思路来表达一个玩家的行为,例如在 MMO 游戏上玩家的行为可以表达为(map_id, action_id, detail_id, ts)这样的四元组序列。随后序列数据会进行分段、采样等数据增强处理并存储,供下游服务访问。
在处理序列数据上,Transformer 和 RNN 都是适合的工具,尤其是前者,它是基于自注意力机制的神经网络架构,对于序列数据建模有着优异的效果,广泛用于 NLP 等深度学习领域中,近期大火的 ChatGPT 等大规模语言模型,都是基于 Transformer 架构的。
我们采用 Transformer 的 Encoder 部分,对玩家的行为序列进行表征建模,捕捉角色在游戏中的事件信息、时间信息、顺序和上下文信息。
训练建模表征的过程通常伴随着业务经验,可以极大地优化无监督和自监督训练得到的表征向量质量,我们采用基于 Transfromer 的模型融合玩家事件和时间信息。在玩家表征的基础上进行密度聚类和关联性分析,得到疑似玩家群体,同时结合游戏运营经验对疑似玩家群体进行分级和筛选。
游戏客户对分级和筛选的标准各不相同,有的客户对于群体画像明显的疑似玩家群体,足以支持心中的判断标准,那么群体画像即可作为输出依据;有的客户认为群体画像不够,或者游戏数据不支持更丰富的画像生成,那么我们就会提供群体本身「人力不可达」的特性。
方案在经过线上初步验证并运行一段时间后,用户的反馈会作为监督信息回传给模型。这些正确和误判样例对于预训练模型而言,能作显式的样本指导模型,更好地理解日志的语义信息。对于下游分类任务而言,处罚样例能作为标签指导监督模型的训练,以提高方案的准确性和泛化性。
轨迹检测方案(鼠标、位置轨迹)
游戏中含有丰富的轨迹类数据,如鼠标操作轨迹、角色在游戏世界中的移动位置轨迹等。轨迹数据可以统一抽象成坐标点和时间戳的关系,如下表所示。轨迹数据具备高度的时空特性,能够反映玩家的潜在操作模式,打金工作室因为使用了自动作弊软件工具来替代人为的操作,使得他们的轨迹数据与正常玩家的轨迹差异性很大。
基本假设是,正常玩家的轨迹是杂乱无序的,而作弊玩家由于其使用了外挂软件或模拟器等多开设备,会使得角色间和角色内的轨迹呈现出明显的模式,因为作弊玩家为实现利益收集最大化,哪怕外挂增加了随机性进行干扰,轨迹总体仍然能够被发现与正常玩家存在不同。
轨迹数据非常适合可视化出来进行查看,因此具备较好的可解释性和易于说明性,正常玩家和异常玩家的轨迹数据差异性表现得非常明显。
我们提出了一个具有玩家证据轨迹数据的通用框架来检测 MMORPG 中的使用自动外挂的作弊玩家。整体流程如上图所示,该框架由 5 个模块组成:
-
Data Recording 数据记录模块,该模块部署在玩家客户端上,负责记录玩家轨迹数据,并发送给服务端的日志服务器;
-
Data Collecting 数据收集模块,该模块部署在服务端上,接收客户端发送来的轨迹数据,并进行排序、对齐等初步的处理;
-
Preprocessing and Feature Engineering 预处理和特征工程模块,该模块处理轨迹数据,生成特征文件,作为模型的输入;
-
Labeling and Model Training 标记和模型训练模块,该模型离线部署,负责进行样本标记和模型训练,得到的模型文件进入下一步模块进行处理;
-
Periodic Prediction and Result Processing 定期预测和结果处理,该模块部署在线上,对外挂玩家的轨迹进行预测,并将结果输出到画像平台上进行展示;
为了避免昂贵的手动特征工程,我们使用 AutoML 自动查找特征来减少工作量。我们还设计了一种自动迭代机制,以确保线上效果不会随时间衰减。
传感器方案
传感器数据本质上也是一种轨迹数据,其所适用的平台一般都是移动端设备,且数据内容和含义相比于普通的轨迹数据更加丰富,例如在「xy 坐标」和「时间戳」的基础上,还增加了「触摸类型」、「触摸压力」、「触摸索引」。
-
触摸类型:如 MOVE、DOWN、UP、CANCEL。
-
触摸压力:(可选),设备屏幕支持压力计的情况下,根据实际采集到的压力值大小进行记录。
-
触摸索引:用于区分多指操作,比如缩放操作需要两根手指,那么其中一根手指的索引为 0,另一根为 1。
在传感器数据上可以开展多种多样的检测方案,比如模拟点击。
我们将基于传感器数据的异常玩家识别分成 2 个大类:个体检测和群体检测。
-
个体检测指对单条传感器数据样本进行检测,优点在于检测效率高,可实时对流数据进行检测,同时模型可部署到端侧减少数据传输和被屏蔽的情况。
-
群体检测指对批量样本进行检测,优点是可以发现样本间的关联性,增强异常结果的证据性,因为群体检测方案可以从横向与纵向两个角度进行,不仅检测玩家历史多条轨迹,也能检测玩家间的相似异常轨迹。
在个体样本检测中,采用 LSTM 分别对轨迹事件和轨迹坐标进行建模,最后使用一个全连接层融合多维度数据,输出预测结果。在群体检测中,轨迹数据已经入了数仓,从数仓中提取批量轨迹样本,进行数据预处理后采用熵卷积和 Transformer 等模型提取轨迹特征向量,将轨迹特征向量存储下来后进行最近邻查询,或 HDBSCAN 密度聚类,得到多个疑似簇并按照游戏客户的不同标准进行分级和排序,从排序结果中发现异常的关联性样本,再通过人工归纳外挂模式,可以轻易地发现新型外挂。
关系图谱方案
打金工作室为了从游戏中获得收益,会把游戏中的资产进行转移、交易变现。其中,线下的真实货币交易是不可见的,在游戏中我们实际能观察到的是游戏资产的交易链路。除了资源交易之外,玩家包括打金工作室和正常玩家必定会在游戏中与其他角色发生例如组队、好友、共享硬件等交互行为,我们可以根据这些行为构建大规模社交图谱,挖掘其中不符合正常玩家的行为模式。
打金工作室往往具有群体性,即一个小群体(工作室)内的角色通常会互相发生许多价值不对等的交易来转移财产。这些异常交易参与者可以划分为三个群体:“打金者(farmer)”、“汇集者(banker)”、“买家(buyer)”。打金者就像挖金矿的工人,数量庞大;汇集者就像一个包工头,收集工人们挖到的金矿;买家就是从包工头那里买金矿的人。——而外挂的存在就像让包工头拥有了不计其数的、不知疲倦的、并且效率极高的机器人来为他挖金矿,这种行为显然扰乱了金矿市场的物价体系。相对应的游戏中,打金者就是开外挂自动刷副本的角色;汇集者的任务是收集打金者们打到的游戏资源,再把这些资源卖给买家;而买家就是从汇集者处买金的消费者。
在构图方式上,我们对游戏内的道具物品进行估值,将玩家间的交易图统一转换成价值转移图,每个玩家角色作为图中的一个节点。图嵌入(Network Embedding)、图神经网络(Graph Neural Networks)等技术受到了学术界广泛的关注和深入的研究。这些方法通常将网络中的节点投影到低维空间中的向量,从而完成非结构化数据到结构化数据的转化。基于此,我们设计了一个融合多种关系图谱数据的半监督模型 MVAN(Multi-View Attention Network),来对玩家进行检测和识别。
AI 系统的过程正义
数据方案的检测相比传统的手段在证据问题上尤为特殊。传统方案往往不需要对结果进行过多的解释,例如是否修改内存,签名是否改变等都是非此即彼、毋庸置疑的问题。
在数据方案中,开发者通常采用机器学习或深度学习的模型将业务转化成一个概率问题。但由于处罚标签的来源多样化、中间过程包含大量的逻辑推导、数据上不可观测等因素,这种做法仅仅是片面的学习了数据到结果的映射关系,没有思考判定过程是否合理、是否与专家经验一致以及数据本身是否能支撑起违规的结论。缺少这样的“过程正义”会令整个方案落入证据问题的陷阱。
根据以往的业务经历,我们沉淀了 2 种手段来解决上述问题。
首先是通过引入额外的流程来避免陷入证据的死结。对于部分存在丰富自由度的游戏场景,我们会与游戏方联合设计较为独立的取证模块作为最后一块拼图来填补方案的缺陷。这些取证模块的运行过程具有强证据、高准确率、高成本等特性,例如以交互式的方式来验证是否为真人、以采集更细粒度数据的方式来辅助结果判定等。
在拥有独立取证模块后,机器学习模型能更纯粹的仅仅作为该流程的前置条件来提供概率意义,其优化的目标是提升取证模块的成功率,降低不必要的成本损耗或对正常玩家游戏体验的干扰。
除了引入额外流程,我们会根据具体问题来针对性的设计模型来保证过程正义。
例如在 RMT 问题中,部分游戏的潜规则不允许玩家之间的线下交易,尤其是以打金工作室为表象的线下交易。但因为游戏外数据的不可观测,对该现象的判定完全依赖游戏运营的主观经验。这些经验本质上是基于对游戏深刻理解后对玩家行为的公平性裁决,我们认为游戏运营心中一定存在这样一杆秤,能够衡量两个不同行为的严重程度。模型的设计就要求和这些公平性判断做对齐。
相比于近期 AIGC 上的部分工作使用 RL 来引入人类的偏好,我们将公平性解读为特征与结果之间符合偏序关系。在实际应用中,我们使用了特征扰动、diffusion 等数据增强的方式来构造对比学习的损失。
在以上方案之外,我们还尝试引入解释模型或构建可视化平台等方式。这些方案更多的是从数据和过程的透明上起到作用,对核心问题起到了一些辅助作用。
结语
表面上看以数据驱动的检测仅仅是一个“0/1”的 2 分类问题,但深入后会发现它牵扯着 “如何合理的进行问题的形式化定义和描述”,“如何在系统中引入先验知识”,“如何构建可信的 AI 系统”,“如何构建合理的评估体系”,“AI 系统如何安全且符合人类偏好的运行”等难题。在作弊者手段更加高明,机器对人类的模仿更加逼真的背景下,相信不久后这些问题会成为整个社会共同关注的焦点,也相信时代会给我们答案。
多年来打金工作室也一直在发展,随着黑产设备越来越智能化、定制化,技术也在不断升级,主要表现在以下几个方面:
-
行为拟人化。外挂制作者渐渐在脚本、作弊软件中添加随机因素干扰,同时不降低其脚本牟利效率,行为上与正常玩家愈发相似。这要求对抗上需要另辟蹊径,从更加细致的角度进行分析和识别。
-
设备拟人化。原始的打金工作室群体所使用的黑产设备往往是简陋或者是“不合理”的,比如一个设备 ID 上登录几十个上百个账号,非常明显。但是随着黑产设备的进化,客户端获取到的设备信息愈发趋近于正常用户的设备信息,几乎可以以假乱真,对于以传统硬件信息识别的方案来说是一个巨大的挑战。
-
源源不断,周而复始。打金工作室打通了黑卡商、黑设备的链路,在账号被封禁之后,可以在极短时间内再次起号,对游戏造成危害,打之不绝。这对对抗的实时性要求提高了,必须在非常有限的时间和游戏行为中快速识别出黑产账号,才能有效形成压制。
所谓“道高一尺,魔高一丈”,这就需要游戏开发者与游戏安全从业者紧密结合,时刻坚持在黑产打击对抗的最前线。网易智企的工作室治理方案依托大数据+AI,进行精准的工作室群体识别,此外还提供异常群体行为分析和和管理服务,不仅仅能识别工作室群体,还能做到行为序列分析、玩家画像多维度分析、风险预警、异常行为可视化和证据展示,让运营人员能够清楚明了地看见异常群体的规模、形态、链路和各个维度的表现,做到处罚有理有据有数,真正实现有效治理。