![](/c49/30/1028713005.jpg)
出版社:人民郵電 ISBN:9787115273680 商品編碼:1028713005 開本:16 出版時間:2012-02-01 代碼:89 作者:伊格爾,譯者:石華耀,段桂菊
" 基本信息 - 商品名稱:IDA Pro**指南(第2版)/圖靈程序設計叢書
- 作者:(美)伊格爾|譯者:石華耀//段桂菊
- 代碼:89
- 出版社:人民郵電
- ISBN號:9787115273680
其他參考信息 - 出版時間:2012-02-01
- 印刷時間:2012-02-01
- 版次:2
- 印次:1
- 開本:16開
- 包裝:平裝
- 頁數:493
- 字數:750千字
編輯推薦語 IDA Pro(交互式反彙編器專業版)是應用*廣泛的靜態反彙編工具,在IT領域有著舉足輕重的地位,但其文檔資料一直都不夠完善。在EIDA Pro開發者Ilfak的協助下問世的《IDA Pro**指南(第2版)》這本書,**地彌補了這一缺憾。伊格爾的理論被業界公認為是**且令人信服的,而他的模擬器也是公開發布的IDA插件中*棒的一款。 《IDA Pro**指南(第2版)》以反彙編與逆向工程的基本信息和IDA Pr0的背景知識開篇,為讀者奠定基礎,緊接著循序漸進地講解IDA Pro的基本使用、**應用、擴展功能及其在安全領域的實際應用。通過閱讀本書,從事逆向工程的讀者一定能迅速掌握IDA Pro的使用方法。 內容提要 伊格爾編著的《IDA Pro**指南(第2版)》共分為六部分,首先介紹 了反彙編與逆向工程的基本信息和IDA Pro的背景知識,接著討論了IDA Pro 的基本用法和**用法,然後講解了其高擴展性及其在安全領域的實際應用 ,*後介紹了IDA的內置調試器(包括Bochs調試器),一方面讓用戶對IDA Pro有全面深入的了解,另一方面讓讀者掌握IDA Pro在現實中的應用。相比 上一版,這一版以IDA6.0為基礎,介紹了它的新的、基於Qt的圖形用戶界面 ,以及IDAPython插件。 《IDA Pro**指南(第2版)》適合IT領域的所有安全工作者閱讀。 作者簡介 Chris Eagle是美國加利福尼亞州蒙特雷海軍研究生院計算機科學繫**講師。他設計了很多IDA插件,還與人合著了Gray Hat Hacking一書。他應邀在Balckhat、Defcon、Toorcon和Shmoocon等眾多安全會議上發表過演講。 目錄 **部分 IDA簡介 **章 反彙編簡介 1.1 反彙編理論 1.2 何為反彙編 1.3 為何反彙編 1.3.1 分析惡意軟件 1.3.2 漏洞分析 1.3.3 軟件互操作性 1.3.4 編譯器驗證 1.3.5 顯示調試信息 1.4 如何反彙編 1.4.1 基本的反彙編算法 1.4.2 線性掃描反彙編 1.4.3 遞歸下降反彙編 1.5 小結 第2章 逆向與反彙編工具 2.1 分類工具 2.1.1 file 2.1.2 PE Tools 2.1.3 PEiD 2.2 摘要工具 2.2.1 nm 2.2.2 ldd 2.2.3 objdump 2.2.4 otool 2.2.5 dumpbin 2.2.6 c++filt 2.3 深度檢測工具 2.3.1 strings 2.3.2 反彙編器 2.4 小結 第3章 IDA Pro背景知識 3.1 Hex-Rays公司的反盜版策略 3.2 獲取IDA Pro 3.2.1 IDA版本 3.2.2 IDA許可證 3.2.3 購買IDA 3.2.4 升級IDA 3.3 IDA支持資源 3.4 安裝IDA 3.4.1 Windows安裝 3.4.2 OS X和Linux安裝 3.4.3 IDA與SELinux 3.4.4 32位IDA與64位IDA 3.4.5 IDA目錄的結構 3.5 IDA用戶界面 3.6 小結 第二部分 IDA基本用法 第4章 IDA入門 4.1 啟動IDA 4.1.1 IDA文件加載 4.1.2 使用二進制文件加載器 4.2 IDA數據庫文件 4.2.1 創建IDA數據庫 4.2.2 關閉IDA數據庫 4.2.3 重新打開數據庫 4.3 IDA桌面簡介 4.4 初始分析時的桌面行為 4.5 IDA桌面提示和技巧 4.6 報告bug 4.7 小結 第5章 IDA數據顯示窗口 5.1 IDA主要的數據顯示窗口 5.1.1 反彙編窗口 5.1.2 函數窗口 5.1.3 輸出窗口 5.2 次要的IDA顯示窗口 5.2.1 十六進制窗口 5.2.2 導出窗口 5.2.3 導入窗口 5.2.4 結構體窗口 5.2.5 枚舉窗口 5.3 其他IDA顯示窗口 5.3.1 Strings 窗口 5.3.2 Names 窗口 5.3.3 段窗口 5.3.4 簽名窗口 5.3.5 類型庫窗口 5.3.6 函數調用窗口 5.3.7 問題窗口 5.4 小結 第6章 反彙編導航 6.1 基本IDA導航 6.1.1 雙擊導航 6.1.2 跳轉到地址 6.1.3 導航歷史記錄 6.2 棧幀 6.2.1 調用約定 6.2.2 局部變量布局 6.2.3 棧幀示例 6.2.4 IDA棧視圖 6.3 搜索數據庫 6.3.1 文本搜索 6.3.2 二進制搜索 6.4 小結 第7章 反彙編操作 7.1 名稱與命名 7.1.1 參數和局部變量 7.1.2 已命名的位置 7.1.3 寄存器名稱 7.2 IDA中的注釋 7.2.1 常規注釋 7.2.2 可重復注釋 7.2.3 在前注釋和在後注釋 7.2.4 函數注釋 7.3 基本代碼轉換 7.3.1 代碼顯示選項 7.3.2 格式化指令操作數 7.3.3 操縱函數 7.3.4 數據與代碼互相轉換 7.4 基本數據轉換 7.4.1 指定數據大小 7.4.2 處理字符串 7.4.3 指定數組 7.5 小結 第8章 數據類型與數據結構 8.1 識別數據結構的用法 8.1.1 數組成員訪問 8.1.2 結構體成員訪問 8.2 創建IDA結構體 8.2.1 創建一個新的結構體(或聯合) 8.2.2 編輯結構體成員 8.2.3 用棧幀作為專用結構體 8.3 使用結構體模板 8.4 導入新的結構體 8.4.1 解析C結構體聲明 8.4.2 解析C頭文件 8.5 使用標準結構體 8.6 IDA TIL文件 8.6.1 加載新的TIL文件 8.6.2 共享TIL文件 8.7 C++逆向工程基礎 8.7.1 this指針 8.7.2 虛函數和虛表 8.7.3 對像生命周期 8.7.4 名稱改編 8.7.5 運行時類型識別 8.7.6 繼承關繫 8.7.7 C++逆向工程參考文獻 8.8 小結 第9章 交叉引用與繪圖功能 9.1 交叉引用 9.1.1 代碼交叉引用 9.1.2 數據交叉引用 9.1.3 交叉引用列表 9.1.4 函數調用 9.2 IDA繪圖 9.2.1 IDA外部(第三方)圖形 9.2.2 IDA的集成繪圖視圖 9.3 小結 **0章 IDA的多種面孔 10.1 控制臺模式IDA 10.1.1 控制臺模式的共同特性 10.1.2 Windows控制臺 10.1.3 Linux控制臺 10.1.4 OS X控制臺 10.2 使用IDA的批量模式 10.3 小結 第三部分 IDA**應用 **1章 定制IDA 11.1 配置文件 11.1.1 主配置文件:ida.cfg 11.1.2 GUI配置文件:idagui.cfg 11.1.3 控制臺配置文件:idatui.cfg 11.2 其他IDA配置選項 11.2.1 IDA顏色 11.2.2 定制IDA工具欄 11.3 小結 **2章 使用FLIRT簽名來識別庫 12.1 快速庫識別和鋻定技術 12.2 應用FLIRT簽名 12.3 創建FLIRT簽名文件 12.3.1 創建簽名概述 12.3.2 識別和獲取靜態庫 12.3.3 創建模式文件 12.3.4 創建簽名文件 12.3.5 啟動簽名 12.4 小結 **3章 擴展IDA的知識 13.1 擴充函數信息 13.1.1 IDS文件 13.1.2 創建IDS文件 13.2 使用loadint擴充預定義注釋 13.3 小結 **4章 修補二進制文件及其他IDA限制 14.1 隱藏的補丁程序菜單 14.1.1 *改數據庫字節 14.1.2 *改數據庫中的字 14.1.3 使用彙編對話框 14.2 IDA輸出文件與補丁生成 14.2.1 IDA生成的MAP文件 14.2.2 IDA生成的ASM文件 14.2.3 IDA生成的INC文件 14.2.4 IDA生成的LST文件 14.2.5 IDA生成的EXE文件 14.2.6 IDA生成的DIF文件 14.2.7 IDA生成的HTML文件 14.3 小結 第四部分 擴展IDA的功能 **5章 編寫IDA腳本 15.1 執行腳本的基礎知識 15.2 IDC語言 15.2.1 IDC變量 15.2.2 IDC表達式 15.2.3 IDC語句 15.2.4 IDC函數 15.2.5 IDC對像 15.2.6 IDC程序 15.2.7 IDC錯誤處理 15.2.8 IDC**數據存儲 15.3 關聯IDC腳本與熱鍵 15.4 有用的IDC函數 15.4.1 讀取和修改數據的函數 15.4.2 用戶交互函數 15.4.3 字符串操縱函數 15.4.4 文件輸入/輸出函數 15.4.5 操縱數據庫名稱 15.4.6 處理函數的函數 15.4.7 代碼交叉引用函數 15.4.8 數據交叉引用函數 15.4.9 數據庫操縱函數 15.4.10 數據庫搜索函數 15.4.11 反彙編行組件 15.5 IDC腳本示例 15.5.1 枚舉函數 15.5.2 枚舉指令 15.5.3 枚舉交叉引用 15.5.4 枚舉導出的函數 15.5.5 查找和標記函數參數 15.5.6 模擬彙編語言行為 15.6 IDAPython 15.7 IDAPython腳本示例 15.7.1 枚舉函數 15.7.2 枚舉指令 15.7.3 枚舉交叉引用 15.7.4 枚舉導出的函數 15.8 小結 **6章 IDA軟件開發工具包 16.1 SDK簡介 16.1.1 安裝SDK 16.1.2 SDK的布局 16.1.3 配置構建環境 16.2 IDA應用編程接口 16.2.1 頭文件概述 16.2.2 網絡節點 16.2.3 有用的SDK數據類型 16.2.4 常用的SDK函數 16.2.5 IDA API迭代技巧 16.3 小結 **7章 IDA插件體繫結構 17.1 編寫插件 17.1.1 插件生命周期 17.1.2 插件初始化 17.1.3 事件通知 17.1.4 插件執行 17.2 構建插件 17.3 插件安裝 17.4 插件配置 17.5 擴展IDC 17.6 插件用戶界面選項 17.6.1 使用SDK的“選擇器”對話框 17.6.2 使用SDK創建自定義表單 17.6.3 僅用於Windows的用戶界面生成技巧 17.6.4 使用Qt生成用戶界面 17.7 腳本化插件 17.8 小結 **8章 二進制文件與IDA加載器模塊 18.1 未知文件分析 18.2 手動加載一個Windows PE文件 18.3 IDA加載器模塊 18.4 使用SDK編寫IDA加載器 18.4.1 “傻瓜式”加載器 18.4.2 構建IDA加載器模塊 18.4.3 IDA pcap加載器 18.5 其他加載器策略 18.6 編寫腳本化加載器 18.7 小結 **9章 IDA處理器模塊 19.1 Python字節碼 19.2 Python解釋器 19.3 使用SDK編寫處理器模塊 19.3.1 processor_t結構體 19.3.2 LPH 結構體的基本初始化 19.3.3 分析器 19.3.4 模擬器 19.3.5 輸出器 19.3.6 處理器通知 19.3.7 其他processor_t成員 19.4 構建處理器模塊 19.5 定制現有的處理器 19.6 處理器模塊體繫結構 19.7 編寫處理器模塊 19.8 小結 第五部分 實際應用 第20章 編譯器變體 20.1 跳轉表與分支語句 20.2 RTTI實現 20.3 定位main函數 20.4 調試版與發行版二進制文件 20.5 其他調用約定 20.6 小結 第21章 模糊代碼分析 21.1 反靜態分析技巧 21.1.1 反彙編去同步 21.1.2 動態計算目標地址 21.1.3 導入的函數模糊 21.1.4 有針對性地攻擊分析工具 21.2 反動態分析技巧 21.2.1 檢測虛擬化 21.2.2 檢測“檢測工具” 21.2.3 檢測調試器 21.2.4 防止調試 21.3 使用IDA對二進制文件進行“靜態去模糊” 21.3.1 面向腳本的去模糊 21.3.2 面向模擬的去模糊 21.4 基於虛擬機的模糊 21.5 小結 第22章 漏洞分析 22.1 使用IDA發現新的漏洞 22.2 使用IDA在事後發現漏洞 22.3 IDA與破解程序開發過程 22.3.1 棧幀細目 22.3.2 定位指令序列 22.3.3 查找有用的虛擬地址 22.4 分析shellcode 22.5 小結 第23章 實用IDA插件 23.1 Hex-Rays 23.2 IDAPython 23.3 collabREate 23.4 ida-x86emu 23.5 Class Informer 23.6 MyNav 23.7 IdaPdf 23.8 小結 第六部分 IDA調試器 第24章 IDA調試器 24.1 啟動調試器 24.2 調試器的基本顯示 24.3 進程控制 24.3.1 斷點 24.3.2 跟蹤 24.3.3 棧跟蹤 24.3.4 監視 24.4 調試器任務自動化 24.4.1 為調試器操作編寫腳本 24.4.2 使用IDA插件實現調試器操作自動化 24.5 小結 第25章 反彙編器/調試器集成 25.1 背景知識 25.2 IDA數據庫與IDA調試器 25.3 調試模糊代碼 25.3.1 啟動進程 25.3.2 簡單的解密和解壓循環 25.3.3 導入表重建 25.3.4 隱藏調試器 25.4 IDAStealth 25.5 處理異常 25.6 小結 第26章 其他調試功能 26.1 使用IDA進行遠程調試 26.1.1 使用Hex-Rays調試服務器 26.1.2 連接到遠程進程 26.1.3 遠程調試期間的異常處理 26.1.4 在遠程調試過程中使用腳本和插件 26.2 使用Bochs進行調試 26.2.1 Bochs IDB模式 26.2.2 Bochs PE模式 26.2.3 Bochs磁盤映像模式 26.3 Appcall 26.4 小結 附錄A 使用IDA免費版本5.0 附錄B IDC/SDK交叉引用
" |