《iOS應用逆向工程:分析與實戰》


《iOS應用逆向工程:分析與實戰》

基本信息

作者: 沙梓社    吳航    劉瑾   

叢書名: 信息安全技術叢書

出版社:機械工業出版社

ISBN:9787111450726

上架時間:2014-1-10

出版日期:2014 年1月

開本:16開

頁碼:1

版次:1-1

所屬分類:計算機

 

更多關於》》》 《iOS應用逆向工程:分析與實戰》

 

內容簡介

    書籍

    計算機書籍

  《ios應用逆向工程:分析與實戰》是ios應用逆向工程方面的權威著作,三位作者都是ios領域內的專家,擁有扎實的理論知識和豐富的實踐經驗。本書內容以工具+代碼的形式全面、系統地展開知識點,由淺入深,圖文並茂地帶着讀者一步步探索常規ios app之外的世界。

  《ios應用逆向工程:分析與實戰》分為四大部分,分別是概念、工具、理論和實戰。前三部分介紹ios逆向分析領域的背景、知識體系,以及相應的工具集、理論知識;第四部分則通過4個實際案例來將前面的知識以實戰的方式展開。第一部分為概念篇,簡單介紹ios逆向分析的概念以及ios平台系統架構。第二部分為工具篇,介紹一系列基於mac和ios平台的配套工具,並且重點講解其中的class-dump、theos、reveal、ida、gdb等5個工具的使用方法,前3個側重於使用,后2個側重於分析。第三部分為理論篇,主要講述ios逆向/越獄方向的進階必備理論知識。第四部分為實戰篇,通過對3個app store app及1個系統app進行逆向分析的實戰操作,讓讀者能夠了解並同步實踐已掌握的知識。

 

目錄

《ios應用逆向工程:分析與實戰》

推薦序一

推薦序二

自序

前言

第一部分 概念篇

第1章 ios逆向工程簡介 2

1.1 ios軟件逆向工程的要求 2

1.2 ios軟件逆向工程的作用 2

1.2.1 與安全相關的ios逆向工程 4

1.2.2 與開發相關的ios逆向工程 5

1.3 ios軟件逆向工程的一般過程 6

1.3.1 系統分析 7

1.3.2 代碼分析 7

1.4 ios軟件逆向工程用到的工具 8

1.4.1 監測工具 8

1.4.2 開發工具 9

1.4.3 反編譯器 9

1.4.4 調試器 10

1.5 小結 11

第2章 越獄ios平台簡介 12

2.1 ios系統架構 12

2.1.1 ios目錄結構 13

2.1.2 ios文件權限 15

2.2 ios程序類型 16

2.2.1 application 16

2.2.2 dynamic library 19

2.2.3 daemon 19

2.3 小結 20

第二部分 工具篇

第3章 mac工具集 22

3.1 class-dump 22

3.1.1 class-dump介紹及下載 22

3.1.2 class-dump使用演示 23

3.1.3 關於class-dump的補充說明 25

3.2 theos 25

3.2.1 theos簡介 25

3.2.2 theos安裝及編譯 26

3.2.3 theos用法簡介 28

3.2.4 theos開發tweak示例 47

3.3 reveal 49

3.3.1 reveal簡介 49

3.3.2 reveal安裝及功能擴展 50

3.4 ida 55

3.4.1 ida簡介 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 小結 70

第4章 ios工具集 71

4.1 sbsettings 71

4.2 mobilesubstrate 72

4.3 openssh 73

4.4 gdb 74

4.4.1 gdb簡介 74

4.4.2 gdb的使用說明 74

4.5 cycript 85

4.6 其他常用工具 88

4.6.1 bigboss recommended tools 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 小結 92

第三部分 理論篇

第5章 objective-c相關的ios逆向理論基礎 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 分析文件,尋找切入點 99

5.2.3 定位目標函數 102

5.2.4 測試函數功能 104

5.2.5 解析函數參數 105

5.2.6 class-dump的局限性 108

5.3 實例演示 108

5.3.1 得到靈感 108

5.3.2 分析文件 109

5.3.3 定位函數 115

5.3.4 測試函數 117

5.3.5 編寫實例代碼 117

5.4 小結 119

第6章 arm匯編相關的ios逆向理論基礎 120

6.1 arm匯編基礎 120

6.1.1 基本概念 121

6.1.2 arm/thumb指令解讀 123

6.1.3 arm調用規則 129

6.2 在ida中分析目標文件 131

6.2.1 分析函數實現細節 132

6.2.2 驗證分析結果 139

6.3 在gdb中分析目標文件 142

6.3.1 跟蹤代碼執行流程 142

6.3.2 動態更改代碼 147

6.4 小結 157

第四部分 實戰篇

第7章 實戰1:去除oplayer lite的廣告 160

7.1 oplayer lite簡介 160

7.2 分析源代碼結構,並定位廣告橫幅的代碼 161

7.2.1 class-dump獲取.h文件 161

7.2.2 猜測廣告橫幅的出現位置 161

7.2.3 分析playview-controller.h 162

7.3 去除廣告橫幅,節省流量 167

7.3.1 找到“准備”廣告的位置 167

7.3.2 追溯到網絡連接的起點 173

7.4 編寫調試代碼 175

7.4.1 編寫tweak_oplayer-lite.xm 175

7.4.2 編輯control 176

7.4.3 編輯removeoplayer-ads.plist 176

7.4.4 編輯makefile 177

7.4.5 編譯+打包 177

7.4.6 安裝 177

7.5 調試去廣告插件 177

7.6 代碼結果整理 178

7.7 小結 179

第8章 實戰2:whatsapp消息攔截 180

8.1 whatsapp簡介 180

8.2 分析源代碼結構,並定位監聽點 180

8.2.1 class-dump獲取.h文件 180

8.2.2 導入xcode 182

8.2.3 找到whatsappapp-delegate 182

8.2.4 找到chatmanager 183

8.3 編寫調試代碼 184

8.3.1 分析函數列表 184

8.3.2 編寫tweak_whats-app.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 調試運行監聽插件 187

8.4.1 運行whatsapp,ssh連接 187

8.4.2 發送/接收消息,監控日志 188

8.4.3 保存數據 189

8.5 代碼結果整理 194

8.6 小結 195

第9章 實戰3:instagram圖片保存 196

9.1 instagram簡介 196

9.2 分析源代碼結構,並定位圖片展示點 196

9.2.1 用class-dump獲取.h文件 196

9.2.2 導入xcode 198

9.2.3 找到appdelegate 198

9.2.4 注入reveal 199

9.2.5 尋找圖片頁相關class 200

9.3 保存圖片 205

9.3.1 嘗試保存圖片 205

9.3.2 對.h文件進行瘦身 206

9.3.3 編譯測試 208

9.4 彈出提示菜單 208

9.4.1 彈出菜單代碼 208

9.4.2 使用theos新增函數 210

9.4.3 使用runtime新增函數 211

9.5 代碼結果整理 214

9.6 小結 215

第10章 實戰4:ios電話操作 216

10.1 常用電話操作 216

10.2 分析源代碼結構,並定位電話操作的代碼 216

10.2.1 class-dump獲取.h文件 216

10.2.2 尋找撥打電話的函數 217

10.2.3 尋找接聽電話的函數 229

10.2.4 尋找掛斷電話的函數 234

10.2.5 尋找刪除通話記錄的函數 236

10.2.6 尋找攔截電話的方法 238

10.3 編寫調試代碼 250

10.3.1 編寫tweak_phone-operation.xm 250

10.3.2 編輯control 254

10.3.3 編輯phone-operation.plist 255

10.3.4 編輯makefile 255

10.3.5 編譯+打包+安裝 255

10.4 調試電話操作插件 255

10.5 代碼結果整理 257

10.6 小結 257

編寫tweak——新時代的hacking 258

 

本圖書信息來源:互動出版網

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM