《黑客攻防技術寶典:反病毒篇》是2017年人民郵電出版社出版的圖書,作者是霍克西恩·科雷特(Joxean Koret)。
基本介紹
- 中文名:黑客攻防技術寶典:反病毒篇
- 作者:霍克西恩·科雷特(Joxean Koret)
- 出版時間:2017年8月1日
- 出版社:人民郵電出版社
- ISBN:9787115463333
內容簡介,圖書目錄,
內容簡介
本書由業界知名安全技術人員撰寫,系統介紹了逆向工程反病毒軟體。主要內容包括:反病毒軟體所採納的各種具體手段,攻擊和利用防毒軟體的多種常見方法,防毒軟體市場現狀以及未來市場預估。
本書是逆向工程師、滲透測試工程師、安全技術人員和軟體開發人員的必讀指南。
圖書目錄
第一部分 反病毒技術入門
第1章 反病毒軟體入門 2
1.1 何謂反病毒軟體 2
1.2 反病毒軟體的歷史與現狀 2
1.3 反病毒掃描器、核心和產品 3
1.4 反病毒軟體的典型誤區 4
1.5 反病毒軟體功能 5
1.5.1 基礎功能 5
1.5.2 高級功能 8
1.6 總結 10
第2章 逆向工程核心 11
2.1 逆向分析工具 11
2.1.1 命令行工具與GUI工具 11
2.1.2 調試符號 12
2.1.3 提取調試符號的技巧 13
2.2 調試技巧 16
2.3 移植核心 22
2.4 實戰案例:為Linux版Avast編寫Python binding 23
2.4.1 Linux版Avast簡介 23
2.4.2 為Linux版Avast編寫簡單的Python binding 25
2.4.3 Python binding的最終版本 30
2.5 實戰案例:為Linux版Comodo編寫本機C/C++工具 30
2.6 核心載入的其他部分 46
2.7 總結 47
第3章 外掛程式系統 48
3.1 外掛程式載入原理 48
3.1.1 反病毒軟體的全功能連結器 49
3.1.2 理解動態載入 49
3.1.3 外掛程式打包方式的利弊 50
3.2 反病毒外掛程式的種類 52
3.2.1 掃描器和通用偵測程式 52
3.2.2 支持檔案格式和協定 53
3.2.3 啟發式檢測 54
3.3 高級外掛程式 57
3.3.1 記憶體掃描器 57
3.3.2 非本機代碼 58
3.3.3 腳本語言 59
3.3.4 模擬器 60
3.4 總結 61
第4章 反病毒特徵碼技術 62
4.1 典型特徵碼 62
4.1.1 位元組流 62
4.1.2 校驗和 63
4.1.3 定製的校驗和 63
4.1.4 加密散列算法 64
4.2 高級特徵碼 64
4.2.1 模糊散列算法 65
4.2.2 基於程式圖的執行檔散列算法 66
4.3 總結 68
第5章 反病毒軟體的更新系統 69
5.1 理解更新協定 69
5.1.1 支持SSL/TLS 70
5.1.2 驗證更新檔案 71
5.2 剖析更新協定 72
5.3 錯誤的保護 79
5.4 總結 79
第二部分 繞過反病毒軟體
第6章 繞過反病毒軟體 82
6.1 誰會使用反病毒軟體的繞過技術 82
6.2 探究反病毒軟體偵測惡意軟體的方式 83
6.2.1 用於偵測惡意軟體的老把戲:分治算法 83
6.2.2 二進制指令和污點分析 88
6.3 總結 89
第7章 繞過特徵碼識別 90
7.1 檔案格式:偏門案例和無文檔說明案例 90
7.2 繞過現實中的特徵碼 91
7.3 繞過特定檔案格式的相關提示和技巧 96
7.3.1 PE檔案 96
7.3.2 JavaScript 98
7.3.3 PDF 100
7.4 總結 102
第8章 繞過掃描器 104
8.1 繞過技術的通用提示和策略 104
8.1.1 識別分析模擬器 105
8.1.2 高級繞過技巧 106
8.2 自動化繞過掃描器 117
8.2.1 初始步驟 117
8.2.2 MultiAV配置 121
8.2.3 peCloak 125
8.2.4 編寫終極工具 126
8.3 總結 128
第9章 繞過啟發式引擎 130
9.1 啟發式引擎種類 130
9.1.1 靜態啟發式引擎 130
9.1.2 繞過簡單的靜態啟發式引擎 131
9.1.3 動態啟發式引擎 137
9.2 總結 142
第10章 確定攻擊面 144
10.1 理解本地攻擊面 145
10.1.1 查找檔案和系統目錄許可權的弱點 145
10.1.2 許可權提升 146
10.2 錯誤的訪問控制列表 146
10.2.1 在Unix平台上利用SUID和SGID二進制檔案漏洞 148
10.2.2 程式和二進制檔案的ASLR和DEP保護 149
10.2.3 利用Windows對象的錯誤許可權 151
10.2.4 利用邏輯缺陷 153
10.3 理解遠程攻擊面 155
10.3.1 檔案解析器 155
10.3.2 通用偵測和感染檔案修復代碼 156
10.3.3 網路服務、管理面板和控制台 156
10.3.4 防火牆、入侵監測系統和解析器 157
10.3.5 更新服務 157
10.3.6 瀏覽器外掛程式 157
10.3.7 安全增強軟體 158
10.4 總結 159
第11章 拒絕服務攻擊 161
11.1 本地拒絕服務攻擊 161
11.1.1 壓縮炸彈 162
11.1.2 檔案格式解析器中的缺陷 165
11.1.3 攻擊核心驅動 165
11.2 遠程拒絕服務攻擊 166
11.2.1 壓縮炸彈 166
11.2.2 檔案格式解析器中的缺陷 167
11.3 總結 167
第三部分 分析與攻擊
第12章 靜態分析 170
12.1 手動二進制審計 170
12.1.1 檔案格式解析器 170
12.1.2 遠程服務 177
12.2 總結 181
第13章 動態分析 182
13.1 模糊測試 182
13.1.1 模糊測試工具是什麼 182
13.1.2 簡單的模糊測試 183
13.1.3 對反病毒產品的自動化模糊測試 185
13.1.4 找到好的模糊測試模版 192
13.1.5 查找模版檔案 194
13.1.6 使代碼覆蓋率最大化 196
13.1.7 模糊測試套組Nightmare 201
13.2 總結 207
第14章 本地攻擊 209
14.1 利用後門和隱藏功能 209
14.2 挖掘非法特權、許可權分配和訪問控制列表 213
14.3 在核心態查找隱蔽的功能特性 217
14.4 更多的核心邏輯漏洞 223
14.5 總結 231
第15章 遠程漏洞 233
15.1 實施客戶端漏洞利用攻擊 233
15.1.1 利用沙盒的缺陷 233
15.1.2 利用ASLR、DEP和位於固定地址的RWX頁面漏洞 234
15.1.3 編寫複雜的payload 235
15.1.4 利用更新服務中的漏洞 240
15.2 伺服器端的漏洞利用 248
15.2.1 客戶端和伺服器端漏洞利用的區別 248
15.2.2 利用ASLR、DEP和地址固定的RWX記憶體頁面相關漏洞 249
15.3 總結 249
第四部分 當前趨勢與建議
第16章 當前反病毒防護趨勢 252
16.1 匹配攻擊技術與目標 252
16.1.1 多種多樣的反病毒產品 252
16.1.2 針對家庭用戶 253
16.1.3 針對中小型公司 254
16.2 針對政府機構和大型公司 254
16.3 總結 255
第17章 一些建議和未來展望 256
17.1 給反病毒軟體用戶的建議 256
17.1.1 盲目信任是錯誤的 256
17.1.2 隔離機器來增強防護 260
17.1.3 審計反病毒產品 261
17.2 給反病毒廠商的建議 261
17.2.1 優秀的工程師並不代表安全 261
17.2.2 利用反病毒軟體的漏洞很簡單 262
17.2.3 進行審計 262
17.2.4 模糊測試 262
17.2.5 安全地使用許可權 263
17.2.6 減少解析器中的危險代碼 263
17.2.7 改進升級服務和協定的安全性 264
17.2.8 刪除或禁用舊代碼 264
17.3 總結 265