逆向分析實戰(第2版)( 簡體 字) | |
作者:冀云 | 類別:1. -> 程式設計 -> 綜合 |
出版社:人民郵電出版社 | 3dWoo書號: 55996 詢問書籍請說出此書號! 缺書 NT售價: 500 元 |
出版日:9/1/2022 | |
頁數:371 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787115590701 | 【不接受訂購】 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第 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 在OllyDbg中查看數據 6 1.4 編程判斷主機字節序 11 1.4.1 字節序相關函數 11 1.4.2 編程判斷主機字節序 11 1.5 總結 12 第 2章 匯編語言入門 13 2.1 x86匯編語言介紹 13 2.1.1 寄存器 13 2.1.2 在OD中認識寄存器 17 2.2 常用匯編指令集 19 2.2.1 指令介紹 19 2.2.2 常用指令介紹 20 2.3 尋址方式 35 2.4 總結 36 第3章 熟悉調試工具OD 37 3.1 認識OD調試環境 37 3.1.1 啟動調試 37 3.1.2 熟悉OD窗口 39 3.2 OD中的斷點及跟蹤功能 44 3.2.1 OD中設置斷點的方法 44 3.2.2 OD中跟蹤代碼的方法 50 3.3 OD中的查找功能和編輯功能 51 3.3.1 OD中的查找功能 51 3.3.2 OD中的修改和保存功能 52 3.4 OD中的插件功能 53 3.4.1 OD的常用插件介紹 53 3.4.2 OD插件腳本編寫 55 3.4.3 OD插件的開發 56 3.5 總結 61 第4章 PE工具詳解 62 4.1 常用PE工具介紹 62 4.1.1 PE工具 62 4.1.2 Stud_PE工具 63 4.1.3 PEiD工具 64 4.1.4 LordPE工具 64 4.2 PE文件格式詳解 65 4.2.1 PE文件格式概述 66 4.2.2 詳解PE文件格式 68 4.2.3 PE文件格式的3種地址 82 4.3 數據目錄相關結構詳解 88 4.3.1 導入表 88 4.3.2 導出表 101 4.3.3 重定位表 107 4.4 總結 115 第5章 PE文件格式實例 116 5.1 手寫PE文件 116 5.1.1 手寫PE文件的準備工作 116 5.1.2 用十六進制字節完成PE文件 117 5.2 手動壓縮PE文件 129 5.2.1 修改壓縮節區 129 5.2.2 節表合并 132 5.2.3 結構重疊 137 5.3 PE文件格式相關工具 145 5.3.1 增加節區 145 5.3.2 資源編輯 146 5.4 加殼與脫殼工具 151 5.4.1 什么是殼 151 5.4.2 簡單殼的原理 151 5.4.3 加殼工具與脫殼工具的使用 162 5.5 PE32+簡介 175 5.5.1 文件頭 175 5.5.2 可選頭 175 5.6 總結 177 第6章 十六進制編輯器與反編譯工具 178 6.1 C32Asm 178 6.1.1 文件的打開方式 178 6.1.2 反匯編模式 180 6.1.3 十六進制模式 184 6.2 WinHex 188 6.2.1 內存搜索功能 188 6.2.2 使用模板解析數據 191 6.2.3 完成一個簡單的模板 193 6.3 其他十六進制編輯器 194 6.3.1 UltraEdit簡介 195 6.3.2 010 Editor簡介 195 6.4 反編譯工具介紹 196 6.4.1 DeDe反編譯工具 197 6.4.2 VB反編譯工具 200 6.4.3 .NET反編譯工具 202 6.4.4 Java反編譯工具 204 6.5 總結 205 第7章 IDA與逆向 206 7.1 IDA工具介紹 206 7.1.1 IDA的啟動與關閉 206 7.1.2 IDA常用界面介紹 209 7.1.3 IDA的腳本功能 221 7.2 C語言代碼逆向基礎 224 7.2.1 函數的識別 224 7.2.2 if…else…結構分析 234 7.2.3 switch…case…default結構分析 237 7.2.4 循環結構分析 239 7.3 總結 243 第8章 逆向工具的原理及實現 244 8.1 PE工具的開發 244 8.1.1 GetProcAddress函數的使用 244 8.1.2 GetProcAddress函數的實現 245 8.2 調試工具的開發 249 8.2.1 常見的3種斷點 249 8.2.2 調試API函數及相關結構體 253 8.2.3 打造一個密碼顯示器 263 8.3 總結 267 第9章 安卓逆向分析 268 9.1 安卓開發環境的搭建 268 9.1.1 JDK的安裝 268 9.1.2 Android Studio的安裝 269 9.1.3 Android虛擬設備的創建 270 9.2 創建第 一個Android App 272 9.2.1 創建一個HelloWorld程序 273 9.2.2 Android項目結構簡介 275 9.2.3 為Android程序添加簡單的功能 275 9.3 簡單逆向安卓程序 280 9.3.1 Android Killer工具 280 9.3.2 修改app-release文件 281 9.4 Android Studio調試Smali代碼 285 9.4.1 Smalidea插件的安裝 285 9.4.2 調試Smali代碼 286 9.5 Android App其他逆向工具簡介 288 9.5.1 JEB工具 289 9.5.2 jadx工具 291 9.5.3 Android逆向助手 292 9.6 總結 293 第 10章 DEX文件格式解析 294 10.1 DEX文件解析 294 10.1.1 準備一個待解析的DEX文件 294 10.1.2 DEX文件格式詳解 297 10.2 實現DEX文件格式解析工具 324 10.2.1 解析工具所需的結構體 324 10.2.2 解析DEX文件 325 10.3 小結 341 第 11章 Dalvik指令解析 342 11.1 Smali文件結構 342 11.1.1 文件結構 342 11.1.2 數據類型 345 11.1.3 函數定義 346 11.2 Smali指令介紹 346 11.2.1 Smali格式介紹 346 11.2.2 常用指令分類 348 11.2.3 代碼閱讀 350 11.3 完成DEX文件格式最后部分的解析 355 11.3.1 DexCode結構體的回顧 355 11.3.2 字節碼轉Smali指令 356 11.3.3 反匯編功能的實現 360 11.4 總結 371 參考文獻 372 黑客編程和逆向分析是計算機安全從業者需要掌握的兩項基本功,隨著各大企業對安全技術的日益重視,工程師在這方面的學習需求也在持續增長。
本書共11章,既包括黑客編程的內容,如數據的存儲及表示形式、匯編語言入門;又包括逆向分析的知識,如熟悉調試工具OD、PE工具詳解、PE文件格式實例(包括加殼與脫殼工具的使用)、十六進制編輯器與反編譯工具、IDA與逆向、逆向工具的原理及實現、安卓逆向分析。此外,本書還介紹了計算機安全的新技術,如DEX文件格式解析和Dalvik指令解析等。 本書既可以作為網絡編程人員、安全技術研究人員和安全技術愛好者的參考書,又可以作為大專院校計算機相關專業的教學用書或相關培訓機構的教材。 |