注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡信息安全基于數(shù)據(jù)科學的惡意軟件分析

基于數(shù)據(jù)科學的惡意軟件分析

基于數(shù)據(jù)科學的惡意軟件分析

定 價:¥79.00

作 者: [美] 約書亞·薩克斯(Joshua Saxe) 著,何能強 嚴寒冰 譯 譯
出版社: 機械工業(yè)出版社
叢編項: 網(wǎng)絡空間安全技術(shù)叢書
標 簽: 暫缺

ISBN: 9787111646525 出版時間: 2020-03-01 包裝: 平裝
開本: 16開 頁數(shù): 248 字數(shù):  

內(nèi)容簡介

  每年都有數(shù)百萬個惡意軟件文件被創(chuàng)建,每天都會產(chǎn)生大量與安全相關(guān)的數(shù)據(jù),安全已經(jīng)成為一個“大數(shù)據(jù)”問題。所以,當防范惡意軟件時,為什么不像數(shù)據(jù)科學家那樣思考呢?在本書中,安全數(shù)據(jù)科學家約書亞·薩克斯和希拉里·桑德斯展示了在構(gòu)建自己的檢測和情報系統(tǒng)時,如何應用機器學習、統(tǒng)計和數(shù)據(jù)可視化等技術(shù)。在概述了靜態(tài)和動態(tài)分析等基礎(chǔ)逆向工程概念之后,你將學習如何度量惡意軟件樣本中的代碼相似性,并使用scikit-learn和Keras等機器學習框架構(gòu)建和訓練你自己的檢測器。通過閱讀本書,你將學習如何: 通過共享代碼分析,識別由相同攻擊組織編寫的新惡意軟件通過建立自己的機器學習檢測系統(tǒng)來捕獲0day惡意軟件使用ROC曲線來度量惡意軟件檢測器的準確性,以幫助你選擇解決安全問題的途徑使用數(shù)據(jù)可視化技術(shù)來識別和探討惡意軟件攻擊活動、演變趨勢和相互關(guān)系使用Python實現(xiàn)基于深度神經(jīng)網(wǎng)絡的檢測系統(tǒng)無論你是一位想要為現(xiàn)有武器庫豐富能力的惡意軟件分析師,還是一位對攻擊檢測和威脅情報感興趣的數(shù)據(jù)科學家,本書都將幫助你保持領(lǐng)先地位。

作者簡介

  約書亞·薩克斯(Joshua Saxe)是專業(yè)安全企業(yè)Sophos的首席數(shù)據(jù)科學家,他在Sophos公司負責領(lǐng)導一個安全數(shù)據(jù)科學研究團隊。他還是Sophos公司基于神經(jīng)網(wǎng)絡的惡意軟件檢測器的主要發(fā)明者,它可以保護數(shù)以千萬計的Sophos客戶防范惡意軟件。在加入Sophos之前,他花了5年時間來管理美國國防高級研究計劃局資助的美國政府安全數(shù)據(jù)研究項目。希拉里??桑德斯(Hillary Sanders)是Sophos公司的高級軟件工程師和數(shù)據(jù)科學家,她在為Sophos公司發(fā)明和產(chǎn)品化神經(jīng)網(wǎng)絡、機器學習和惡意軟件相似性分析安全技術(shù)方面發(fā)揮了關(guān)鍵作用。在加入Sophos之前,希拉里是Premise數(shù)據(jù)公司的數(shù)據(jù)科學家。她經(jīng)常在Black Hat USA和BSides Las Vegas等安全會議上發(fā)表演講。

圖書目錄

目  錄
譯者序

前言
致謝
作者簡介
評審專家簡介
第1章 惡意軟件靜態(tài)分析基礎(chǔ) 1
1.1 微軟Windows可移植可執(zhí)行文件格式 2
1.1.1 PE頭 3
1.1.2 可選頭 3
1.1.3 節(jié)頭 3
1.2 使用pef?ile解析PE文件格式 5
1.3 檢查惡意軟件的圖片 7
1.4 檢查惡意軟件的字符串 8
1.4.1 使用字符串程序 8
1.4.2 分析鏡像字符串 8
1.5 小結(jié) 10
第2章 基礎(chǔ)靜態(tài)分析進階:x86反匯編 11
2.1 反匯編方法 11
2.2 x86匯編語言基礎(chǔ) 12
2.2.1 CPU寄存器 13
2.2.2 算術(shù)指令 14
2.2.3 數(shù)據(jù)傳送指令 15
2.3 使用peffile和capstone反匯編ircbot.exe 19
2.4 限制靜態(tài)分析的因素 21
2.4.1 加殼 21
2.4.2 資源混淆 22
2.4.3 反匯編技術(shù) 22
2.4.4 動態(tài)下載數(shù)據(jù) 22
2.5 小結(jié) 23
第3章 動態(tài)分析簡介 24
3.1 為什么使用動態(tài)分析 24
3.2 惡意軟件數(shù)據(jù)科學的動態(tài)分析 25
3.3 動態(tài)分析的基本工具 25
3.3.1 典型的惡意軟件行為 26
3.3.2 在malwr.com上加載文件 26
3.3.3 在malwr.com上分析結(jié)果 27
3.4 基本動態(tài)分析的局限 32
3.5 小結(jié) 32
第4章 利用惡意軟件網(wǎng)絡識別攻擊活動 33
4.1 節(jié)點和邊 34
4.2 二分網(wǎng)絡 35
4.3 惡意軟件網(wǎng)絡可視化 37
4.3.1 失真問題 37
4.3.2 力導向算法 38
4.4 使用NetworkX構(gòu)建網(wǎng)絡 38
4.5 添加節(jié)點和邊 39
4.5.1 添加屬性 40
4.5.2 將網(wǎng)絡保存到磁盤 41
4.6 使用GraphViz實現(xiàn)網(wǎng)絡可視化 41
4.6.1 使用參數(shù)調(diào)整網(wǎng)絡 42
4.6.2 GraphViz命令行工具 43
4.6.3 向節(jié)點和邊添加可視屬性 47
4.7 構(gòu)建惡意軟件網(wǎng)絡 50
4.8 構(gòu)建共享圖像關(guān)系網(wǎng)絡 53
4.9 小結(jié) 57
第5章 共享代碼分析 58
5.1 通過特征提取對樣本進行比較 61
5.1.1 特征袋模型如何工作 61
5.1.2 N-gram 62
5.2 使用Jaccard系數(shù)量化相似性 63
5.3 使用相似性矩陣評價惡意軟件共享代碼估計方法 65
5.3.1 基于指令序列的相似性 66
5.3.2 基于字符串的相似性 68
5.3.3 基于導入地址表的相似性 69
5.3.4 基于API動態(tài)調(diào)用的相似性 70
5.4 構(gòu)建相似圖 71
5.5 擴展相似性比較 76
5.5.1 minhash概述 77
5.5.2 minhash詳述 77
5.6 構(gòu)建持續(xù)的惡意軟件相似性搜索系統(tǒng) 79
5.7 運行相似性搜索系統(tǒng) 84
5.8 小結(jié) 86
第6章 理解基于機器學習的惡意軟件檢測方法 87
6.1 基于機器學習的檢測引擎構(gòu)建步驟 88
6.1.1 收集訓練樣本 88
6.1.2 提取特征 89
6.1.3 設(shè)計好的特征 90
6.1.4 訓練機器學習系統(tǒng) 90
6.1.5 測試機器學習系統(tǒng) 91
6.2 理解特征空間和決策邊界 91
6.3 是什么決定了模型的好和壞:過擬合與欠擬合 96
6.4 機器學習算法的主要類型 99
6.4.1 邏輯回歸 100
6.4.2 k近鄰算法 103
6.4.3 決策樹 106
6.4.4 隨機森林 112
6.5 小結(jié) 114
第7章 評價惡意軟件檢測系統(tǒng) 115
7.1 四種可能的檢測結(jié)果 115
7.1.1 檢出率和誤報率 116
7.1.2 檢出率和誤報率之間的關(guān)系 117
7.1.3 ROC曲線 118
7.2 在評價中考慮基準率 119
7.2.1 基準率如何影響精確度 120
7.2.2 在部署環(huán)境中評價精確度 120
7.3 小結(jié) 122
第8章 構(gòu)建基于機器學習的檢測器 123
8.1 術(shù)語和概念 124
8.2 構(gòu)建一個基于決策樹的檢測器雛形 125
8.2.1 訓練你的決策樹分類器 126
8.2.2 可視化決策樹 127
8.2.3 完整的示例代碼 129
8.3 使用sklearn構(gòu)建實際的機器學習檢測器 130
8.3.1 實際的特征提取 130
8.3.2 為什么不能使用所有可能的特征 134
8.3.3 使用哈希技巧壓縮特征 134
8.4 構(gòu)建工業(yè)級的檢測器 138
8.4.1 特征提取 138
8.4.2 訓練檢測器 139
8.4.3 運行檢測器檢測新的二進制文件 141
8.4.4 至此我們實現(xiàn)了什么 142
8.5 評價檢測器的性能 144
8.5.1 使用ROC曲線評價檢測器的功效 144
8.5.2 計算ROC曲線 144
8.5.3 將數(shù)據(jù)拆分為訓練集和測試集 146
8.5.4 計算ROC曲線 147
8.5.5 交叉驗證 148
8.6 下一步工作 151
8.7 小結(jié) 152
第9章 可視化惡意軟件趨勢 153
9.1 為什么可視化惡意軟件數(shù)據(jù)很重要 153
9.2 理解我們的惡意軟件數(shù)據(jù)集 155
9.2.1 將數(shù)據(jù)加載到pandas中 156
9.2.2 使用pandas DataFrame 157
9.2.3 使用條件過濾數(shù)據(jù) 159
9.3 使用matplotlib可視化數(shù)據(jù) 160
9.3.1 繪制惡意軟件大小和反病毒引擎檢測之間的關(guān)系 161
9.3.2 繪制勒索軟件檢出率 162
9.3.3 繪制勒索軟件和蠕蟲檢測率 163
9.4 使用seaborn可視化數(shù)據(jù) 166
9.4.1 繪制反病毒引擎檢出的分布圖 167
9.4.2 創(chuàng)建小提琴圖 170
9.5 小結(jié) 172
第10章 深度學習基礎(chǔ) 173
10.1 深度學習的定義 174
10.2 神經(jīng)網(wǎng)絡是如何工作的 175
10.2.1 神經(jīng)元剖析 175
10.2.2 神經(jīng)元網(wǎng)絡 178
10.2.3 通用近似定理 178
10.2.4 構(gòu)建自己的神經(jīng)網(wǎng)絡 179
10.2.5 向網(wǎng)絡中添加一個新的神經(jīng)元 182
10.2.6 自動生成特征 184
10.3 訓練神經(jīng)網(wǎng)絡 185
10.3.1 利用后向傳播優(yōu)化神經(jīng)網(wǎng)絡 186
10.3.2 路徑爆炸 188
10.3.3 梯度消失 189
10.4 神經(jīng)網(wǎng)絡的類型 189
10.4.1 前饋神經(jīng)網(wǎng)絡 189
10.4.2 卷積神經(jīng)網(wǎng)絡 190
10.4.3 自編碼神經(jīng)網(wǎng)絡 191
10.4.4 生成式對抗網(wǎng)絡 192
10.4.5 循環(huán)神經(jīng)網(wǎng)絡 192
10.4.6 殘差網(wǎng)絡 193
10.5 小結(jié) 193
第11章 使用Keras構(gòu)建神經(jīng)網(wǎng)絡惡意軟件檢測器 194
11.1 定義模型的架構(gòu) 195
11.2 編譯模型 197
11.3 訓練模型 198
11.3.1 提取特征 198
11.3.2 創(chuàng)建數(shù)據(jù)生成器 199
11.3.3 與驗證數(shù)據(jù)協(xié)作 203
11.3.4 保存和加載模型 204
11.4 模型評價 205
11.5 使用回調(diào)強化模型訓練過程 206
11.5.1 使用內(nèi)置回調(diào) 207
11.5.2 使用自定義回調(diào)函數(shù) 208
11.6 小結(jié) 210
第12章 成為數(shù)據(jù)科學家 211
12.1 成為安全數(shù)據(jù)科學家之路 211
12.2 安全數(shù)據(jù)科學家的一天 212
12.3 高效安全數(shù)據(jù)科學家的特征 214
12.3.1 開放的心態(tài) 214
12.3.2 無窮的好奇心 214
12.3.3 對結(jié)果的癡迷 215
12.3.4 對結(jié)果的懷疑 215
12.4 未來的工作 215
附錄 數(shù)據(jù)集和工具概述 217

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.talentonion.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號