[Python灰帽子-黑客與逆向工程師的Python編程之道]PDF高清版免費下載地址
提取碼:76aw

內容簡介 · · · · · ·
《Python灰帽子》是由知名安全機構Immunity Inc的資深黑帽Justin Seitz主筆撰寫的一本關于編程語言Python如何被廣泛應用于黑客與逆向工程領域的書籍,老牌黑客,同時也是Immunity Inc的創始人兼首席技術執行官(CTO)Dave Aitel為這本書擔任了技術編輯一職,書中絕大部分篇幅著眼于黑客技術領域中的兩大經久不衰的話題:逆向工程與漏洞挖掘,并向讀者呈現了幾乎每個逆向工程師或安全研究人員在日常作業中所面臨的各種場景,其中包括:如何設計與構建自己的除錯工具,如何自動化實作煩瑣的逆向分析任務,如何設計與構建自己的fuzzing工具,如何利用fuzzing 測驗來找出存在于軟體產品中的安全漏洞,一些小技巧諸如鉤子與注入技術的應用,以及對一些主流Python安全工具如PyDbg、 Immunity Debugger、Sulley、IDAPython、PyEmu等的深入介紹,作者借助于如今黑客社區中備受青睞的編程語言 Python引領讀者構建出精悍的腳本程式來一一應對上述這些問題,出現在書中的相當一部分Python代碼實體借鑒或直接來源于一些優秀的開源安全專案,諸如Pedram Amini的Paimei,由此讀者可以領略到安全研究者們是如何將黑客藝術與工程技術優雅融合來解決那些棘手問題的,
作者簡介 · · · · · ·
Justin Seitz是一名Immunity公司的高級安全研究員,他在以往的作業中花費了大量的時間從事漏洞挖掘、逆向工程、撰寫漏洞利用以及撰寫Python代碼的研究,
目錄 · · · · · ·
第1章 搭建開發環境 11.1 作業系統要求 1
1.2 獲取和安裝Python 2.5 2
1.2.1 在Windows下安裝Python 2
1.2.2 在Linux下安裝Python 2
1.3 安裝Eclipse和PyDev 4
1.3.1 黑客摯友:ctype庫 5
1.3.2 使用元件 6
1.3.3 構建C資料型別 8
1.3.4 按參考傳參 9
1.3.5 定義結構體和聯合體 9
第2章 除錯器原理和設計 12
2.1 通用暫存器 13
2.2 堆疊 15
2.3 除錯事件 17
2.4 斷點 18
2.4.1 軟斷點 18
2.4.2 硬體斷點 20
2.4.3 記憶體斷點 22
第3章 構建自己的Windows除錯器 24
3.1 Debugee,敢問你在何處 24
3.2 獲取暫存器狀態資訊 33
3.2.1 執行緒列舉 34
3.2.2 功能整合 35
3.3 實作除錯事件處理例程 39
3.4 無所不能的斷點 44
3.4.1 軟斷點 44
3.4.2 硬體斷點 49
3.4.3 記憶體斷點 55
3.5 總結 59
第4章 PyDbg——Windows下的純Python除錯器 60
4.1 擴展斷點處理例程 60
4.2 非法記憶體操作處理例程 63
4.3 行程快照 66
4.3.1 獲取行程快照 67
4.3.2 匯總與整合 70
第5章 Immunity Debugger——兩極世界的最佳選擇 74
5.1 安裝Immunity Debugger 74
5.2 Immunity Debugger 101 75
5.2.1 PyCommand命令 76
5.2.2 PyHooks 76
5.3 Exploit(漏洞利用程式)開發 78
5.3.1 搜尋exploit友好指令 78
5.3.2 “壞”字符過濾 80
5.3.3 繞過Windows 下的DEP機制 82
5.4 破除惡意軟體中的反除錯例程 87
5.4.1 IsDebuugerPresent 87
5.4.2 破除行程列舉例程 88
第6章 鉤子的藝術 90
6.1 使用PyDbg部署軟鉤子 90
6.2 使用Immunity Debugger部署硬鉤子 95
第7章 DLL注入與代碼注入技術 101
7.1 創建遠程執行緒 101
7.1.1 DLL注入 102
7.1.2 代碼注入 105
7.2 遁入黑暗 108
7.2.1 檔案隱藏 109
7.2.2 構建后門 110
7.2.3 使用py2exe編譯Python代碼 114
第8章 Fuzzing 117
8.1 幾種常見的bug型別 118
8.1.1 緩沖區溢位 118
8.1.2 整數溢位 119
8.1.3 格式化串攻擊 121
8.2 檔案Fuzzer 122
8.3 后續改進策略 129
8.3.1 代碼覆寫率 129
8.3.2 自動化靜態分析 130
第9章 Sulley 131
9.1 安裝Sulley 132
9.2 Sulley中的基本資料型別 132
9.2.1 字串 133
9.2.2 分隔符 133
9.2.3 靜態和隨機資料型別 134
9.2.4 二進制資料 134
9.2.5 整數 134
9.2.6 塊與組 135
9.3 行刺WarFTPD 136
9.3.1 FTP 101 137
9.3.2 創建FTP協議描述框架 138
9.3.3 Sulley會話 139
9.3.4 網路和行程監控 140
9.3.5 Fuzzing測驗以及Sulley的Web界面 141
第10章 面向Windows驅動的Fuzzing測驗技術 145
10.1 驅動通信基礎 146
10.2 使用Immunity Debugger進行驅動級的Fuzzing測驗 147
10.3 Driverlib——面向驅動的靜態分析工具 151
10.3.1 尋找設備名稱 152
10.3.2 尋找IOCTL分派例程 153
10.3.3 搜尋有效的IOCTL控制碼 155
10.4 構建一個驅動Fuzzer 157
第11章 IDAPython——IDA PRO環境下的Python腳本編程 162
11.1 安裝IDAPython 163
11.2 IDAPython函式 164
11.2.1 兩個工具函式 164
11.2.2 段(Segment) 164
11.2.3 函式 165
11.2.4 交叉參考 166
11.2.5 除錯器鉤子 166
11.3 腳本實體 167
11.3.1 搜尋危險函式的交叉代碼 168
11.3.2 函式覆寫檢測 169
11.3.3 檢測堆疊變數大小 171
第12章 PYEmu——腳本驅動式仿真器 174
12.1 安裝PyEmu 174
12.2 PyEmu概覽 175
12.2.1 PyCPU 175
12.2.2 PyMemory 176
12.2.3 PyEmu 176
12.2.4 指令執行 176
12.2.5 記憶體修改器與暫存器修改器 177
12.2.6 處理例程(Handler) 177
12.3 IDAPyEmu 182
12.3.1 函式仿真 184
12.3.2 PEPyEmu 187
12.3.3 可執行檔案加殼器 188
12.3.4 UPX加殼器 188
12.3.5 利用PEPyEmu脫UPX殼 189




轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/43173.html
標籤:Python
