移动020模式APP反外挂-转摘

外挂造成的影响

快递员都因为接不到单打起了退堂鼓,和游戏行业外挂有些类似,区别在于游戏为了玩的爽。这个行业纯粹为了黑产

外挂的种类

    根据外挂的实现原理,以及对游戏正常业务造成的危害程度,我们对外挂大致可以分为如下三大类:辅助型、修改内存型、破解型(二次打包、脱机外挂)。


辅助型

    这类外挂对游戏和业务的影响相对比较小,本身不会修改和破解游戏的代码,主要是模拟用户点击,自动化的做一些重复性的操作。比较常见的是图像识别和按键精灵等工具。通过图像识别技术,可以判断人物当前的位置、火车票余量等;然后通过按键精灵模拟用户点击,达到人物在游戏中的走动、自动抢单等操作。

最火的案例莫过于现在的直播答题、打车抢单、O2O抢单场景了。

外挂程序通过OCR识别出题目的文字,然后通过搜索引擎检索答案,最后自动化点击题目的答案,做到全自动化答题,并且准确率还很高。

修改内存型

    修改内存型外挂依托于官方游戏APP,属于动态修改游戏业务逻辑,这类外挂往往会向游戏进程中注入第三方恶意模块,然后通过修改代码的逻辑、修改内存中的数值等手段达到修改游戏地理位置、人物奔跑加速、破解收费道具、修改游戏币数量和增加血量等。此类外挂会极大的破坏游戏的平衡性。

如下是“XX酷跑”的游戏外挂,属于典型的内存修改类外挂程序。此外挂程序会往游戏进程中注入第三方模块,然后通过修改游戏的代码逻辑和内存中的数值,可以随意改变游戏的飞行距离、奖励的倍数、奔跑的速度等参数。

破解型

破解型游戏外挂对于游戏厂商来说影响是最大的,不仅会破坏游戏的平衡性,更会加速游戏业务走向衰亡。

破解型外挂又分为两类:二次打包和脱机外挂。

APP的二次打包是基于对官方APP的修改,属于静态修改代码逻辑。黑客们通过逆向分析游戏逻辑,修改游戏赖以生存的核心功能,比如去除游戏中的广告代码,破解单机游戏的收费逻辑,插入盗号代码等。

如下是《XX那三国》游戏的二次打包版本,其中被插入了“一键跳过”副本、游戏对话速度可调至3倍速等外挂功能。

    脱机外挂的出现对游戏厂商来说是毁灭性的打击,这意味着游戏客户端和服务器端通信的逻辑都已经被黑客逆向的非常清楚了,所有的游戏操作都可以脱离游戏客户端而通过脚本来实现。

脱机外挂的危害也显而易见的,首先,原本属于游戏客户端的广告、道具等收入没有了;其次,脚本操作比正常的客户端操作要快很多很多,极大的破坏了游戏的平衡性。当年PC时代最为火爆的《传奇》游戏,很大程度上也是没落于脱机外挂的出现。

如下是《狼人杀》游戏的批量注册小号工具,黑客通过逆向游戏注册逻辑和算法,编写PC端自动化注册工具,完全脱离游戏客户端APP,属于典型的脱机外挂。


外挂难防

作为一名游戏行业反外挂领域多年的从业者,陵轩也在现场对外挂的存在原因,防控难度及外挂的分类等进行了详细的分析。

游戏外挂问题,不仅仅只在微信“跳一跳”小游戏中出现,它更是一个手游行业普世存在的、并且不能被忽视的严重问题。那么,这些外挂究竟是如何产生的呢?

1、相较PC时代的C++游戏客户端,现在的手机游戏基本上都是以脚本语言为主。由于脚本语言的特性,游戏的开发成本降低了,迭代周期缩短了,但也同样面临容易被反编译、篡改破解等问题。

2、以往在PC时代被广泛使用的游戏驱动保护,到了移动时代由于手机的限制,也同样不能用了。这就导致了黑客可以有Root、越狱等超级权限,而游戏则只有普通的用户权限,这种攻防对抗层面的权限不对等,也是移动端外挂难防的一个很重要原因。这就好比我是一个拿菜刀的屠夫面对一群拿AK47的恐怖分子一个道理,根本没法打。

3、出于对手机网络的不稳定,以及流量使用等原因的考虑,很多手机游戏的计算逻辑和过程都在客户端进行,这就导致了黑客可以很容易的篡改客户端进行游戏作弊,比如,直接跳过某些游戏关卡、BOSS一击毙命等。

4、手游时代对外挂工作室来说,作弊成本低。一台主流PC机可以虚拟出几十个模拟器;作弊工具产业链成熟,包括IP代理商,卡商猫池、打码平台、群控软件等。

5、游戏开发同学通常缺乏安全对抗经验,无法及时发现和阻断外挂的使用和传播。

谁在使用外挂?

    随着移动互联网的兴起,同时,手游行业制作外挂的成本低,导致更多的外挂制作者从PC纷纷向移动端转变,这就导致了手游外挂的泛滥。那么,究竟是哪些人会使用外挂呢?

第一类:虚荣心作祟的玩家。在游戏中,玩家们可以沙场驰骋、江湖侠情,在现实中失意的人们可以再游戏中得到慰藉,使得心灵愉悦。那么,如何才能花更少的钱,得到更大的心灵慰藉呢?唯有借助外挂的力量,可以在战场上杀更多的人,比分比别人高。 

第二类:打金工作室。对于打金工作室来说,游戏币的产量是直接关系到变现的。使用外挂可以自动化的执行游戏中的一些重复性劳动,比如固定的主线任务、跑商、押镖等。而且,在外挂的帮助下,可以24小时全程无人值守,大大提供游戏币的产出量。

第三类:竞争对手。通过对官方游戏逆向分析,竞争公司可以很容易的通过换肤等手段,制造一款玩法相近、界面类似的新游戏;另外,竞争对手还会使用外挂批量注册小号,来破坏游戏的正常运营。

通用的检测和防御机制

游戏外挂的实现方式多样,危害也都各不相同,那么游戏厂商又该如何对不同种类的外挂做针对性的防护呢? 

第一步:客户端APP的防护。客户端在外发之后,最终到了正常玩家手里还是黑产手里,这块是不可控的,那么如何提高黑客分析客户端代码的成本,保护端上代码的安全是头等大事。我们可以对游戏脚本进行加密处理,对于解密游戏脚本的核心代码逻辑进行代码混淆、加固,反外挂从提升攻防门槛开始,一个保护机制相对完善的客户端,虽然不能杜绝外挂,但能在一定程度上将大部分跃跃欲试的黑客阻挡在外。

第二步:通信链路的防护。脱机外挂的产生,很大程度上是因为客户端APP和服务器端通信的签名算法、加密算法被破解了。采用常规加解密算法的变形算法,以及保护好核心秘钥至关重要,采用白盒加密不失为一种好的对策。

第三步:业务层及时防控。云端业务层通过实时的各种IP库、手机库的查询、人机模型算法以及离线的数据分析等。从服务器端及时发现和防控已知和未知的作弊方案,为业务及时止损。被黑客攻击并不可怕,可怕的是不知道被攻击,允许黑客一小段时间的作恶,换取绝大多数用户的安全,是业界通用的做法,快速发现问题并解决问题才是治理外挂的核心。

解决方案

    基于前面的介绍,手机游戏外挂的制作难度和成本极低,外挂的制作者又都是专业的黑产从业人员;另一方面,对于游戏厂商来说,普通游戏开发者一般都更关注游戏功能逻辑的实现和开发,本身缺乏安全技术和游戏攻防对抗经验。因此,游戏厂商想要及时的发现并阻断外挂作恶相对来说比较困难,从投入产出比来看,成本也相对偏高。

    定制的解决方案研发和维护成本过高,但通用的又担心效果不好。是不是能有一个折中的方案呢?答案是肯定的。其实,攻防对抗是一个两军对垒人和人、人和机器博弈的过程,一下子把门槛提升太多是不合时宜的,就像一下子改一个大版本着急大不一样,这个是得不偿失的。利用前面提到的分层而治,就能取得一个比较好的事半功倍的效果。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • Hello World这是开发的一个开发魔咒,几乎所有人都是从这开始的,今天我也从魔咒开始先打印一份Hello W...
    cocoaAhda阅读 1,429评论 0 3
  • Golang是我最喜欢的一门语言,它简洁、高效、易学习、开发效率高、还可以编译成机器码… 虽然它一出世,就饱受关注...
    盘木阅读 3,540评论 0 7
  • 示例 包的概念、导入与可见性 包是结构化代码的一种方式:每个程序都由包(通常简称为 pkg)的概念组成,可以使用自...
    若与阅读 1,441评论 0 7
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 13,727评论 0 38
  • 七星和田大枣秀,然后就做了这款红枣糯米团:青汁口味、黑加仑口味、枸杞口味(本来还打算做更多口味️的、但时间紧迫...
    甘麻桂杏阅读 118评论 0 0