UNIDBG 逆向工程:原理與實務
陳佳林
- 出版商: 機械工業
- 出版日期: 2024-01-01
- 定價: $774
- 售價: 8.5 折 $658
- 語言: 簡體中文
- 頁數: 568
- 裝訂: 平裝
- ISBN: 711174182X
- ISBN-13: 9787111741824
-
相關分類:
Penetration-test
立即出貨
買這商品的人也買了...
-
Effective Debugging 中文版 | 軟體與系統除錯的 66 個具體作法 (Effective Debugging: 66 Specific Ways to Debug Software and Systems) (書況略舊,不介意在下單)$450$356 -
軟件調試 第2版 捲1:硬件基礎$708$673 -
$594網絡攻防實戰研究:MySQL數據庫安全 -
絕對硬派:Windows 核心首度公開 C++解析$1,200$948 -
練核心從裡強到外:全面了解 Linux 基礎架構$1,000$790 -
$469區塊鏈應用開發指南 : 業務場景剖析與實戰 -
駭客們好自為之:CTF 大賽 PWN 奪旗技術大展$1,000$790 -
大師養成起手式:從核心真正了解 Linux 運作原理$880$695 -
$352密碼學 — 密碼算法與協議, 3/e -
Ghidra 權威指南$840$798 -
$659FFmpeg 入門詳解 — SDK 二次開發與直播美顏原理及應用 -
$417PLC 編程與伺服控制從入門到工程實戰 -
$469從零學習PLC編程與接線 -
PLC 通信協議及編程$594$564 -
CCNP and CCIE Security Core Scor 350-701 Official Cert Guide, 2/e (Paperback)$2,680$2,546 -
$512RTC 程序設計:實時音視頻權威指南 -
$352移動安全攻防進階 — Android 與 iOS 逆向理論與案例實戰 -
$352軟件優化技術 -
$403物聯網安全滲透測試技術 -
$658ARM 彙編與逆向工程藍狐捲基礎知識 -
電磁頻譜監測$594$564 -
Go語言 + Vue.js 實戰派 — 基於 Gin 框架$708$673 -
$407網絡通信編程 -
.NET 安全攻防指南 (上)$774$735 -
.NET 安全攻防指南 (下)$774$735
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
85折
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$544 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
本書共31章,分四部分:
第一部分(第1-3章)帶領讀者進入unidbg的世界,瞭解unidbg的基礎知識及一些基本操作;
第二部分(第4-15章)詳細講解unidbg原理;
第三部分(第16-26章)是模擬執行與補環境實戰,透過各種具體技術案例,幫助讀者掌握unidbg模擬執行、補環境的原理與方法;
第四部分(第27~31章)介紹反制與生產環境部署。
作者簡介
陳佳林,科技極客,「骨灰級」樹莓派愛好者,在機器人、智慧硬件、軟硬件協同開發等方面有較深入的研究。 資深安全技術專家,看雪科技資深研究員,在行動安全領域經驗豐富,多次主持召開銀行、電信、政府等行業的培訓並參與安全項目的研究。作為團隊成員參與GeekPwn 2018挑戰賽並獲得亞軍,多次在“看雪安全開發者峰會”“補天白帽大會”等會議上發表主題演講。 另著有《樹莓派創客:手把手教你搭建機器人》《樹莓派創客:手把手教你玩轉人工智能》。
目錄大綱
目 錄Contents
前 言
第一部分 進入unidbg的世界
第1章 unidbg環境準備與快速上手 2
1.1 r0env環境介紹與集成 2
1.1.1 r0env各組件介紹 2
1.1.2 r0env下載及安裝 5
1.2 IDEA安裝及配置 6
1.3 第一個unidbg項目 7
1.3.1 unidbg介紹 7
1.3.2 unidbg下載與運行示例 8
1.3.3 unidbg示例講解 9
1.4 本章小結 13
第2章 unidbg模擬執行初探 14
2.1 第一個NDK項目 14
2.1.1 使用Android Studio創建NDK項目 14
2.1.2 編寫自己的so業務代碼 16
2.2 unidbg的符號調用與地址調用 18
2.2.1 unidbg主動調用前置準備 18
2.2.2 unidbg主動調用so函數 19
2.2.3 unidbg部分API簡單講解 22
2.3 本章小結 24
第3章 unidbg補環境、Hook與Patch 25
3.1 為so添加交互:使用JNI接口編寫md5方法 25
3.2 使用unidbg修補執行環境並模擬執行 27
3.3 脫離編譯器,使用命令行編譯so 34
3.4 unidbg的Hook 36
3.5 unidbg的Patch 39
3.6 本章小結 42
第二部分 unidbg原理
第4章 ELF文件執行視圖解析 44
4.1 ELF文件結構 44
4.1.1 ELF頭部結構 45
4.1.2 程序頭部表 47
4.1.3 動態節區_DYNAMIC段 51
4.2 深入jelf代碼細節,探究ELF解析 54
4.2.1 分析原版jelf代碼 54
4.2.2 分析unidbg版jelf代碼 56
4.3 本章小結 60
第5章 Unicorn的初級使用與初探Linker 61
5.1 Unicorn的初級使用:模擬執行與Hook 61
5.1.1 使用Unicorn進行模擬執行 61
5.1.2 Unicorn的Hook 64
5.1.3 Keystone與Capstone 70
5.2 初探Android系統源碼 71
5.2.1 Java層代碼追蹤 73
5.2.2 Native層代碼追蹤 75
5.3 本章小結 78
第6章 深入Linker:so的加載、鏈接、初始化 79
6.1 so的加載過程 79
6.2 so的鏈接過程 90
6.3 so的初始化操作 100
6.4 本章小結 102
第7章 使用Unicorn模擬Linker:so的加載過程 103
7.1 模擬Linker?:環境準備 103
7.2 模擬Linker?:so的加載 109
7.3 動態調試Linker,探究so的內存佈局圖 118
7.4 本章小結 122
第8章 使用Unicorn模擬Linker:so的鏈接過程 123
8.1 so的依賴庫加載過程 123
8.2 so的動態鏈接 127
8.3 初嘗試:使用unidbg模擬執行簡單so文件 131
8.4 探究unidbg的Linker代碼細節 133
8.4.1 unidbg加載so文件代碼入口 134
8.4.2 處理so信息並加載內存 135
8.4.3 對so的依賴庫進行處理 137
8.4.4 重定位操作 138
8.4.5 處理so的初始化信息與生成module對象 140
8.4.6 執行初始化 141
8.5 本章小結 142
第9章 R0dbg實戰與Unidbg_FindKey 143
9.1 模擬Linker?:so的初始化過程 143
9.2 指令追蹤與排錯 147
9.2.1 TLS線程局部存儲環境初始化 148
9.2.2 R0dbg對系統調用進行處理 150
9.3 使用R0dbg模擬執行so 152
9.4 Unidbg_FindKey牛刀小試 154
9.5 本章小結 157
第10章 unidbg源碼解析:AndroidEmulator 158
10.1 創建AndroidEmulator 158
10.2 創建FileSystem 165
10.3 創建Backend 168
10.4 創建SvcMemory 169
10.5 本章小結 172
第11章 unidbg源碼解析:DalvikVM 173
11.1 分析createDalvikVM() 173
11.2 Dvm相關類介紹 178
11.2.1 BaseVM解析 179
11.2.2 DalvikVM解析 184
11.2.3 DvmObject解析 185
11.2.4 DvmClass解析 187
11.3 本章小結 188
第12章 unidbg源碼解析:模擬執行流程追蹤 189
12.1 編寫含JNI交互的MD5算法並模擬執行 189
12.1.1 編寫含JNI交互的so 189
12.1.2 使用unidbg進行模擬執行 190
12.2 模擬執行流程追蹤:尋找函數 192
12.3 模擬執行流程追蹤:處理參數並模擬執行 195
12.4 本章小結 202
第13章 unidbg源碼解析:JNI交互流程追蹤 203
13.1 JNI註冊 203
13.2 JNI指令執行 208
13.3 本章小結 217
第14章 unidbg源碼解析:Memory 218
14.1 Memory模塊的創建 218
14.2 AndroidElfLoader的方法實現 219
14.2.1 內存相關方法實現 219
14.2.2 棧空間相關方法實現 226
14.2.3 用戶常用方法解析 227
14.2.4 虛擬模塊 230
14.3 加載so的loader功能 231
14.4 本章小結 237
第15章 unidbg源碼解析:Hook 238
