游戲安全手游安全技術(shù)入門pdf是一本移動游戲安全開山之作,由騰訊游戲研發(fā)部游戲安全中心全體人員編著。本書是一本充斥著大量的專業(yè)術(shù)語和專業(yè)知識的書籍,具備了技術(shù)暢銷書的各種品質(zhì),內(nèi)容全面、精辟、流暢、成熟,講解由淺入深,完美覆蓋手游安全基礎(chǔ)、外掛實(shí)現(xiàn)經(jīng)驗(yàn)、實(shí)戰(zhàn)代碼、案例和干貨,是學(xué)習(xí)手游安全技術(shù)入門的必讀圖書。
內(nèi)容介紹
《游戲安全 手游安全技術(shù)入門》是國內(nèi)移動游戲安全領(lǐng)域的開山之作,填補(bǔ)了移動游戲安全書籍的空白,揭開了移動游戲外掛的神秘面紗。隨著移動互聯(lián)網(wǎng)的日益普及,業(yè)內(nèi)對移動安全領(lǐng)域的專業(yè)人才的需求逐年增加,而該領(lǐng)域的專業(yè)人才相對匱乏,很多開發(fā)人員和有志于從事相關(guān)行業(yè)的在校學(xué)生等一直缺少相關(guān)的參考資料和書籍。作為移動安全領(lǐng)域的入門書籍,《游戲安全 手游安全技術(shù)入門》中(涵蓋了Android 和iOS兩大平臺)的游戲逆向分析和外掛技術(shù)為切入點(diǎn),詳細(xì)講述了手游安全領(lǐng)域的諸多基礎(chǔ)知識和技能,包括:移動端開發(fā)和調(diào)試環(huán)境搭建、典型的移動游戲特性、與外掛相關(guān)的安全開發(fā)技術(shù)、游戲和外掛的逆向分析方法、外掛開發(fā)實(shí)戰(zhàn)演練、游戲引擎逆向分析等內(nèi)容,書中的部分源代碼可免費(fèi)從網(wǎng)上下載。讀者在掌握本書的內(nèi)容之后,便可入門手游安全領(lǐng)域,同時可以很容易地將在本書中學(xué)到的知識擴(kuò)展至移動端的其他領(lǐng)域,例如:安全方案開發(fā)、病毒分析、軟件逆向及保護(hù)等。
本書可作為高等院校計(jì)算機(jī)安全相關(guān)專業(yè)的輔助教材,也可供移動端安全技術(shù)人員、游戲開發(fā)人員,以及有志于從事游戲安全相關(guān)工作的學(xué)生等參考。
《游戲安全 手游安全技術(shù)入門》內(nèi)容導(dǎo)讀
第 1 篇概述篇(第 1~3 章)
概述篇首先介紹了手游面臨的安全風(fēng)險;然后講解了什么是外掛,并對常見的外掛進(jìn)行分類和介紹;最后匯總了手游外掛涉及的安全技術(shù)。
第 2 篇環(huán)境搭建篇(第 4~6 章)
環(huán)境搭建篇首先介紹了移動端開發(fā)環(huán)境的搭建過程,包括:Android 平臺開發(fā)環(huán)境搭建、iOS平臺非越獄和越獄開發(fā)環(huán)境搭建;然后介紹了調(diào)試環(huán)境的搭建過程,包括:Android 平臺IDA 調(diào)試環(huán)境搭建、iOS平臺32 位GDB 調(diào)試環(huán)境搭建、iOS平臺 64位lldb調(diào)試環(huán)境搭建;最后介紹了手游安全領(lǐng)域中常用工具的基本使用方法。
第 3 篇游戲基礎(chǔ)篇(第 7~9 章)
游戲基礎(chǔ)篇講解了入門手游安全所需掌握的游戲基礎(chǔ)知識,包括:游戲開發(fā)基礎(chǔ)知識、引擎的概念、常見引擎簡介、游戲漏洞概述及不同游戲類型的漏洞風(fēng)險分類。
第 4 篇逆向篇(第 10~11 章)
逆向篇從靜態(tài)分析和動態(tài)分析兩方面展開:靜態(tài)分析介紹了ARM 匯編的基礎(chǔ)知識、Android 平臺的ELF 文件格式、iOS平臺的Mach-O 文件格式及IDA 靜態(tài)分析;動態(tài)分析介紹了Android 平臺的IDA 動態(tài)調(diào)試、iOS平臺的GDB 和lldb動態(tài)調(diào)試。
第 5 篇開發(fā)篇(第 12~17 章)
開發(fā)篇剖析了在手游外掛開發(fā)過程中涉及的安全技術(shù)的實(shí)現(xiàn)原理,并提供代碼配合講解,干貨十足。其中剖析的安全技術(shù)包括:注入、Hook、內(nèi)存篡改、進(jìn)程信息獲取及反調(diào)試。
第 6 篇實(shí)戰(zhàn)篇(第 18~21 章)
實(shí)戰(zhàn)篇首先講解了不同類型的游戲的分析和破解方法,并且通過實(shí)例剖析了各種類型的游戲的分析方法;其次通過實(shí)例講解了手游外掛的分析過程;然后以《2048》游戲?yàn)閷?shí)例,對游戲通關(guān)功能進(jìn)行了分析,并對快速通關(guān)的作弊功能進(jìn)行了實(shí)現(xiàn);最后講解了Unity 3D 引擎的逆向分析,包括:Unity 3D 引擎在iOS和Android 平臺下邏輯代碼的編譯處理原理、Unity 3D 引擎的AssetBundle機(jī)制的實(shí)現(xiàn)原理及《天天來戰(zhàn)》游戲的AB 包破解過程。
章節(jié)目錄
第 1 篇概述篇 1
第1 章手游面臨的安全風(fēng)險 2
1.1 靜態(tài)修改文件 3
1.1.1 修改游戲資源 3
1.1.2 修改代碼 4
1.1.3 修改配置 4
1.2 動態(tài)篡改邏輯 4
1.2.1 修改代碼 5
1.2.2 修改數(shù)據(jù) 6
1.3 游戲協(xié)議 6
1.3.1 篡改游戲協(xié)議 6
1.3.2 重發(fā)游戲協(xié)議 7
1.4 游戲盜號 7
1.5 惡意發(fā)言 8
1.6 工作室 8
1.7 小結(jié) 8
第 2 章外掛的定義、分類及實(shí)現(xiàn)原理 9
2.1 外掛的定義 9
2.2 外掛的分類 10
2.2.1 輔助版外掛 10
2.2.2 破解版外掛 15
2.3 外掛的實(shí)現(xiàn)原理 15
2.3.1 輔助版外掛的實(shí)現(xiàn)原理 16
2.3.2 破解版外掛的實(shí)現(xiàn)原理 17
2.4 小結(jié) 18
第 3 章手游外掛技術(shù)匯總 19
3.1 ARM 匯編 19
3.2 C、C++語言 19
3.3 Android 開發(fā) 20
3.4 iOS開發(fā) 20
3.5 了解常用的游戲引擎 20
3.6 靜態(tài)分析(IDA 分析) 21
3.7 動態(tài)分析(Android、iOS調(diào)試) 21
3.8 有必要了解的其他編程語言 21
3.9 靜態(tài)修改 22
3.10 動態(tài)修改 22
3.11 小結(jié) 22
第 2 篇環(huán)境搭建篇 23
第4 章開發(fā)環(huán)境搭建 24
4.1 Android 開發(fā)環(huán)境搭建 24
4.1.1 Cygwin 環(huán)境搭建 24
4.1.2 Eclipse 環(huán)境搭建 27
4.1.3 Android 平臺的Native 程序編寫 29
4.1.4 Android Native 程序的NDK 編譯 30
4.1.5 Android Native 程序的加載運(yùn)行 30
4.2 iOSXcode開發(fā)環(huán)境搭建 31
4.2.1 下載Xcode 31
4.2.2 真機(jī)部署 32
4.3 iOS越獄開發(fā)環(huán)境搭建 33
4.3.1 Theos越獄開發(fā)環(huán)境搭建 34
4.3.2 iOSOpenDev下載與安裝 35
4.3.3 如何創(chuàng)建和編譯iOS動態(tài)庫文件 36
4.3.4 如何加載、運(yùn)行iOS動態(tài)庫 37
4.4 小結(jié) 38
第 5 章調(diào)試環(huán)境搭建 39
5.1 Android 平臺調(diào)試環(huán)境的搭建 39
5.2 iOS 32 位調(diào)試環(huán)境的搭建 41
5.2.1 軟件安裝 41
5.2.2 iOS 32 位程序的調(diào)試 42
5.3 iOS 64 位程序調(diào)試環(huán)境的搭建 44
5.3.1 iPhone 設(shè)備的CPU 類型介紹 44
5.3.2 lldb環(huán)境搭建 45
5.3.3 lldb調(diào)試介紹 46
5.4 小結(jié) 48
第 6 章工具匯總與使用 49
6.1 IDA Pro 49
6.1.1 用IDA 加載可執(zhí)行文件 50
6.1.2 用IDA 分析可執(zhí)行文件 52
6.1.3 IDA 功能界面 54
6.2 APKTool工具 61
6.2.1 反編譯APK 文件 62
6.2.2 重打包APK 文件 63
6.3 ILSpy工具 64
6.3.1 加載文件 64
6.3.2 保存反編譯代碼 65
6.4 MachOView工具 66
6.4.1 加載Mach-O 文件 67
6.4.2 文件頭信息 68
6.4.3 加密信息獲取 69
6.5 MobileSubStrate工具組件 70
6.5.1 MobileHooker 71
6.5.2 MobileLoader 71
6.5.3 Safe Mode 72
6.6 小結(jié) 72
第 3 篇游戲基礎(chǔ)篇 73
第7 章手游開發(fā)基礎(chǔ)概述 74
7.1 游戲玩法與分類 74
7.1.1 MMORPG 類游戲 75
7.1.2 FPS 類游戲 77
7.1.3 ARPG 類游戲 78
7.1.4 卡牌類游戲 79
7.1.5 RTS 類游戲 79
7.1.6 消除類游戲 80
7.1.7 MOBA 類游戲 81
7.1.8 跑酷類游戲 81
7.2 游戲系統(tǒng)及開發(fā)的相關(guān)概念 82
7.2.1 手游系統(tǒng)的組成 82
7.2.2 手游開發(fā)語言 88
7.2.3 手游網(wǎng)絡(luò)模式 88
7.3 小結(jié) 89
第 8 章游戲引擎的基本概念及常見引擎介紹 90
8.1 什么是游戲引擎 90
8.2 游戲引擎子系統(tǒng) 91
8.2.1 渲染系統(tǒng) 91
8.2.2 音頻系統(tǒng) 92
8.2.3 物理系統(tǒng) 93
8.2.4 人工智能 93
8.3 常用手游引擎 94
8.3.1 Cocos2D 引擎 94
8.3.2 Unity 3D 引擎 95
8.4 小結(jié) 96
第 9 章游戲漏洞概述 97
9.1 游戲安全漏洞的基本概念 97
9.1.1 游戲邏輯漏洞 98
9.1.2 游戲協(xié)議穩(wěn)定型漏洞 98
9.1.3 游戲服務(wù)端校驗(yàn)疏忽型漏洞 99
9.2 游戲漏洞風(fēng)險點(diǎn)分類 99
9.2.1 手游常見類型 99
9.2.2 手游風(fēng)險 100
9.3 小結(jié) 104
第 4 篇逆向篇 105
第10 章靜態(tài)分析 106
10.1 ARM 反匯編速成 106
10.1.1 ARM 體系簡介 106
10.1.2 ARM 指令樣例解析 107
10.1.3 Thumb 指令簡述 110
10.1.4 函數(shù)傳參 111
10.1.5 浮點(diǎn)數(shù)基礎(chǔ) 111
10.2 Android 平臺的ELF 文件格式 113
10.2.1 文件頭信息 114
10.2.2 程序頭信息 115
10.2.3 節(jié)表頭信息 117
10.3 iOS平臺的Mach-O 文件格式 118
10.3.1 文件頭格式 119
10.3.2 Load Command 信息 121
10.4 IDA 靜態(tài)分析 123
10.4.1 IDA 啟動及加載文件 123
10.4.2 IDA 靜態(tài)分析主界面及窗口 124
10.4.3 用IDA 保存靜態(tài)分析結(jié)果 128
10.4.4 IDA 靜態(tài)分析的常用功能及快捷鍵 129
10.5 小結(jié) 132
第 11 章動態(tài)分析 133
11.1 Android 平臺的IDA 動態(tài)調(diào)試 133
11.1.1 啟動IDA 調(diào)試器 133
11.1.2 加載Android 原生動態(tài)鏈接庫 135
11.1.3 動態(tài)調(diào)試主界面 138
11.1.4 IDA 動態(tài)調(diào)試斷點(diǎn)和腳本功能 139
11.1.5 IDA 動態(tài)調(diào)試修改數(shù)據(jù)功能 141
11.1.6 用IDA 調(diào)試器修改代碼 143
11.2 iOS平臺中的GDB 動態(tài)調(diào)試 144
11.2.1 用GDB 加載調(diào)試程序 144
11.2.2 GDB 常用的調(diào)試功能 146
11.3 iOS平臺的lldb動態(tài)調(diào)試 151
11.3.1 用lldb加載調(diào)試程序 151
11.3.2 lldb的調(diào)試功能 154
11.3.3 其他功能 157
11.4 小結(jié) 158
第 5 篇開發(fā)篇 159
第12 章定制化外掛開發(fā)流程 160
12.1 什么是定制化外掛 160
12.2 定制化外掛開發(fā)的基礎(chǔ)流程 161
12.3 定制化外掛開發(fā)各環(huán)節(jié)介紹 161
12.3.1 逆向分析游戲邏輯 162
12.3.2 驗(yàn)證外掛功能是否可行 162
12.3.3 注入游戲進(jìn)程 163
12.3.4 枚舉游戲進(jìn)程模塊 163
12.3.5 Hook 關(guān)鍵函數(shù) 163
12.3.6 游戲內(nèi)存數(shù)據(jù)修改 164
12.3.7 反調(diào)試功能 164
12.4 小結(jié) 165
第 13 章注入技術(shù)的實(shí)現(xiàn)原理 166
13.1 什么是進(jìn)程注入技術(shù) 166
13.2 Android 平臺下ptrace注入技術(shù)的實(shí)現(xiàn) 167
13.2.1 ptrace函數(shù)介紹 167
13.2.2 ptrace注入進(jìn)程流程 168
13.2.3 ptrace注入的實(shí)現(xiàn) 169
13.2.4 ptrace注入實(shí)例測試 173
13.3 Android 平臺下Zygote 注入技術(shù)的實(shí)現(xiàn) 174
13.3.1 Zygote 注入技術(shù)的原理 174
13.3.2 Zygote 注入技術(shù)的實(shí)現(xiàn)流程 174
13.3.3 Zygote 注入器的實(shí)現(xiàn)方式 175
13.3.4 注入Zygote 的模塊功能實(shí)現(xiàn) 182
13.3.5 Zygote 注入實(shí)例測試 182
13.4 Android 平臺感染ELF 文件的注入技術(shù)實(shí)現(xiàn) 184
13.4.1 ELF 文件的格式 185
13.4.2 感染ELF 文件的注入實(shí)現(xiàn)原理 186
13.4.3 感染ELF 文件的注入實(shí)現(xiàn)過程 187
13.4.4 感染ELF 文件的注入實(shí)例分析 188
13.4.5 感染ELF 文件的注入編程實(shí)現(xiàn) 192
13.4.6 感染ELF 文件的注入實(shí)例測試 194
13.5 iOS平臺越獄環(huán)境的注入實(shí)現(xiàn) 195
13.5.1 利用Theos環(huán)境創(chuàng)建注入工程 195
13.5.2 工程文件說明 196
13.5.3 編譯和安裝 200
13.5.4 iOS注入原理介紹 202
13.6 小結(jié) 203
第 14 章 Hook 技術(shù)的實(shí)現(xiàn)原理 205
14.1 Hook 技術(shù)簡介 205
14.2 Android 平臺基于異常的Hook 實(shí)現(xiàn) 206
14.2.1 基于異常Hook 的實(shí)現(xiàn)原理 206
14.2.2 Android 平臺基于異常Hook 的實(shí)現(xiàn)流程 207
14.2.3 基于異常Hook 的實(shí)現(xiàn)代碼 208
14.2.4 基于異常Hook 的實(shí)例測試 212
14.3 Android 平臺的Inline Hook 實(shí)現(xiàn) 214
14.3.1 Inline Hook 的實(shí)現(xiàn)原理 214
14.3.2 Inline Hook 的實(shí)現(xiàn)流程 215
14.3.3 Inline Hook 的實(shí)現(xiàn)代碼 216
14.3.4 Inline Hook 的實(shí)例測試 220
14.4 Android 平臺下導(dǎo)入表Hook 的實(shí)現(xiàn) 224
14.4.1 導(dǎo)入表Hook 的實(shí)現(xiàn)原理 224
14.4.2 導(dǎo)入表Hook 的實(shí)現(xiàn)流程 224
14.4.3 導(dǎo)入表Hook 的實(shí)現(xiàn)代碼 225
14.4.4 Android 平臺下導(dǎo)入表Hook 的實(shí)例測試 229
14.5 小結(jié) 230
第 15 章游戲進(jìn)程的模塊信息獲取 231
15.1 Android 平臺進(jìn)程模塊的信息獲取 231
15.1.1 Android 內(nèi)存模塊遍歷的原理 232
15.1.2 Android 內(nèi)存模塊遍歷的實(shí)現(xiàn) 233
15.1.3 實(shí)例測試 236
15.2 iOS平臺進(jìn)程模塊信息的獲取 237
15.2.1 Dyld API 遍歷模塊的原理 237
15.2.2 Dyld API 遍歷模塊實(shí)現(xiàn) 239
15.2.3 通過內(nèi)存遍歷法獲取模塊的原理 239
15.2.4 通過內(nèi)存遍歷法獲取模塊信息的實(shí)現(xiàn) 241
15.2.5 實(shí)例測試 247
15.3 小結(jié) 249
第 16 章篡改游戲內(nèi)容的實(shí)現(xiàn)原理 250
16.1 游戲內(nèi)容讀寫方式分類 250
16.2 非注入式篡改 251
16.2.1 篡改APK 安裝包 251
16.2.2 篡改游戲的安裝目錄文件 253
16.2.3 篡改“/proc/”目錄文件 253
16.3 注入式篡改 258
16.3.1 篡改內(nèi)存數(shù)據(jù) 259
16.3.2 篡改邏輯代碼 259
16.3.3 注入式篡改代碼實(shí)例講解 260
16.4 小結(jié) 263
第 17 章反調(diào)試技術(shù) 264
17.1 Android 平臺的常規(guī)反調(diào)試技術(shù) 264
17.1.1 Android 平臺的Self-Debugging 反調(diào)試方案 265
17.1.2 Android 平臺的輪詢檢測反調(diào)試方案 268
17.1.3 Android 平臺Java 層的反調(diào)試技術(shù) 270
17.2 iOS平臺的反調(diào)試技術(shù) 270
17.2.1 iOS平臺拒絕被附加反調(diào)試方案 271
17.2.2 iOS平臺的輪詢檢測反調(diào)試方案 272
17.3 小結(jié) 273
第 6 篇實(shí)戰(zhàn)篇 275
第18 章游戲逆向分析實(shí)戰(zhàn)篇 276
18.1 C++游戲分析實(shí)戰(zhàn)篇 276
18.1.1 C++游戲識別 277
18.1.2 C++基礎(chǔ) 278
18.1.3 C++游戲的逆向分析方法 279
18.1.4 C++游戲的破解思路 281
18.1.5 C++游戲逆向分析實(shí)戰(zhàn)篇——《雷霆戰(zhàn)機(jī)》無敵和秒殺功能分析 281
18.2 Unity 3D 游戲分析實(shí)戰(zhàn)篇 289
18.2.1 識別Unity 3D 游戲 289
18.2.2 Unity 3D 游戲的破解方法 290
18.2.3 Unity 3D 游戲分析涉及的工具 291
18.2.4 Unity 3D 游戲分析實(shí)戰(zhàn)篇——《星河戰(zhàn)神》的無限沖刺功能分析 292
18.3 Lua游戲分析實(shí)戰(zhàn) 295
18.3.1 識別Lua游戲 295
18.3.2 破解Lua游戲的方法 296
18.3.3 常用工具 298
18.3.4 Lua游戲?qū)崙?zhàn)——破解《疾風(fēng)獵人》的Lua代碼 298
18.3.5 Lua游戲分析實(shí)戰(zhàn)——破解《游龍英雄》的Lua代碼 300
18.4 小結(jié) 302
第 19 章外掛逆向分析實(shí)戰(zhàn)——《雷霆戰(zhàn)機(jī)》圈圈外掛分析 303
19.1 外掛整體分析 303
19.2 外掛注入功能分析 304
19.2.1 com.oozhushou-1.apk 文件分析 304
19.2.2 hhloader模塊分析 309
19.2.3 外掛注入的實(shí)現(xiàn)方式 311
19.3 外掛作弊功能分析 312
19.3.1 秒殺功能的實(shí)現(xiàn)分析 312
19.3.2 忽略傷害功能的實(shí)現(xiàn)分析 315
19.3.3 護(hù)盾延遲功能的實(shí)現(xiàn)分析 316
19.4 小結(jié) 317
第 20 章外掛開發(fā)實(shí)戰(zhàn)——《2048》手游快速通關(guān)功能分析及開發(fā) 318
20.1 游戲功能分析 318
20.1.1 功能可行性分析 318
20.1.2 游戲引擎的確認(rèn) 320
20.1.3 關(guān)鍵邏輯的逆向分析 320
20.2 外掛功能的實(shí)現(xiàn) 326
20.2.1 實(shí)現(xiàn)思路 326
20.2.2 實(shí)現(xiàn)原理 327
20.2.3 實(shí)現(xiàn)流程 327
20.2.4 實(shí)現(xiàn)代碼 328
20.3 測試結(jié)果 329
20.4 小結(jié) 330
第 21 章Unity3D 引擎逆向分析 332
21.1 Unity 3D 引擎概述 332
21.2 Android 平臺Unity 3D 引擎的Mono 機(jī)制分析 333
21.2.1 Mono 介紹 333
21.2.2 Mono 主框架的執(zhí)行流程 334
21.2.3 C#函數(shù)調(diào)用的執(zhí)行過程 335
21.3 iOS平臺的Unity 3D 引擎IL2CPP 機(jī)制分析 338
21.3.1 IL2CPP 機(jī)制生成代碼的對比 338
21.3.2 逆向分析IL2CPP 機(jī)制中C#函數(shù)的調(diào)用方式 342
21.3.3 Unity 3D 引擎的IL2CPP 機(jī)制安全性分析 347
21.4 Unity 3D 引擎AB 機(jī)制分析及《天天來戰(zhàn)》AB 包還原 349
21.4.1 Unity 3D 的AB 打包實(shí)現(xiàn) 349
21.4.2 C#腳本的AB 包加載及運(yùn)行過程 351
21.4.3 《天天來戰(zhàn)》游戲的AB 包處理方式分析及還原 352
21.5 小結(jié) 358
免責(zé)聲明:
來源于網(wǎng)絡(luò),僅用于分享知識,學(xué)習(xí)和交流!請下載完在24小時內(nèi)刪除。
禁用于商業(yè)用途!請購買正版,謝謝合作。
使用說明
1、下載并解壓,得出pdf文件
2、如果在電腦上打不開pdf文件,別著急,那么您需要先在電腦上下載一個pdf閱讀軟件
3、有pdf閱讀文件直接雙擊即可打開pdf文件
- 下載地址
發(fā)表評論
0條評論軟件排行榜
熱門推薦
- 得間免費(fèi)小說電腦版 v5.3.0.372.58M / 簡體中文
- 南方Plus電腦版 v11.9.026.47M / 簡體中文
- 開源閱讀電腦版 v3.2517.96M / 簡體中文
- 京東讀書電腦版 v1.13.4官方版1.98M / 簡體中文
- 瀟湘書院電腦版 v2.3.11.888官方版49.65M / 簡體中文
- 數(shù)據(jù)挖掘?qū)д?官方版61.61M / 簡體中文
- 吉利博瑞用戶手冊 pdf高清版57.89M / 簡體中文
- PHP語言精粹電子書 pdf掃描版25.72M / 簡體中文
- linux常用命令大全 chm版1.48M / 簡體中文
- 本草綱目 5.34M / 簡體中文