注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)程序設(shè)計(jì)綜合iOS應(yīng)用逆向工程:分析與實(shí)戰(zhàn)

iOS應(yīng)用逆向工程:分析與實(shí)戰(zhàn)

iOS應(yīng)用逆向工程:分析與實(shí)戰(zhàn)

定 價(jià):¥69.00

作 者: 沙梓社,吳航,劉瑾 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 信息安全技術(shù)叢書
標(biāo) 簽: 編程語言與程序設(shè)計(jì) 計(jì)算機(jī)與互聯(lián)網(wǎng)

ISBN: 9787111450726 出版時(shí)間: 2014-01-01 包裝: 平裝
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《信息安全技術(shù)叢書·iOS應(yīng)用逆向工程:分析與實(shí)戰(zhàn)》是iOS應(yīng)用逆向工程方面的權(quán)威著作,三位作者都是iOS領(lǐng)域內(nèi)的專家,擁有扎實(shí)的理論知識(shí)和豐富的實(shí)踐經(jīng)驗(yàn)。本書內(nèi)容以工具+代碼的形式全面、系統(tǒng)地展開知識(shí)點(diǎn),由淺入深,圖文并茂地帶著讀者一步步探索常規(guī)iOS App之外的世界。《信息安全技術(shù)叢書·iOS應(yīng)用逆向工程:分析與實(shí)戰(zhàn)》分為四大部分,分別是概念、工具、理論和實(shí)戰(zhàn)。前三部分介紹iOS逆向分析領(lǐng)域的背景、知識(shí)體系,以及相應(yīng)的工具集、理論知識(shí);第四部分則通過4個(gè)實(shí)際案例來將前面的知識(shí)以實(shí)戰(zhàn)的方式展開。第一部分為概念篇,簡(jiǎn)單介紹iOS逆向分析的概念以及iOS平臺(tái)系統(tǒng)架構(gòu)。第二部分為工具篇,介紹一系列基于Mac和iOS平臺(tái)的配套工具,并且重點(diǎn)講解其中的class-dump、Theos、Reveal、IDA、GDB等5個(gè)工具的使用方法,前3個(gè)側(cè)重于使用,后2個(gè)側(cè)重于分析。第三部分為理論篇,主要講述iOS逆向/越獄方向的進(jìn)階必備理論知識(shí)。第四部分為實(shí)戰(zhàn)篇,通過對(duì)3個(gè)App Store App及1個(gè)系統(tǒng)App進(jìn)行逆向分析的實(shí)戰(zhàn)操作,讓讀者能夠了解并同步實(shí)踐已掌握的知識(shí)。

作者簡(jiǎn)介

  沙梓社,吳航,劉瑾 著

圖書目錄

目 錄
推薦序一
推薦序二
自序
前言
第一部分 概念篇
第1 章  iOS 逆向工程簡(jiǎn)介 2
1.1  iOS 軟件逆向工程的要求 2
1.2  iOS 軟件逆向工程的作用 2
1.2.1  與安全相關(guān)的iOS 逆向工程 4
1.2.2  與開發(fā)相關(guān)的iOS 逆向工程 5
1.3  iOS 軟件逆向工程的一般過程 6
1.3.1  系統(tǒng)分析 7
1.3.2  代碼分析 7
1.4  iOS 軟件逆向工程用到的工具 8
1.4.1  監(jiān)測(cè)工具 8
1.4.2  開發(fā)工具 9
1.4.3  反編譯器 9
1.4.4  調(diào)試器 10
1.5  小結(jié) 11
第2 章 越獄iOS 平臺(tái)簡(jiǎn)介 12
2.1  iOS 系統(tǒng)架構(gòu) 12
2.1.1  iOS 目錄結(jié)構(gòu) 13
2.1.2  iOS 文件權(quán)限 15
2.2  iOS 程序類型 16
2.2.1  Application 16
2.2.2  Dynamic Library 19
2.2.3  Daemon 19
2.3  小結(jié) 20
第二部分 工具篇
第3 章 Mac 工具集 22
3.1  class-dump 22
3.1.1  class-dump 介紹及下載 22
3.1.2  class-dump 使用演示 23
3.1.3  關(guān)于class-dump 的補(bǔ)充說明 25
3.2  Theos 25
3.2.1  Theos 簡(jiǎn)介 25
3.2.2  Theos 安裝及編譯 26
3.2.3  Theos 用法簡(jiǎn)介 28
3.2.4  Theos 開發(fā)tweak 示例 47
3.3  Reveal 49
3.3.1  Reveal 簡(jiǎn)介 49
3.3.2  Reveal 安裝及功能擴(kuò)展 50
3.4  IDA 55
3.4.1  IDA 簡(jiǎn)介 55
3.4.2  IDA 使用說明 56
3.4.3  IDA 分析示例 65
3.5  其他工具 68
3.5.1  iTools 68
3.5.2  dyld_decache 69
3.5.3  MesaSQLite 69
3.6  小結(jié) 70
第4 章 iOS 工具集 71
4.1  SBSettings 71
4.2  MobileSubstrate 72
4.3  OpenSSH 73
4.4  GDB 74
4.4.1  GDB 簡(jiǎn)介 74
4.4.2  GDB 的使用說明 74
4.5  Cycript 85
4.6  其他常用工具 88
4.6.1  BigBoss RecommendedTools 88
4.6.2  AppCrackr 88
4.6.3  iFile 89
4.6.4  MobileTerminal 89
4.6.5  Vi IMproved 90
4.6.6  SQLite 90
4.6.7  top 91
4.6.8  syslogd 92
4.7  小結(jié) 92
第三部分 理論篇
第5 章  Objective-C 相關(guān)的iOS逆向理論基礎(chǔ) 94
5.1  tweak 的作用原理 94
5.1.1  Objective-C 語言的特性 94
5.1.2  MobileSubstrate 96
5.2  tweak 的編寫套路 97
5.2.1  靈感的來源 98
5.2.2  分析文件,尋找切入點(diǎn) 99
5.2.3  定位目標(biāo)函數(shù) 102
5.2.4  測(cè)試函數(shù)功能 104
5.2.5  解析函數(shù)參數(shù) 105
5.2.6  class-dump 的局限性 108
5.3  實(shí)例演示 108
5.3.1  得到靈感 108
5.3.2  分析文件 109
5.3.3  定位函數(shù) 115
5.3.4  測(cè)試函數(shù) 117
5.3.5  編寫實(shí)例代碼 117
5.4  小結(jié) 119
第6 章  ARM 匯編相關(guān)的iOS逆向理論基礎(chǔ) 120
6.1  ARM 匯編基礎(chǔ) 120
6.1.1  基本概念 121
6.1.2  ARM/THUMB 指令解讀 123
6.1.3  ARM 調(diào)用規(guī)則 129
6.2  在IDA 中分析目標(biāo)文件 131
6.2.1  分析函數(shù)實(shí)現(xiàn)細(xì)節(jié) 132
6.2.2  驗(yàn)證分析結(jié)果 139
6.3  在GDB 中分析目標(biāo)文件 142
6.3.1  跟蹤代碼執(zhí)行流程 142
6.3.2  動(dòng)態(tài)更改代碼 147
6.4  小結(jié) 157
第四部分 實(shí)戰(zhàn)篇
第7 章  實(shí)戰(zhàn)1:去除OPlayerLite 的廣告 160
7.1  OPlayer Lite 簡(jiǎn)介 160
7.2  分析源代碼結(jié)構(gòu),并定位廣告橫幅的代碼 161
7.2.1  class-dump 獲取.h 文件 161
7.2.2  猜測(cè)廣告橫幅的出現(xiàn)位置 161
7.2.3  分析PlayViewController.h 162
7.3  去除廣告橫幅,節(jié)省流量 167
7.3.1  找到“準(zhǔn)備”廣告的位置 167
7.3.2  追溯到網(wǎng)絡(luò)連接的起點(diǎn) 173
7.4  編寫調(diào)試代碼 175
7.4.1  編寫Tweak_OPlayerLite.xm 175
7.4.2  編輯control 176
7.4.3  編輯RemoveOPlayerAds.plist 176
7.4.4  編輯Makefile 177
7.4.5  編譯+ 打包 177
7.4.6  安裝 177
7.5  調(diào)試去廣告插件 177
7.6  代碼結(jié)果整理 178
7.7  小結(jié) 179
第8 章  實(shí)戰(zhàn)2:WhatsApp消息攔截 180
8.1  WhatsApp 簡(jiǎn)介 180
8.2  分析源代碼結(jié)構(gòu),并定位監(jiān)聽點(diǎn) 180
8.2.1  class-dump 獲取.h 文件 180
8.2.2  導(dǎo)入Xcode 182
8.2.3  找到WhatsAppAppDelegate 182
8.2.4  找到ChatManager 183
8.3  編寫調(diào)試代碼 184
8.3.1  分析函數(shù)列表 184
8.3.2  編寫Tweak_WhatsApp.xm 185
8.3.3  編輯control 186
8.3.4  編輯monitor.plist 186
8.3.5  編輯Makefile 186
8.3.6  編譯+打包 187
8.3.7  安裝 187
8.4  調(diào)試運(yùn)行監(jiān)聽插件 187
8.4.1  運(yùn)行WhatsApp,SSH 連接 187
8.4.2  發(fā)送/ 接收消息,監(jiān)控日志 188
8.4.3  保存數(shù)據(jù) 189
8.5  代碼結(jié)果整理 194
8.6  小結(jié) 195
第9 章  實(shí)戰(zhàn)3:Instagram 圖片保存 196
9.1  Instagram 簡(jiǎn)介 196
9.2  分析源代碼結(jié)構(gòu),并定位圖片展示點(diǎn) 196
9.2.1  用class-dump獲取.h 文件 196
9.2.2  導(dǎo)入Xcode 198
9.2.3  找到AppDelegate 198
9.2.4  注入Reveal 199
9.2.5  尋找圖片頁相關(guān)class 200
9.3  保存圖片 205
9.3.1  嘗試保存圖片 205
9.3.2  對(duì).h 文件進(jìn)行瘦身 206
9.3.3  編譯測(cè)試 208
9.4  彈出提示菜單 208
9.4.1  彈出菜單代碼 208
9.4.2  使用Theos 新增函數(shù) 210
9.4.3  使用runtime 新增函數(shù) 211
9.5  代碼結(jié)果整理 214
9.6  小結(jié) 215
第10 章 實(shí)戰(zhàn)4:iOS 電話操作 216
10.1  常用電話操作 216
10.2  分析源代碼結(jié)構(gòu),并定位電話操作的代碼 216
10.2.1  class-dump 獲取.h 文件 216
10.2.2  尋找撥打電話的函數(shù) 217
10.2.3  尋找接聽電話的函數(shù) 229
10.2.4  尋找掛斷電話的函數(shù) 234
10.2.5  尋找刪除通話記錄的函數(shù) 236
10.2.6  尋找攔截電話的方法 238
10.3  編寫調(diào)試代碼 250
10.3.1  編寫Tweak_PhoneOperation.xm 250
10.3.2  編輯control 254
10.3.3  編輯PhoneOperation.plist 255
10.3.4  編輯Makefile 255
10.3.5  編譯+ 打包+ 安裝 255
10.4  調(diào)試電話操作插件 255
10.5  代碼結(jié)果整理 257
10.6  小結(jié) 257
越獄開發(fā)一覽 258
沙箱逃脫 263
編寫tweak——新時(shí)代的hacking 265

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)