《游戏安全——手游安全技术入门》读后知识点提炼

《游戏安全——手游安全技术入门》读后知识点提炼

@(读书)[外挂|手游]


[TOC]


前言

下文中有“[联想]”标志的,代表从知识点中的联想。

下文均为知识点提炼,所以不一定是书中原话。不提炼调试工具相关知识点。不提炼有关数据加密的知识点。至于Hook、游戏进程模块信息获取、反调试技术可以直接查书中相应的章节。

知识点

  • P3. 某飞机类游戏,删除一张敌机子弹资源图片,造成敌机无法发射子弹,从而实现了类似无敌的功能。
  • P4. 某跑酷游类戏,把简单关卡配置文件覆盖困难关卡配置文件实现游戏场景简单化。
  • P6. 在Android系统中,根据"/proc/<pid>/maps"文件遍历具有 r 标识的模块,然后通过读写"/proc/<pid>/mem"文件达到和注入式修改一样的效果。
  • P7. 服务端对接收数据没有处理好就直接转发给另一个客户端,很容易让恶意用户在协议中构造特殊数据,令其他客户端崩溃。[联想] 我能想到这么一种场景,服务端下发的数据中有其他客户端的IP,在这里将其他客户端称为目标客户端,恶意用户首先篡改发送给服务端的数据包,篡改后的数据包中的数据结构是客户端无法解析的非法数据,然后发送数据包时将发送IP更改为目标客户端的IP,那么服务端就会以为是目标客户端发送过来的请求,然后会将响应的数据发送给目标客户端,目标客户端接收到的数据中有恶意用户构造的非法数据,在解析非法数据时程序崩溃。
  • P17. 主流游戏加速器针对不同的引擎修改了不同Libc.so的相关函数,例如:gettimeofday、clock_getime。针对Libc.so模块的导出函数可以利用导入表Hook的方式。
  • P17. 按键精灵类:在Android上可通过Instrumentation接口的sendPointerSync函数实现;也可通过具备Root权限的驱动程序调用Runtime.getRuntime().exec()执行sendevent等命令。[联想] Getevent,这篇文章介绍了Android自带的getevent工具,该工具可以监控触摸屏的事件,对应的还有一个sendevent工具。
  • P17~P18. Cocos2D游戏代码逻辑保存在so中;Unity 3D游戏的C#脚本保存在/assets/bin/Data/Managed/Assembly-CSharp.dll中,可以通过ildasm等工具转换为IL代码进行修改操作;iOS平台代码都在App的bin文件中。
  • P76. MMORPG游戏通常是强服务器逻辑。
  • P77. FPS类游戏需要实时性很强,不可避免地要把许多逻辑放到本地。
  • P78~P79. ARPG相对于MMORPG而言更强调实时性,由于对实时性要求更高,ARPG游戏难免会把碰撞检测、血量、伤害等重要逻辑放到本地,以达到“即时”“爽快”的效果。
  • P79. 卡牌类游戏,不排除制作团队奖逻辑实现于本地客户端的情况。
  • P80. RTS类游戏对实时性要求不高,但不排除有些团队将其做成强本地逻辑架构。
  • P80. 消除类游戏逻辑简单,不排除制作方把许多逻辑放在本地。
  • P81. MOBA类游戏对实时性要求很高,但更重要的是要有公平性。根据这样的要求,游戏务必做成强服务器逻辑,否则无论本地保护做得多好,都有被攻破的风险。
  • P82. 跑酷类游戏一大特点在于角色与障碍物碰撞,碰撞对实时性的要求很高,碰撞逻辑一般只能放在本地,因此对碰撞的检测需要做一些服务器校验。
  • P88. 一般游戏PVE模式是弱联网的,PVP模式是强联网的。
  • P92. FPS游戏中经常遇到的透视外挂,它和渲染引擎的相关性较大。该类型外挂的核心都是关闭引擎的z-buffer,导致在墙壁等阻碍物后面的人物也能被渲染出来,从而实现透视外挂的效果。
  • P100~P104. 手游风险。
  • P254. 图16.3,Android "/proc"文件系统的文件信息。
  • P279. C++游戏的逆向分析方法。

转载于:https://my.oschina.net/ibuwai/blog/708655

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值