現貨iOS應用逆嚮與安全 劉培慶 ios應用逆嚮工程分析技術教程書籍

現貨iOS應用逆嚮與安全 劉培慶 ios應用逆嚮工程分析技術教程書籍 pdf epub mobi txt 電子書 下載 2025

劉培慶 著
圖書標籤:
  • iOS逆嚮
  • iOS安全
  • 逆嚮工程
  • 應用分析
  • 劉培慶
  • iOS開發
  • 安全漏洞
  • 脫殼
  • 砸殼
  • 攻防
想要找書就要到 靜流書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
店鋪: 藍墨水圖書專營店
齣版社: 電子工業齣版社
ISBN:9787121340994
商品編碼:1670014481

具體描述



iOS應用逆嚮與安全 平裝 – 2018年6月25日

劉培慶 (作者)

 

基本信息

齣版社: 電子工業齣版社; 第1版 (2018年6月1日)

平裝

ISBN: 9787121340994

品牌: 電子工業齣版社

ASIN: B07D5952BR

iOS應用逆嚮基礎、理論、實踐、保護全解析

 

 

編輯推薦

這是一本從基礎、理論、實踐到保護,全麵介紹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

 

 

 

 

內容介紹

 

 

 

    《iOS應用逆嚮與安全》從正嚮開發、工具的使用、逆嚮實戰及安全保護等方麵,對iOS應用的逆嚮與安全進行瞭講解。本書內容包括基本概念、逆嚮環境的準備、常用逆嚮分析工具、類的結構、App簽名、Mach-O文件格式、hook原理等,並通過在越獄平颱和非越獄平颱上的逆嚮分析實例,帶領讀者學習逆嚮分析的思路和方法。在應用安全及保護方麵,本書內容涉及網絡傳輸、安全檢測、代碼混淆等。

 

    《iOS應用逆嚮與安全》適閤高校計算機相關專業的學生、iOS開發工程師、逆嚮工程師、越獄開發工程師、iOS安全工程師及應用安全審計人員閱讀參考。

 

 

 

 

作者介紹

 

劉培慶(@Alone_Monkey)

 

iOS逆嚮愛好者,網易雲課堂“iOS逆嚮與安全”主講。大學畢業後在網易負責iOS安全保護、基礎組件開發、質量保障等工作。目前就職於阿裏巴巴米諾斯實驗室,從事安全保護相關工作。開源作品有MonkeyDev、frida-ios-dump等。


解鎖移動應用的深層奧秘:一本麵嚮開發者與安全愛好者的實踐指南 在數字化浪潮席捲的今天,移動應用程序已滲透到我們生活的方方麵麵,從社交娛樂到金融支付,再到工作學習,它們扮演著日益重要的角色。然而,對於大多數用戶而言,應用軟件就像一個黑盒子,我們僅能通過其錶麵的功能與之互動,而其內部的運作機製、代碼邏輯以及潛在的安全隱患,卻鮮為人知。對於開發者而言,深入理解自身應用的結構與行為,以及如何抵禦惡意攻擊,是構建高質量、安全可靠産品的基石。而對於安全愛好者而言,探索應用的內部世界,洞察其工作原理,更是掌握網絡安全技術、參與安全攻防的重要途徑。 本書旨在為您打開一扇通往移動應用內部世界的大門,提供一套係統、詳盡且極具實踐性的方法論,幫助您深入理解移動應用的工作原理,掌握核心的分析技術,並能夠識彆和應對潛在的安全風險。我們並非專注於某一款特定的應用程序,而是緻力於傳授普適性的分析思維和技術框架,讓您能夠觸類旁通,獨立分析市麵上絕大多數的移動應用。 本書涵蓋的精彩內容 本書的內容設計,遵循從基礎到進階,從理論到實踐的循序漸進的學習路徑,確保不同背景的讀者都能從中受益。 第一部分:基礎理論與環境搭建——構建堅實的分析基石 在深入技術細節之前,紮實的基礎理論和完善的分析環境是必不可少的。本部分將帶領您: 深入理解移動應用的基本架構: 您將瞭解到移動應用是如何被構建、打包和運行的,包括其核心組件(如Activity、Service、Broadcast Receiver、Content Provider)、生命周期以及它們之間的交互方式。我們將解釋 Dalvik/ART 虛擬機的工作原理,以及應用程序的字節碼是如何在這些虛擬機上執行的。 掌握常用的反編譯與靜態分析工具: 我們將詳細介紹業界主流的反編譯工具,如 jadx、GDA、JEB 等,並演示如何使用它們將應用程序的字節碼還原成可讀性更高的 Java 或 Smali 代碼。您將學習如何利用這些工具進行代碼瀏覽、類結構分析、字符串提取以及資源文件解析,從而對應用程序的整體構成有一個初步的認識。 搭建高效的動態分析環境: 靜態分析隻能看到代碼的“骨架”,而動態分析則能揭示其“血肉”。本部分將指導您搭建一個功能強大的動態分析環境,包括 Android 模擬器、真機調試環境的配置。您將學習如何使用 Frida、Xposed 等Hook框架,在應用程序運行時攔截函數調用、修改函數返迴值、注入自定義代碼,從而觀察應用程序的實時行為。 理解應用程序的打包與簽名機製: 應用程序的完整性和來源的驗證至關重要。您將瞭解 APK(Android Package Kit)文件的結構,以及 Android 的簽名機製如何保證應用程序的未被篡改,並學習如何進行證書信息的提取和分析。 第二部分:核心逆嚮工程技術——精通代碼層麵的深度探索 在建立瞭堅實的基礎後,本部分將帶您進入應用程序逆嚮工程的核心領域,掌握一係列強大的技術手段: Smali 代碼的深入剖析與修改: 盡管我們可以將 Dalvik/ART 字節碼反編譯成 Java 代碼,但 Smali 代碼纔是直接操作字節碼的中間語言。我們將詳細講解 Smali 的語法結構、指令集以及常用操作,並演示如何閱讀和理解 Smali 代碼,甚至對其進行修改,以實現對應用程序行為的細緻控製。 Hook 技術的靈活運用: Hook 技術是動態分析的利器,它允許我們在不修改原始代碼的情況下,攔截和修改程序的執行流程。您將學習如何使用 Frida、Xposed 等框架,針對特定的類和方法編寫 Hook 腳本,實現諸如數據抓取、權限繞過、邏輯篡改等高級功能。我們將通過大量的實際案例,展示 Hook 技術在破解、安全檢測和功能增強方麵的巨大潛力。 內存與進程分析: 應用程序在運行時會占用內存,並與其他進程進行交互。本部分將介紹如何使用內存分析工具,如 Memory Analyzer Tool (MAT),檢查應用程序的內存占用情況,查找內存泄漏,甚至直接從內存中提取敏感信息。同時,您將學習如何監控和分析應用程序與其他進程的通信,瞭解其在係統中的行為模式。 數據存儲與加密解密技術的探索: 應用程序通常會存儲用戶數據、配置信息等,這些數據的存儲方式和加密方式直接關係到數據的安全性。您將學習如何定位和分析應用程序使用 SharedPreferences、SQLite 數據庫、文件等方式存儲數據,並重點關注對常見加密算法(如AES、RSA)的識彆與解密技術。我們將展示如何通過Hook或直接分析代碼,找齣加密密鑰和算法,從而實現對敏感數據的解密。 第三部分:應用安全攻防與實戰演練——提升您的安全防護意識 理論知識最終需要與實踐相結閤,纔能真正發揮其價值。本部分將側重於應用程序的安全防護,以及如何運用逆嚮工程技術進行安全檢測和攻防演練: 識彆與防範常見的安全漏洞: 您將深入瞭解移動應用中常見的安全漏洞,如SQL注入、跨站腳本(XSS)、不安全的本地存儲、權限濫用、通信劫持等。我們將結閤實際案例,分析這些漏洞是如何産生的,以及如何利用逆嚮工程技術去發現它們。 代碼混淆與加固技術的分析: 為瞭保護源代碼不被輕易破解,開發者通常會采用代碼混淆和加固技術。本部分將揭示常見的代碼混淆原理,並教您如何通過反混淆工具和技術,逐步還原被混淆的代碼,使其重新變得可讀。同時,您將瞭解各種加固手段的原理,並學習如何針對性地進行破解。 通信安全與抓包分析: 應用程序與服務器之間的通信是數據傳輸的關鍵環節。您將學習如何使用 Wireshark、Charles Proxy 等抓包工具,攔截和分析應用程序的網絡通信,包括 HTTP/HTTPS 請求和響應。我們將重點講解如何處理 HTTPS 證書 pinning 問題,以及如何通過 Hook 技術來解密 SSL/TLS 通信,從而洞察敏感數據的傳輸過程。 實戰攻防案例分析: 本部分將通過一係列精心設計的實戰案例,涵蓋從簡單應用到復雜應用的破解與分析過程。這些案例將覆蓋不同類型的應用,如遊戲、社交應用、工具應用等,讓您親身感受逆嚮工程和安全分析的魅力。您將有機會動手實踐,運用本書所學的知識,獨立完成一些具有挑戰性的分析任務。 安全編碼實踐與自我防護: 在學習如何破解和分析應用的同時,我們也將引導您思考如何編寫更安全的代碼,如何為自己的應用程序添加有效的安全防護措施,從而提升應用程序的健壯性和安全性。 本書的目標讀者 本書的內容設計,麵嚮廣泛的讀者群體: 移動應用開發者: 無論您是 Android 還是 iOS 開發者,本書都能幫助您更深入地理解應用的底層機製,優化代碼結構,發現潛在的安全隱患,提升應用的安全性和穩定性。 安全研究人員與滲透測試工程師: 本書將為您提供一套係統的逆嚮工程工具和技術,助您在移動應用安全領域取得突破,發現和利用應用漏洞。 計算機科學與網絡安全專業的學生: 本書是您學習移動應用安全、逆嚮工程和二進製分析的絕佳入門和進階讀物。 對移動應用內部運作充滿好奇心的技術愛好者: 如果您對應用程序的“黑箱”充滿疑問,渴望瞭解其背後運作的奧秘,本書將滿足您的求知欲,並為您打開一扇全新的技術視野。 本書的獨特價值 係統性與全麵性: 本書並非零散的技術點堆砌,而是構建瞭一個完整的知識體係,從基礎理論到高級技術,再到實戰應用,層層遞進,確保您能夠全麵掌握移動應用逆嚮與安全分析的精髓。 實踐導嚮: 我們強調動手實踐的重要性,本書包含瞭大量的實例演示和練習,讓您在學習過程中能夠立即運用所學知識,解決實際問題。 前沿性: 本書緊跟移動技術和安全領域的發展步伐,涵蓋瞭最新的工具和技術,讓您的知識保持與時俱進。 普適性: 我們專注於教授通用的分析思維和技術框架,而非針對特定應用的破解教程。這意味著您掌握的技能將能夠應用於分析絕大多數的移動應用程序。 結語 在這個充滿機遇與挑戰的數字化時代,深入理解和掌握移動應用的運作原理與安全機製,已成為一項必備的核心技能。本書將是您踏入移動應用逆嚮與安全分析領域,開啓深度探索之旅的理想夥伴。我們相信,通過本書的學習,您不僅能夠揭開應用程序的神秘麵紗,更能夠提升自身的安全防護意識,成為一名更具競爭力的技術人纔。現在,就讓我們一起踏上這場激動人心的技術探索之旅吧!

用戶評價

評分

這本書的封麵設計真是直擊人心,那種硬朗的科技感撲麵而來,讓人一眼就知道這不是那種泛泛而談的入門讀物。我拿到手的時候,首先被它的厚度震住瞭,這分量沉甸甸的,仿佛裏麵蘊含瞭無數實戰的經驗和踩過的坑。我對iOS安全領域一直是心存敬畏,覺得那是高手纔能涉足的領域,但這本書的結構布局,從基礎理論的梳理到具體工具的運用,都安排得井井有條,像是有一位經驗極其豐富的導師,耐心地牽著你的手一步步走入迷宮。它沒有那種故作高深的辭藻,語言風格非常務實,充滿瞭代碼和截圖的印證,讓人感到無比踏實。我尤其欣賞其中對經典案例的剖析,那種層層剝繭、直擊核心的分析思路,遠比教科書上那些抽象的概念要來得生動和深刻。閱讀過程中,我能清晰地感受到作者對於移動安全生態的深刻理解,他不僅僅是在教你如何使用工具,更是在培養你一種係統性的安全思維。

評分

我一直覺得,逆嚮工程的學習麯綫是非常陡峭的,很多時候,光靠網上的碎片化資料很難形成體係,而且很多資源的時效性也讓人擔憂。這本書的齣現,就像是為iOS逆嚮領域建立瞭一個堅實的“知識基石”。它不僅涵蓋瞭目前主流的應用加固和反調試技術,對於一些新興的混淆和動態插樁技術也進行瞭探討,顯示瞭作者持續關注行業前沿的專業性。更難得的是,書中提供的實驗環境搭建指南非常詳盡,確保瞭讀者可以百分之百地復現書中的每一個實驗。這對於我們動手實踐派來說,是極其重要的,因為隻有親手操作,那些抽象的概念纔能真正固化為自己的技能。我已經在按照書中的步驟嘗試分析一些開源的Demo,效果立竿見影。

評分

這本書的排版和細節處理,體現齣瞭作者對讀者的尊重。字體選擇清晰易讀,圖錶的繪製也非常專業,很多復雜的流程圖和數據結構示意圖,都做得非常精細,即便是初次接觸這些概念的人也能迅速把握重點。我最欣賞的一點是,作者在講解每一個技術難點時,總會附帶提及一些“陷阱”和“常見誤區”,這簡直是為我們這些在黑暗中摸索的人點亮瞭指路明燈。這些經驗之談,是光靠自己反復試錯纔能積纍的財富,但作者卻毫不保留地傾囊相授。閱讀過程中,我甚至能想象齣作者在寫下這些內容時,一定是經過瞭多少次失敗的調試和深入的源碼挖掘。這種真誠的分享態度,讓整本書讀起來更有溫度,而不是冷冰冰的技術文檔堆砌。

評分

對於那些希望從應用開發者的身份,嚮更深層次的安全研究員轉型的技術人員來說,這本書無疑是一份無可替代的寶藏。它不隻是教會你“如何做”,更重要的是激發你去思考“為什麼會這樣”。它引導讀者去質疑既有的安全防護機製,去探索軟件運行的深層奧秘。閱讀體驗非常流暢,作者的文筆雖然專業,但邏輯性極強,即便是跨領域的讀者也能感受到那種層層遞進的邏輯美感。讀完之後,感覺自己的技術視野被極大地拓寬瞭,對整個移動終端的安全防護體係有瞭更宏觀的認識。這本書的影響力,絕非局限於教會你幾個工具的使用技巧,而是能深刻地塑造你的技術內核和解決問題的態度。

評分

說實話,我之前也翻看過幾本相關的技術書籍,但大多都停留在理論介紹和一些簡單的代碼演示上,真正能拿來實戰的乾貨少之又少,讀完後感覺知識點很零散,缺乏一個連貫的脈絡。這本書徹底改變瞭我的看法。它的章節過渡非常自然,前一章的技術點無縫銜接到後一章的復雜場景中,仿佛在構建一個完整的知識體係地圖。特彆是關於內存操作和數據保護機製的講解部分,作者深入到瞭匯編層麵去剖析,那種對底層細節的執著和精準度,絕對不是一般技術人員能達到的水平。每當我在某個技術點上卡住時,翻開書本,總能找到清晰的邏輯推導和代碼片段來幫助我豁然開朗。這種深度和廣度兼備的敘述方式,極大地提升瞭我解決實際問題的能力,讓我從一個隻會“調用API”的開發者,開始嘗試去“理解係統是如何運作”的逆嚮工程師。

評分

評分

評分

評分

評分

評分

評分

評分

評分

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 靜流書站 版權所有