SL89 9787121340994 9787115350183 9787115388933 9787115465795
iOS應用逆嚮與安全
《iOS應用逆嚮與安全》從正嚮開發、工具的使用、逆嚮實戰及安全保護等方麵,對iOS應用的逆嚮與安全進行瞭講解。本書內容包括基本概念、逆嚮環境的準備、常用逆嚮分析工具、類的結構、App簽名、Mach-O文件格式、hook原理等,並通過在越獄平颱和非越獄平颱上的逆嚮分析實例,帶領讀者學習逆嚮分析的思路和方法。在應用安全及保護方麵,本書內容涉及網絡傳輸、安全檢測、代碼混淆等。
《iOS應用逆嚮與安全》適閤高校計算機相關專業的學生、iOS開發工程師、逆嚮工程師、越獄開發工程師、iOS安全工程師及應用安全審計人員閱讀參考。
第1章 概述
1.1 逆嚮工程簡介 1
1.1.1 iOS逆嚮學習基礎 1
1.1.2 iOS逆嚮的流程 1
1.1.3 iOS逆嚮使用的工具 2
1.1.4 iOS逆嚮的應用場景 2
1.2 應用麵臨的安全風險 2
1.2.1 靜態修改文件 3
1.2.2 動態篡改邏輯 3
1.2.3 協議分析 3
1.3 應用保護手段 3
1.3.1 數據加密 3
1.3.2 程序混淆 4
1.3.3 安全監測 4
1.4 本書工具 4
1.4.1 效率工具 4
1.4.2 實用工具 5
1.4.3 逆嚮工具 5
第2章 越獄設備
2.1 什麼是越獄 6
2.2 Cydia 6
2.3 SSH 7
2.3.1 安裝OpenSSH 8
2.3.2 配置dropbear 10
2.3.3 修改默認密碼 11
2.3.4 公鑰登錄 11
2.3.5 通過USB登錄 13
2.4 iOS係統結構 14
2.4.1 文件目錄 15
2.4.2 文件權限 17
2.5 Cydia Substrate 18
2.5.1 MobileHooker 19
2.5.2 MobileLoader 19
2.5.3 Safe mode 20
2.6 越獄必備工具 21
2.6.1 adv-cmds 21
2.6.2 appsync 21
2.6.3 iFile 21
2.6.4 scp 22
第3章 逆嚮工具詳解
3.1 應用解密 23
3.1.1 dumpdecrypted 23
3.1.2 Clutch 28
3.1.3 小結 30
3.2 class-dump 30
3.2.1 class-dump的使用 30
3.2.2 class-dump的原理 33
3.2.3 OC和Swift混編 40
3.3 Reveal 41
3.3.1 開發集成Reveal 41
3.3.2 越獄注入Reveal 42
3.4 Cycript 43
3.4.1 開發集成Cycript 44
3.4.2 使用Cycript越獄 45
3.4.3 使用Cycript分析應用 46
3.4.4 Cycript的高級用法 49
3.5 抓包 52
3.5.1 Charles抓包 53
3.5.2 修改網絡請求 55
3.5.3 HTTPS抓包 59
3.5.4 Wireshark抓包 60
第4章 開發儲備
4.1 App的結構及構建 66
4.1.1 獲取應用包 66
4.1.2 應用包的格式 71
4.1.3 應用的構建過程 72
4.2 界麵結構和事件傳遞 76
4.2.1 界麵的組成 76
4.2.2 界麵事件的響應 79
4.3 類與方法 83
4.3.1 類與方法的底層實現 84
4.3.2 運行時類的結構 89
4.3.3 消息機製 91
4.3.4 runtime的應用 94
4.4 App簽名 98
4.4.1 配置Xcode簽名 98
4.4.2 App簽名的原理 100
4.4.3 重簽名 107
第5章 分析與調試
5.1 靜態分析 109
5.1.1 Hopper 109
5.1.2 IDA 118
5.1.3 靜態庫分析 125
5.2 動態調試 128
5.2.1 LLDB調試 128
5.2.2 LLDB解密 141
5.2.3 用Xcode調試第三方應用 144
5.2.4 LLDB的高級調試技巧 151
5.3 Theos 167
5.3.1 Theos的安裝 168
5.3.2 Theos的基本應用 168
5.3.3 Theos的高級應用 172
5.4 MonkeyDev 177
5.4.1 安裝MonkeyDev 178
5.4.2 Logos Tweak 179
5.4.3 CaptainHook Tweak 181
5.4.4 Command-line Tool 185
第6章 逆嚮進階
6.1 程序加載 186
6.1.1 dyld簡介 186
6.1.2 dyld加載流程 187
6.2 Mach-O文件格式 206
6.2.1 Mach-O文件的基本格式 206
6.2.2 Mach-O頭部 208
6.2.3 Load Command 210
6.2.4 虛擬地址和文件偏移 214
6.2.5 懶加載和非懶加載 217
6.2.6 Code Signature 223
6.3 ARM匯編 228
6.3.1 ARM架構和指令集 228
6.3.2 AArch64寄存器 229
6.3.3 指令集編碼 231
6.3.4 AArch64指令 233
6.3.5 棧和方法 236
6.3.6 Objective-C匯編 245
6.4 hook 247
6.4.1 Method Swizzle 247
6.4.2 fishhook 248
6.4.3 Cydia Substrate 253
6.4.4 Swift hook 256
6.5 動態庫 259
6.5.1 編譯和注入 260
6.5.2 導齣和隱藏符號 260
6.5.3 C++ 和OC動態庫 263
6.5.4 其他常見問題 267
第7章 實戰演練
7.1 越獄設備分析 270
7.1.1 分析準備 270
7.1.2 開始分析 272
7.1.3 編寫Tweak 284
7.1.4 安裝與小結 287
7.2 非越獄設備分析 288
7.2.1 創建MonkeyDev項目 288
7.2.2 非越獄逆嚮實戰 291
7.2.3 編寫hook代碼 303
7.2.4 製作非越獄Pod 304
7.2.5 小結 308
7.3 Frida實戰應用 309
7.3.1 Frida的安裝 309
7.3.2 Frida的初級使用 311
7.3.3 Frida的高級使用 319
7.3.4 小結 326
第8章 安全保護
8.1 數據加密 327
8.1.1 本地存儲加密 328
8.1.2 網絡傳輸加密 328
8.1.3 字符串加密 333
8.2 靜態混淆 341
8.2.1 宏定義 342
8.2.2 二進製修改 347
8.3 動態保護 349
8.3.1 反調試 349
8.3.2 反反調試 352
8.3.3 反注入 359
8.3.4 hook檢測 360
8.3.5 完整性校驗 361
8.4 代碼混淆 363
8.4.1 什麼是LLVM 363
8.4.2 下載和編譯LLVM 364
8.4.3 開發和調試Pass 366
8.4.4 OLLVM源代碼分析 373
8.4.5 替換Xcode編譯器 379
8.4.6 靜態庫混淆 389
8.5 本章總結 390
逆嚮分析實戰本書的主要內容為:數據的存儲及錶示形式、匯編語言入門、熟悉調試工具OllyDbg、PE工具詳解、PE文件格式實例(包括加殼與脫殼工具的使用)、十六進製編輯器與反編譯工具、IDA與逆嚮、逆嚮工具原理實現等。本書可以作為程序員、安全技術的研究人員、安全技術愛好者閱讀。
第 1章 數據的存儲及錶示形式 1 
1.1 進製及進製的轉換 1 
1.1.1 現實生活中的進製與計算機的二進製 1 
1.1.2 進製的定義 2 
1.1.3 進製的轉換 2 
1.2 數據寬度、字節序和ASCII碼 4 
1.2.1 數據的寬度 4 
1.2.2 數值的錶示範圍 4 
1.2.3 字節序 5 
1.2.4 ASCII碼 6 
1.3 在OD中查看數據 6 
1.4 編程判斷主機字符序 11 
1.4.1 字節序相關函數 11 
1.4.2 編程判斷主機字節序 11 
1.5 總結 13 
第 2章 匯編語言入門 14 
2.1 x86匯編語言介紹 14 
2.1.1 寄存器 15 
2.1.2 在OD中認識寄存器 19 
2.2 常用匯編指令集 20 
2.2.1 指令介紹 20 
2.2.2 常用指令介紹 21 
2.3 尋址方式 36 
2.4 總結 37 
第3章 熟悉調試工具OllyDbg 39 
3.1 認識OD調試環境 39 
3.1.1 啓動調試 39 
3.1.2 熟悉OD窗口 42 
3.2 OD中的斷點及跟蹤功能 46 
3.2.1 OD中設置斷點的方法 47 
3.2.2 OD中跟蹤代碼的介紹 52 
3.3 OD中的查找功能和編輯功能 53 
3.3.1 OD的搜索功能 53 
3.3.2 OD修改的編輯功能 55 
3.4 OD中的插件功能 56 
3.4.1 OD常用插件介紹 56 
3.4.2 OD插件腳本編寫 58 
3.4.3 OD插件的開發 59 
3.5 總結 63 
第4章 PE工具詳解 64 
4.1 常用PE工具介紹 64 
4.1.1 PE工具 64 
4.1.2 Stud_PE介紹 65 
4.1.3 PEiD介紹 66 
4.1.4 LordPE介紹 66 
4.2 PE文件格式詳解 67 
4.2.1 PE文件結構全貌介紹 68 
4.2.2 詳解PE文件結構 70 
4.2.3 PE結構的三種地址 84 
4.3 數據目錄相關結構詳解 90 
4.3.1 導入錶 91 
4.3.2 導齣錶 104 
4.3.3 重定位錶 110 
4.4 總結 118 
第5章 PE文件格式實例 119 
5.1 手寫PE文件 119 
5.1.1 手寫PE文件的準備工作 119 
5.1.2 用十六進製字節完成PE文件 120 
5.2 手工對PE文件進行減肥 132 
5.2.1 修改壓縮節區 132 
5.2.2 節錶閤並 135 
5.2.3 結構重疊 140 
5.2.4 小結 148 
5.3 PE結構相關工具 148 
5.3.1 增加節區 148 
5.3.2 資源編輯 149 
5.4 加殼與脫殼工具的使用 154 
5.4.1 什麼是殼 154 
5.4.2 簡單殼的原理 155 
5.4.3 加殼工具與脫殼工具的使用 166 
5.5 PE32+簡介 180 
5.5.1 文件頭 180 
5.5.2 可選頭 181 
5.6 總結 182 
第6章 十六進製編輯器與反編譯工具 183 
6.1 C32Asm 183 
6.1.1 文件的打開方式 183 
6.1.2 反匯編模式 185 
6.1.3 十六進製模式 189 
6.2 WinHex 193 
6.2.1 內存搜索功能 194 
6.2.2 使用模闆解析數據 196 
6.2.3 完成一個簡單的模闆 198 
6.3 其他十六進製編輯器 200 
6.3.1 UltraEdit簡介 200 
6.3.2 010Editor簡介 201 
6.4 反編譯工具介紹 202 
6.4.1 DeDe反編譯工具 202 
6.4.2 VB反編譯工具 206 
6.4.3 .NET反編譯工具 208 
6.4.4 Java反編譯工具 211 
6.5 總結 211 
第7章 IDA與逆嚮 213 
7.1 IDA工具介紹 213 
7.1.1 IDA的啓動與關閉 213 
7.1.2 IDA常用界麵介紹 216 
7.1.3 IDA的腳本功能 228 
7.2 C語言代碼逆嚮基礎 231 
7.2.1 函數的識彆 232 
7.2.2 if…else…結構分析 242 
7.2.3 switch結構分析 244 
7.2.4 循環結構分析 247 
7.3 總結 252 
第8章 逆嚮工具原理實現 253 
8.1 PE工具的開發 253 
8.1.1 GetProcAddress函數的使用 253 
8.1.2 GetProcAddress函數的實現 254 
8.2 調試工具的開發 238 
8.2.1 常見的三種斷點 259 
8.2.2 調試API函數及相關結構體介紹 262 
8.2.3 打造一個密碼顯示器 273 
8.3 總結 277 
參考文獻 278
逆嚮工程實戰
本書是一本涵蓋x86、x64 和ARM 操作係統的逆嚮工程類圖書,由淺入深地講解瞭包括Windows內核模式代碼的惡意軟件和驅動程序、虛擬機保護技術等內容。作者通過大量真實案例和示例,提供瞭係統化的解決方案。 
本書適閤所有程序員和想要開始學習逆嚮工程的讀者閱讀。
這本書給我最大的震撼在於它對“實戰”兩個字的完美詮釋。不是那種空談理論,而是真正把你拉到實際的逆嚮場景中去。從一個簡單的App開始,作者會一步步教你如何進行靜態分析,如何識彆關鍵函數,如何定位敏感數據。更精彩的是動態調試的部分,通過Frida等工具,你可以實時觀察程序的運行狀態,修改內存,甚至注入自己的代碼。我印象最深的是其中一個關於破解App內購的章節,作者詳細講解瞭如何通過Hook支付相關的API,繞過支付驗證,這種技能在實際的安全測試中非常有價值。這本書不僅僅是教你“怎麼做”,更重要的是讓你明白“為什麼這麼做”,它培養的是一種分析問題的思維方式,一種刨根問底的精神。即使你之前沒有任何逆嚮經驗,隻要認真閱讀,跟著案例一步步實踐,你會發現逆嚮的世界並沒有想象中那麼遙不可及。這本書絕對是提升iOS安全技能的必讀書籍!
評分這本書的深度簡直超齣瞭我的預期!它並沒有停留在錶麵,而是深入到瞭iOS逆嚮工程的核心原理層麵。作者對底層機製的理解非常透徹,比如ARC(自動引用計數)的實現原理,Objective-C的消息傳遞機製,以及Swift的類型擦除等等,這些都是理解iOS係統運作的關鍵。我之前一直對Runtime的各種魔法感到好奇,這本書把這些東西都拆解開來,用一種非常清晰的方式呈現齣來。最讓我驚艷的是,它還涉及瞭一些更高級的主題,比如對App Store應用簽名的解析,以及如何利用漏洞繞過App Store的審核。雖然這些內容可能對新手來說有點挑戰,但對於想要進階的開發者來說,絕對是無價之寶。讀完之後,你會對iOS平颱的安全性和潛在的攻擊麵有一個全新的認識,也能更好地設計和開發安全的iOS應用。這本書絕對是iOS逆嚮領域的“扛鼎之作”。
評分坦白說,一開始我抱著試試看的心態買瞭這套書,畢竟市麵上關於iOS逆嚮的書籍也不少。但當我翻開第一頁,就被深深吸引住瞭。這本書的編寫風格非常獨特,它不像傳統的教科書那樣枯燥,而是用一種非常生動、有趣的方式來講解復雜的概念。作者善於運用比喻和類比,將晦澀的技術問題變得易於理解。而且,書中的每一個例子都經過精心設計,邏輯清晰,操作步驟明確。我印象最深刻的是在講解Decompilation(反編譯)時,作者用瞭一個“偵探破案”的比喻,讓我一下子就明白瞭反編譯的本質和難點。讀這本書的過程中,我經常會時不時地停下來,思考作者的思路,並且嘗試去復現書中的每一個案例。這種互動式的學習體驗,讓我感覺自己不僅僅是在閱讀,更是在進行一次深入的探索。這本書不僅能提升你的技術能力,更能激發你對iOS逆嚮工程的熱情,讓你在學習過程中充滿樂趣。
評分我購買這套書的初衷是想提升自己的iOS安全審計能力,而這套書完全滿足瞭我的需求,甚至超齣瞭我的期待。作者在書中構建瞭一個非常完善的逆嚮分析體係,從基礎的工具使用,到復雜的邏輯分析,再到最終的安全加固,形成瞭一個完整的閉環。我特彆喜歡書中關於反調試、反反編譯技術的講解,這些是保護App不被輕易破解的關鍵。作者還分享瞭很多自己實戰中的經驗和技巧,比如如何快速定位混淆過的代碼,如何分析加固過的App,這些都是在網上很難找到的寶貴信息。通過閱讀和實踐,我不僅學會瞭如何去“看懂”一個App的內部邏輯,更學會瞭如何去“保護”自己的App。這本書絕對是iOS安全從業者和有誌於此的開發者的必備參考書,它讓你從一個被動的“學習者”變成一個主動的“防禦者”。
評分這本書絕對是iOS逆嚮入門的寶典!我之前對iOS逆嚮一點概念都沒有,看瞭市麵上一些零散的教程,總是感覺抓不住重點,碎片化嚴重。拿到這本書後,簡直 like finding a treasure! 作者的講解非常係統,從最基礎的匯編語言、Mach-O文件格式,再到iOS係統架構,一步步帶你深入。尤其喜歡它對Objective-C和Swift運行時機製的剖析,那些底層原理講得明明白白,讓你知道代碼是如何在內存中運轉的。書中的案例也非常貼閤實際,很多都是我們在日常開發中可能遇到的問題,比如如何Hook一些係統API,如何脫殼,如何分析加密的字符串。作者還分享瞭很多實用的工具,比如IDA Pro、Hopper、Frida等,並且詳細講解瞭如何配閤這些工具進行分析。讀完之後,我感覺自己對iOS應用的內部工作原理有瞭質的飛躍,不再是隻會寫代碼的“搬磚工”,而是能理解代碼運行的“工程師”瞭。強烈推薦給所有想深入瞭解iOS安全和逆嚮的開發者!
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 靜流書站 版權所有