随着网络的普及,网络游戏得到了众多网民的青睐。但是,网络游戏的盛行,也给游戏玩家和游戏公司带来了很多安全问题,如木马盗号、外挂作弊等。对于正常的游戏玩家和游戏公司来说,外挂的危害尤其突出。因为一款免费的外挂,不仅可能携带游戏木马,还会影响游戏的平衡,甚至伤害其他玩家的感情。虽然很多游戏玩家和安全爱好者对外挂和反外挂技术有强烈的兴趣,但目前市面上很难找到一本能够深入浅出地讲解这部分知识的书。《游戏外挂攻防艺术》将带领读者走近外挂和反外挂技术这个神秘的领域,让读者了解外挂的制作过程、作弊过程以及反外挂检测技术,从而提升读者对游戏安全的认识。
《游戏外挂攻防艺术》是作者(徐胜)长期分析外挂软件和反外挂的经验所得,分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
ATheoryofFunforGameDesignisnotyourtypicalhow-tobook.Itfeaturesanovelwayofteachin...
《别无归处是归处:吴镇的“渔父”画题》内容简介:文人画,又称“士夫画”,它指具有“文人气”,即今人所谓“文人意识”的画。北
Fullofwriting,reports,andrecommendations,TheMonocleGuidetoBetterlivingisoriginal...
《中国知识产权管理系统协同发展研究》内容简介:本书在全面梳理和综述国内外关于知识产权管理的研究基础上,阐述中国知识产权发展
《你看起来好像……我爱你》内容简介:这是一本写给普通人了解AI的趣味科普,它还有超级可爱的漫画!这本书“非常易读、有料,而且
這是一趟有錢也買不到的日本設計之旅!本書直擊博報堂、SAMURAI等目前日本超夯的廣告設計公司,深入設計師們的工作現場,訪問當今
《中国目录学史》内容简介:本书是近代以来第一部以《中国目录学史》命名,全面、系统研究中国目录学发展历史的学术著作,是了解、
《Python编程做中学》内容简介:本书是一本零基础的Python编程入门书。全书介绍了Python的基本知识、条件语句、循环语句、列表、函
《蛙王历险记》内容简介:刚刚继位的林蛙国王哈利,铭记父王遗愿,尊崇上帝旨意,为人类严守森林,带领蛙兵同虫怪们日夜苦战,不料
《图灵的大教堂》内容简介:1936年,时年24岁的图灵宣称:“发明一台可用于计算任意可计算序列的单一机器是有可能的。”在《图灵的
数据结构和编程设计-应用C语言-(第二版)-(英文影印版) 本书特色 《数据结构和编程设计——应用c语言(第2版)》以c++为描述语言,系统介绍数据结构...
該年鑒屬日本字體設計協會(JapanTypograhyAssociation)官方出版物,本期版式及裝幀由南部俊安(ToshiyasuNanbu)設計,Grap...
《蜂鸟摄影学院新手学摄影(旅行篇)》内容简介:本书是蜂鸟网根据摄影初学者的要求和实际学习情况特意编写的一套学习教程中的旅行
本书主要介绍当前在高速公路通信工程中广泛使用的几类现代通信系统,如程控交换系统、光纤通信系统、移动通信系统等,对数据通信
《痛点》内容简介:互联网经济迅猛发展,大数据成为分析用户需求的一种惯性路径。世界首席品牌营销专家林斯特龙则指出,大数据连接
内容提要为加快我国电信发展的现代化步伐,必须尽可能采用高新电信技术和设备。与传统的PDH网相比,SDH网能更好地满足电信网朝着
《分配正义新论:人道与公平》内容简介:当今的分配正义理论主要是义务论的。这种义务论分配正义理论一方面或多或少受到康德伦理思
《正面管教》内容简介:不当的管教方式会影响孩子的一生,而有效的管教方式会有益孩子的一生。本书改变了传统的说教、批评、打骂、
“对于那些想要在PHP方面更进一步的开发者而言,此书必不可少。”——GabrielMalkas,Developpez.com“简而言之,这是我所读过的
中文版PHOTOSHOP CC艺术设计精粹案例教程 本书特色 精选实用案例剖析 分步教学 彩图演示 视频讲解,帮你彻底掌握PS平面设计精髓,轻松完成作品设计!6...