随着网络的普及,网络游戏得到了众多网民的青睐。但是,网络游戏的盛行,也给游戏玩家和游戏公司带来了很多安全问题,如木马盗号、外挂作弊等。对于正常的游戏玩家和游戏公司来说,外挂的危害尤其突出。因为一款免费的外挂,不仅可能携带游戏木马,还会影响游戏的平衡,甚至伤害其他玩家的感情。虽然很多游戏玩家和安全爱好者对外挂和反外挂技术有强烈的兴趣,但目前市面上很难找到一本能够深入浅出地讲解这部分知识的书。《游戏外挂攻防艺术》将带领读者走近外挂和反外挂技术这个神秘的领域,让读者了解外挂的制作过程、作弊过程以及反外挂检测技术,从而提升读者对游戏安全的认识。
《游戏外挂攻防艺术》是作者(徐胜)长期分析外挂软件和反外挂的经验所得,分5篇,共10章,包括游戏和外挂初识、外挂技术、游戏保护方案探索、射击游戏安全和外挂检测技术。本书内容循序渐进,层层解剖外挂涉及的一些关键技术,包括注入、隐藏、交互、Hook和Call函数等,让读者对外挂产生直观和深刻的认识,独创性的外挂分析和检测方法对安全从业者而言也有很好的借鉴意义。
第1篇 游戏和外挂初识篇
第1章 认识游戏和外挂 2
1.1 游戏安全现状 2
1.2 什么是外挂 3
1.3 内存挂与游戏的关系 3
1.4 游戏的3个核心概念 5
1.4.1 游戏资源的加/解密 5
1.4.2 游戏协议之发包模型 11
1.4.3 游戏内存对象布局 16
1.5 外挂的设计思路 24
1.6 反外挂的思路 25
1.7 本章小结 26
第2篇 外挂技术篇
第2章 五花八门的注入技术 28
2.1 注册表注入 28
2.2 远线程注入 29
2.3 依赖可信进程注入 32
2.4 APC注入 34
2.5 消息钩子注入 36
2.6 导入表注入 39
2.7 劫持进程创建注入 48
2.8 LSP劫持注入 50
2.8.1 编写LSP 52
2.8.2 安装LSP 56
2.9 输入法注入 60
2.10 ComRes注入 66
第3章 浅谈无模块化 67
3.1 LDR_MODULE隐藏 67
3.2 抹去PE“指纹” 74
3.3 本章小结 76
第4章 安全的交互通道 77
4.1 消息钩子 77
4.2 替代游戏消息处理过程 81
4.3 GetKeyState、GetAsyncKeyState和GetKeyBoard State 82
4.4 进程间通信 84
4.5 本章小结 89
第5章 未授权的Call 90
5.1 Call Stack检测 90
5.2 隐藏Call 90
5.2.1 Call自定义函数头 91
5.2.2 构建假栈帧 99
5.3 定位Call 107
5.3.1 虚函数差异调用定位Call 107
5.3.2 send() 函数回溯定位Call 110
5.4 本章小结 112
第6章 Hook大全 113
6.1 Hook技术简介 113
6.2 IAT Hook在全屏加速中的应用 115
6.3 巧妙的虚表Hook 121
6.3.1 虚表的内存布局 122
6.3.2 C++ 中的RTTI 123
6.3.3 Hook虚表 125
6.4 Detours Hook 128
6.4.1 Detours简介 128
6.4.2 Detours Hook的3个关键概念 128
6.4.3 Detours Hook的核心接口 130
6.4.4 Detours Hook引擎 132
6.5 高级Hook 147
6.5.1 S.E.H简介 147
6.5.2 V.E.H简介 148
6.5.3 硬件断点 150
6.5.4 S.E.H Hook 153
6.5.5 V.E.H Hook 156
6.5.6 检测V.E.H Hook 157
6.6 本章小结 159
第7章 应用层防护 160
7.1 静态保护 161
7.2 动态保护 165
7.2.1 反dump 165
7.2.2 内存访问异常Hook 169
7.3 本章小结 171
第3篇 游戏保护方案探索篇
第8章 探索游戏保护方案 174
8.1 分析工具介绍 174
8.1.1 GameSpider 174
8.1.2 Kernel Detective 178
8.2 定位保护模块 178
8.2.1 定位ring0保护模块 179
8.2.2 定位ring3保护模块 179
8.2.3 定位自加载模块 185
8.3 分析保护方案 187
8.3.1 ring3保护方案 187
8.3.2 ring0保护方案 189
8.4 本章小结 191
第4篇 射击游戏安全专题
第9章 射击游戏安全 194
9.1 自动开枪 194
9.1.1 易语言简介 195
9.1.2 易语言版自动开枪外挂 195
9.2 反后坐力 199
9.2.1 平衡Y轴法 199
9.2.2 AutoIt脚本法 200
9.3 DirectX Hack 203
9.3.1 DirectX简介 203
9.3.2 用Direct3D绘制图形 209
9.3.3 D3D9的Hack点 211
9.3.4 D3D9 Hook 214
9.4 本章小结 222
第5篇 外挂检测技术篇
第10章 外挂的检测方法 224
10.1 代码篡改检测 224
10.2 未授权调用检测 227
10.3 数据篡改检测 229
10.3.1 吸怪挂分析 229
10.3.2 线程转移和消息分流 230
10.4 本章小结 238
附录A 声明 239
附录B 中国计算机安全相关法律及规定 240
《夏七酱的水彩小世界》内容简介:水彩画是用水调和透明颜料作画的一种绘画方法,简称水彩。水彩画是一种很有趣的作画方式,难点在
《粗糙食堂2:一个人的幸福餐》内容简介:为什么一个人的生活总是被外卖或随便吃填满?因为一个人做饭太难了!不知道吃什么。不知道
智能材料是一种能感知外部刺激,能够判断并适当处理且本身可执行的新型功能材料。智能材料与智能结构有着巨大的潜在的应用前景,
《文化的江山01:文化中国的来源》内容简介:公元前4000—前2500年,彩陶和玉器时代,孕育出文化中国。8000年前的全新世大暖期开启
在通往“Java技术殿堂”的路上,本书将为你指点迷津!内容全部由Java编码的最佳实践组成,从语法、程序设计和架构、工具和框架、
《当大数据遇见物联网:智能决策解决之道》内容简介:本书详细阐述了与大数据、物联网、决策科学开发相关的基本解决方案,主要包括
本书的编写基于Malmö大学实体原型(PhysicalPrototyping)实验室的教学内容。PhysicalPrototyping实验室是最早建立Ardui...
《JavaScript+Vue.js web开发案例教程(在线实训版)》内容简介:随着互联网技术的不断发展,JavaScript语言及其相关技术越来越受人
《工业4.0背景下的两岸产业合作》内容简介:本书通过大量一手资料及数据,以工业4.0为背景探讨两岸产业合作,构建两岸产业合作研究
本书是《ACM图灵奖--计算机发展史的缩影》一书的姊妹篇。IEEE计算机先驱奖已经颁发了20届,共有108位计算机科学技术工作者获奖,
《独立董事制度的理论与实践》内容简介:独立董事制度在我国的发展逐渐成熟,其相关规则也日益完善。在这样的大背景下,独立董事制
共享经济对所在的整个行业的角度来说是一种思路的转变,会对其原有的经济模式形成冲击。共享经济的目的是共享,而提高效率是它的
大数据时代计算机数据处理技术探究 内容简介 随着科技的发展,在信息化的今天,大量数据呈爆发式的增长,对这些数据的处理,是一个非常大的挑战,所以必须对数据处理技术...
数据库基础与应用-Access 2010 本书特色 付兵主编的《数据库基础与应用:Access 2010》共10章,从数据库的基础理论开始,以“学生成绩管理”系...
《深入理解InfluxDB:时序数据库详解与实践》内容简介:时序数据库是一种新型技术,主要用于工业互联网软件建设中。近年来,伴随着
《智能机器人养成记》内容简介:本书中,作者先描述了人工智能的缺陷(一个关键的缺点是:它没有具象化),然后提出了一种制造类人机
小田圭二日本Oracle株式会社咨询部门经理。在解决性能问题方面有着丰富的经验,著有《图解OS、存储、网络:DB的内部机制》(絵で
《EOS实战与源码分析》内容简介:在区块链世界,区块链1.0时代是比特币,区块链2.0时代是以太坊,区块链3.0时代是EOS。EOS如同一个
BrandsAtoZ:是一套讲述富于独立性和创造性的品牌故事的丛书.本书详细探寻了每一个被选择品牌的历史,反映了其公司文化,并展示了其
Spring Framework2入门经典 本书特色 使用Java Enterprise Edition开发服务器端的应用程序町能会非常复杂费时。Spring...