0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

手游要面临的安全风险你知道哪些?

电子工程师 来源:游戏安全实验室 作者:游戏安全实验室 2021-04-08 09:39 次阅读

随着智能手机的普及,市场的泛娱乐化,手游行业发展迅猛。手机游戏在整个游戏市场已经占了一定的江山。手游用户的增多,手游的安全性随之受到行业的重视。目前越来越多游戏面临各种各样的安全风险,如静态修改文件,动态修改游戏逻辑,篡改协议,游戏盗号,恶意发言,工作室等等,这些风险极大影响了游戏的平衡性和游戏的体验,对游戏及用户本身造成消极的影响。

下面将分类介绍这些各种的风险形式以及一些常用的实现方式。

1.1 静态修改文件

游戏文件被静态修改再重新打包签名是很典型的一种安全风险,通过这种方式,原本可能需要购买的游戏很可能就能直接玩,甚至在里面打广告,散播色情和恶意言论等等,损害了游戏开发方的利益;而另一方面游戏本身的一些逻辑被破坏,甚至被插入恶意代码,导致游戏出现安全风险,也损害了用户的利益。同时,也存在直接修改安装后的资源文件,代码文件,配置文件等等,直接影响游戏运行逻辑。下面将着重介绍这些手法及其实现方式。

1.1.1 修改资源

修改游戏资源的方式有很多种,但最终结果都是影响游戏逻辑。游戏如果被修改了游戏资源,那么原本游戏需要引用到的资源就会缺失,这样可能会导致整个调用该资源处理逻辑的链失效,从而导致游戏出现非正常的行为。

一般来说,可以尝试在游戏的资源目录替换或者删除一下资源文件,如图片或声音资源等,通过资源的修改,影响游戏的逻辑或者在游戏中做非法宣传等行为。

例如,某飞机类游戏的游戏目录里面存在img_bullet_enemy.png这么一个文件,如果尝试把这个文件删除掉,然后开启游戏,会发现其出现敌机无子弹的情况,而玩家的子弹依然可以用,那么这样就造成了一种无敌的情况,轻易通关。再者,通过非法破解并篡改游戏中的图片、声音或者视频资源,在里面加入自己需要宣传的广告,不单影响用户的体验,如果是欺诈类信息还会间接导致用户造成财产安全的损失,也影响了游戏的健康度。

1.1.2 修改代码

修改代码最直接的影响的是游戏逻辑,影响逻辑意味着影响游戏的平衡性,这种情况对其他的游戏玩家是不公平的,容易造成玩家的流失。

就手游来说,对于Native层存放游戏逻辑的游戏,恶意用户修改得比较多的还是只读数据段和代码段,只读数据段可能存放着一些对游戏有重要作用的数据,代码段包含了整个游戏的执行逻辑,合理地修改这些会造成一定的外挂功能,如无敌,秒怪,技能无CD等等,在此不一一列举。而对于一些核心代码是在游戏运行时加载编译的游戏来说,恶意用户甚至只需要通过对影响逻辑的核心文件简单地反编译得到源码般的逻辑后,修改并打包回去就能直接对游戏造成不良的影响。严重者造成非常恶劣的外挂影响游戏。

当然,做这些事情的前提是对游戏开发环境以及代码有一定的了解,但是随着游戏社区的普及,论坛介绍相关的游戏环境和知识的文章越来越多,恶意用户就有更多的渠道去获取相关的知识和基础。

1.1.3 修改配置

修改配置文件和修改资源文件有点类似,也可以理解为配置文件其实是资源文件的一种。一般游戏的配置文件在打包发布是加密的,一些不注重安全性的游戏很容易直接把未加密的配置文件发布到外网中,这样的话恶意用户能够轻易修改配置文件。如一些xml文件的修改,bin文件的替换等等。例如某些游戏的xml会保存着一些屏幕或者地图索引等信息,直接修改里面的数据后可能会出现一些未预料到表现。

举个例子,某跑酷类游戏修改其中的xml文件的屏幕大小配置选项会影响游戏主角速度;把原本简单关卡配置的bin文件复制N份重命名覆盖原来困难关卡的bin文件就形成了游戏场景简单化的效果,获取非法收益。诸如这样修改游戏配置的情况有很多,这些很大程度影响了游戏的平衡性,对游戏造成了不良的影响。

1.2 动态篡改逻辑

游戏除了被静态修改而面临风险外,还可能在运行时被动态修改,这种情况很常见。一般来说,常规的动态篡改逻辑都会伴随着注入和挂钩的操作。注入的方式大体分为两种,一种是通过注入zygote进程渗透到目标游戏进程中,另一种是直接注入到目标游戏进程中;而挂钩操作也有不同的种类,如GOT表Hook,inline Hook等,其目的是拦截游戏逻辑。另外,在一些系统中如安卓系统存在不注入程序而达到修改程序数据的效果,虽然这种方式比较简单,但却是目前影响游戏安全最大的一个因素之一。

下面分修改代码和修改数据两类简单介绍。

1.2.1 修改代码

手游中游戏与恶意外挂权限的不对等就很容易出现恶意外挂在已root的手机里面对游戏为所欲为,注入程序,挂钩代码,直接影响游戏的运行逻辑。

比如一个游戏在主角在玩副本打怪的过程中如果打怪的伤害计算函数在本地的客户端内,那么每一次主角打怪物就必定会调用伤害计算函数去处理怪物最终的减血量,如果这个时候一些恶意外挂程序注入到了游戏中,然后挂钩这个伤害的处理函数,在主角对怪物造成伤害的时候拦截住了伤害处理逻辑,感知当前伤害,并对这个伤害值放大数倍就会达到秒怪的效果。

除了上面描述的外,还存在另一种修改代码的方式,原理大同小异,就是注入后直接修改代码,这种方式和静态修改代码差不多,只不过这种方式是以动态的形式修改的,对于静态修改代码来说只不过是在内存动刀而已。

再拿伤害处理逻辑来说,如果游戏的实时pvp对战的伤害处理逻辑是在对方的客户端运算的,通俗来说就是你能不能打伤我,我说了算这种情况。恶意用户会想到直接不处理对方对自己造成伤害时的逻辑,这个时候如果逻辑模块用的是thumb指令且函数自身无返回值且调用该函数时保存了调用现场的话则只需在处理函数的头两个字节写上0x46F7即可(Arm指令的话则是0xE1A0F00E),因为这是一条返回指令。

1.2.2 修改数据

破坏游戏正常运行常见于通用修改器,如市场上出现的烧饼修改器,葫芦侠修改器等等,其修改数据主要是修改堆栈和全局变量等。因为游戏中可能存在未加密的类成员变量或者全局变量等等,所以如果通过内存的变化去定位出某个数据的具体位置还是很容易的。

这种修改可以是注入式的修改,也可以是非注入式的修改。在IOS系统里面目前都会先注入到程序然后修改里面数据,而在android系统中则可以根据/proc//maps文件遍历具有r标识的感兴趣的模块通过/proc//mem达到和注入式修改一样的效果。

1.3 游戏协议

游戏协议是游戏客户端和服务器交互的管道,是具体游戏协定的通信格式。通过协议,服务器可以知道客户端的游戏此刻处于什么状态,发送和请求什么数据等等。如果协议遭到分析破解,篡改和恶意重发,会给游戏甚至整个游戏服务器带来严重影响。游戏协议的修改可以从两方面来阐述,分别是篡改游戏协议和重发游戏协议,只要在网络层或者传输层拦截协议即可。所以游戏厂商至少会从两方面保护游戏协议,一个是做好协议字段的加密和哈希校验;另一个是对每条协议都要增加序号字段防止协议重发。

1.3.1 篡改游戏协议

篡改游戏协议的影响和游戏本身的设计方式相关性很大。因为一些游戏尽管篡改了协议对游戏的影响并不恶劣,主要是因为游戏初期设计的时候就设计成不信任客户端的数据。而一些重客户端逻辑的游戏因为服务器极度依赖客户端数据,服务器接收处理不得当或不经任何处理就直接转发协议到另一个客户端都会对游戏造成很大的影响。

这里有个真实案例,某游戏在副本结算协议里面存在一个字段,这个字段通过分析只有0和1两种状态,正常玩游戏结束如果失败了,这个字段会是0;如果游戏结束时是闯关成功的,那么这个字段则是1,。那这里我们可以简单的理解这个字段的意义为是否胜利。后面做的操作是在通关失败时拦截协议,篡改这个字段为1,会发现是有胜利收益的。这种情况篡改游戏协议是可行的,但更多是游戏本身的设计问题。

而如果服务器对介绍的数据没有处理好直接转发给另一个客户端,这样很容易让恶意用户在协议中构造特殊数据令其他客户端崩溃。比如某些游戏的pvp对战,如果可以令对方的客户端崩溃,那么恶意用户就可以直接获得胜利,赚取收益。

所以在游戏协议设计得当的基础上,服务器不要轻信客户端传过来的数据才能保证游戏的安全性。

1.3.2 重发游戏协议

重发游戏协议数据往往不是因为游戏侧协议内逻辑校验不够完善,而是由于协议内容字段不够丰富以及协议间耦合度不高而形成的。举一个比较易于理解的例子,某枪战类游戏在实时pvp对战中造成伤害时会发送伤害协议,恶意用户通过篡改游戏的伤害值这个方式试图改变对敌方的伤害,发现这个方法并没有效果。

因为游戏开发侧在服务器里面就设定了不信任客户端的伤害值,所以这种修改方式没什么作用。但是如果恶意用户在拦截到这种伤害协议时,复制该协议几份一并发送过去,那这个时候服务器就认为确实是造成了这么多次伤害,这样恶意用户就可以秒杀敌方玩家了。如果游戏侧增加一些时间,子弹数,命中源和目标位置等等字段,并且每次这种伤害协议的发送前会在前后有一些附带该协议信息的标识就不能简单地重发协议了。

1.4 游戏盗号

盗号的情况在游戏生存周期中是无法避免的问题,因为游戏账号是由人来托管的,游戏侧只能尽量减少盗号的发生。但是可能因为手游起步较晚以及手机大部分游戏的登陆都是直接授权登陆,手游盗号的情况与端游相比较少。出现盗号的情况可能是由于玩家通用的账号在其他地方泄露了,恶意使用者通过这个账号登陆进手游转移财产,这个是目前手游中盗号可能性最大的一种情景。另一方面,也因为手游中能够进行财产转移的游戏也是很少的,这也是游戏盗号在手游中不常见的原因之一。

而一旦手游发生盗号,游戏平台的安全性也容易受到质疑,很可能会导致用户流失,这也是游戏开发方需要重视的问题。

1.5 恶意发言

现在越来越多的游戏系统中存在大厅或者游戏内聊天的功能。这个时候就会出现一些恶意用户进行恶意发言,比如散播广告,谣言,诈骗,黄赌毒等信息,利用用户的心理诱导正常用户,极大影响了游戏的健康度,对用户和游戏造成不良影响。

据不完全统计,恶意发言影响的群体大多数是刚刚入门玩游戏的用户,这些用户更容易受到游戏中恶意发言的吸引,比如一些低价购买钻石的信息,如“1元购买100w钻,联系方式XXXX”等诈骗信息。随着游戏的活跃量上涨,一些看起来微不足道不足以让人相信的信息也会影响一大部分用户的,保障这部分用户的利益,也是游戏开发方所需要考虑的问题。

1.6 工作室

与端游一样,手游中工作室建立的目的也是为了从游戏中赚取非法收益。一般工作室会购置大量的机器,并且通过辅助插件,外挂等工具以及多开的方式刷取高品质账号出售;如果手游中有转移财产的手段,也有的工作室会把众多小号的财产批量集中转移到某个账号上面出售。工作室这些行为不仅非法赚取利益,而且很容易扰乱游戏的经济系统,对游戏经济平衡性造成了较大危害。一旦经济系统失衡,用户在游戏投入金钱获得的物品就容易贬值,所以对工作室的打击无论用户自身还是游戏开发方也是有好处的。

1.7 小结

本文介绍了手游面临的安全风险,每种风险的利用方式以及这些风险产生的危害,旨在让读者了解手游当前手游面临的安全问题及其严重性,并倡导大家共同维系健康的游戏环境。

原文链接:https://gslab.qq.com/portal.php?mod=view&aid=95

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 智能手机
    +关注

    关注

    66

    文章

    18429

    浏览量

    179808
  • iOS
    iOS
    +关注

    关注

    8

    文章

    3393

    浏览量

    150428
  • 手游
    +关注

    关注

    0

    文章

    12

    浏览量

    2840
收藏 人收藏

    评论

    相关推荐

    安全政策遭质疑 OpenAI解散AGI团队

    技术,很多AI企业在安全政策上持续加大投入;但是OpenAI似乎在退步?要知道AI技术如果不加以控制可能会带来灾难性的后果。若缺乏有效的监管与规划,AGI的进展将面临更多的不确定性与风险
    的头像 发表于 10-25 11:19 452次阅读

    IP风险画像如何维护网络安全

    在当今数字化时代,互联网已成为我们生活、工作不可或缺的一部分。然而,随着网络应用的日益广泛,网络安全问题也日益凸显。为了有效应对网络安全挑战,IP风险画像技术应运而生,正逐步成为构建网络安全
    的头像 发表于 09-04 14:43 250次阅读

    【《软件开发珠玑》阅读体验】居安思危之风险

    就是认为已经考虑周全,而实际被遗漏的东西。 本书中定义的风险是未发生的潜在问题。 所有项目都有风险,因为它们是不确定性程度各异的独特性工作。 2.识别风险 项目团队应努力识别和评估
    发表于 07-09 12:48

    NFC风险无忧,安全使用

    是否安全可靠呢?NFC风险如何呢?今天,我们就来聊聊NFC技术的安全无隐患之处。 首先,我们明白NFC技术的工作原理。简单来说,NFC技术就像是一种无线的“握手”方式,它允许两个设备
    的头像 发表于 07-08 10:53 653次阅读

    NFC风险安全性:揭示NFC技术高安全性的真相

    在数字化日益普及的今天,NFC(近场通信)技术因其便捷性和高效性而被广泛应用。然而,当提及NFC时,一些人可能会联想到潜在的风险。本文将深入探讨NFC风险,并强调其高安全性的特性,揭示NFC技术在
    的头像 发表于 06-29 13:03 1080次阅读

    NFC风险如何?安全便捷,风险无忧

    随着科技的飞速发展,NFC(近场通信)技术已逐渐融入我们的日常生活,从移动支付到门禁系统,再到数据传输,nfc技术都展现了其独特的魅力。然而,正如任何新技术一样,nfc也面临着一些安全和隐私
    的头像 发表于 06-28 15:35 655次阅读

    NFC风险:了解与防范,享受安全便捷的科技生活

    技术一样,NFC也面临着一些潜在的风险。了解这些风险并采取相应的防范措施,不仅能让我们更好地享受科技带来的便利,还能确保我们的信息安全。 一、NFC技术的优势 NFC技术通过无线射频识
    的头像 发表于 06-25 15:31 893次阅读

    如果填报电子专业,这些问题最好提前知道(附院校排名名单)

    2024年全国高考报名人数达到1342万人,比去年增加51万人,报名人数再创历史新高。据悉,6月25日左右开始,全国各省市将陆续公布高考成绩及各批次分数线。分数出来,很快就要开始填报志愿了。如果
    的头像 发表于 06-22 08:11 258次阅读
    如果<b class='flag-5'>你</b><b class='flag-5'>要</b>填报电子专业,这些问题最好提前<b class='flag-5'>知道</b>(附院校排名名单)

    煤矿安全风险监测预警系统

    智慧华盛恒辉煤矿安全风险监测预警系统是一个集成了云计算、移动互联网、物联网和人工智能技术的综合性系统。该系统旨在通过实时监测和预警煤矿生产过程中的安全风险,提高煤矿的
    的头像 发表于 06-18 10:16 687次阅读

    危机四伏,2024如何开展网络安全风险分析

    是否考虑过,企业网络上所用到的每台设备,小到电脑、平板、电话、路由器,大到打印机、服务器,都可能潜藏网络安全风险,威胁企业的信息安全和业务?部门企业的业务开展所赖以支撑的物联网设备或
    的头像 发表于 04-19 08:04 911次阅读
    危机四伏,2024如何开展网络<b class='flag-5'>安全</b><b class='flag-5'>风险</b>分析

    知道激光钻孔技术有多牛吗?看完这篇文章就明白了

    知道激光钻孔技术有多牛吗?看完这篇文章就明白了
    的头像 发表于 02-29 17:09 864次阅读

    搬运机械连接“搭子”哪家选?YM系列工业级连接器真搭

    机械主要用于工业、仓储等场合中,面临到外部环境影响的风险系数更高,因而要保障供电的电源连接更可靠安全,需要环境耐受性更好的工业级连接器。凌科电气的YM系列工业级电
    的头像 发表于 02-19 14:03 455次阅读
    搬运机械<b class='flag-5'>手</b>连接“搭子”哪家选?YM系列工业级连接器真搭

    如何使用PSoC 61进行安全启动?

    我们知道所有关于安全启动的文档都是基于 PSoC 62、63 或 64 的。 因为安全启动机制包括 M0+ 和 M4。 我们想知道如何使用 PSoC 61 进行
    发表于 01-30 07:51

    蓝牙模块安全指南:保护的设备和数据

    随着蓝牙技术在各个领域的广泛应用,设备之间的无线连接变得越来越普遍。然而,与此同时,蓝牙连接也面临着潜在的安全风险。本文将为提供一份蓝牙模块安全
    的头像 发表于 12-14 16:14 643次阅读

    刚刚,安全风险综合监测预警平台建设指南(2023 版)》正式发布,汉威科技方案领跑行业

    11月24日,国务院安委会办公室印发《城市安全风险综合监测预警平台建设指南(2023版)》(以下简称“指南”),引发行业密切关注。 据悉,“指南”在总结前期18 个试点城市(区)经验和存在
    的头像 发表于 11-27 11:35 983次阅读