網絡安全與機器學習(二):網絡安全任務如何結合機器學習?

摘要: 網絡安全碰見機器學習,會摩擦出怎樣的火花呢?html

安全任和機器學算法

讓咱們看看常見的網絡安全任務和機器學習結合的機會,而不是查看ML任務並嘗試將它們應用於網絡安全。具體咱們須要考慮三個維度(Why,What和How)。數據庫

第一個維度是目標或任務(例如,檢測威脅,攻擊預測等)。根據GartnerPPDR模型,全部安全任務可分爲五類:安全

1.        預測服務器

2.        預防網絡

3.        檢測app

4.        框架

5.        監測機器學習

第二個維度是技術層和「什麼」問題的答案(例如,在哪一個級別監控問題),如下是此維度的圖層列表:微服務

1.        (網流量分析和入侵檢測;

2.        端點(反件);

3.        應用程序(WAF或數據防火;

4.        戶行爲分析UBA;

5.        過程(反欺詐)

每一個圖層都有不一樣的子類別。例如,網絡安全能夠是有線、無線或雲。請放心,至少在不久的未來,你不能將具備相同超參數的相同算法應用於兩個區域。由於缺乏數據和算法來找到對這三個區域都很友好的方法,所以能夠將一個算法更改成不一樣的算法。

第三個維度是「如何」的問題(例如,如何檢查特定區域的安全性):

1.        實時檢測

2.        靜態檢測

3.        歷史查看

例如,若是你要查看端點保護,查找入侵,則能夠監視可執行文件的進程,執行靜態二進制分析,分析此端點中的操做歷史記錄等。

有些任務應該從三個方面解決。有時,對於某些任務,某些維度中沒有值。咱們須要從其餘維度來找到解決方法。這些一般很難詳細介紹它們,因此咱們關注最重要的維度-技術層。從這個角度看網絡安全解決方案。

用於網護的機器學習

網絡保護不是單一領域,而是一系列不一樣的解決方案,專一於以太網、無線、SCADA甚至SDN等虛擬網絡等協議。

網絡保護是指衆所周知的入侵檢測系統(IDS)解決方案。網絡安全中的ML意味着稱爲網絡流量分析(NTA)的新解決方案,旨在深刻分析每層的全部流量並檢測攻擊和異常。

ML如何在這裏提供幫助?有一些例子:

1.        歸預測數據包參數並與正常數據包行比

2.        識別不一樣類別的網,例如描和欺

3.        類數據用於分析;

你能夠在學術研究論文中找到至少10篇描述不一樣方法的論文。

更多資源:

1.        入侵檢測機器學

2.        用於時間序列異常檢測短時間記憶

3.        基於規則提取的高效入侵檢測異常檢測框架

4.        異常檢測術綜

5.        和深入侵檢測:分調查

6.        深度數據包:一種利用深度學習進行加密流量分的新方法

7.        入侵檢測的性能比及機器學Snort中的

8.        入侵檢測機器學算法

9.        基於LSTM的一集體異常檢測

10.     基於遞歸的網流量異常檢測

11.     計算機網絡流量異常檢測的序列聚合規則

12.     IDS全部方法的大集合

用於端點保的機器學

新一代的反病毒是端點檢測和響應,建議最好學習可執行文件或進程行爲中的特徵。

請記住,若是你在端點層處理應用機器學習,你的解決方案可能會有所不一樣,具體取決於端點類型(例如工做站、服務器、容器、雲端、移動設備、PLC、物聯網設備)。每種端點都有本身的細節,常見任務類別:

1.        預測程的下一個系統調用,並將其與實際過行比

2.        將程序劃分爲惡件、間諜軟件和勒索件等類別的分

3.        聚類在安全件網關上件保(例如將法律文件附件與異常分開);

關於端點保護和惡意軟件的學術論文特別受歡迎。這裏有一些論文:

1.        侵蝕整個EXE進行惡意軟件檢測

2.        深度學:非域家的件分

3.        TESSERACT:消除跨空時間件分中的實驗誤差

用於應用程序安全的機器學習

在app安全性中使用ML?用於靜態和動態的WAF或代碼分析?不得不提醒你一下,應用程序安全性可能有所不一樣。由於他們有不少應用場景:好比說有Web應用程序、數據庫、ERP系統、SaaS應用程序、微服務等。在不久的未來,幾乎不可能創建一個通用的ML模型來有效地處理全部威脅。可是,你能夠嘗試解決某些任務。

如下是使用機器學習實現應用程序安全性的示例:

1.        檢測HTTP請求中的異常(例如,XXESSRF以及auth旁路);

2.        用於檢測已知型的攻(如注入(SQLiXSSRCE等))的分;

3.        集中用檢測DDOS和大模利用。

更多資源:

1.        自適應檢測Web中的查詢

2.        惡意腳本的神經分類:使用JavaScriptVBScript進行的研究

3.        URLNet:通深度學URL表示以URL檢測

用於用的機器學

這類任務需求始於安全信息和事件管理(SIEM)。若是配置正確,SIEM可以解決許多任務,包括用戶行爲搜索和ML。而後,UEBA解決方案宣稱SIEM沒法處理新的,更高級的攻擊類型和持續的行爲更改。

若是從用戶層面考慮威脅,市場已經接受了須要特殊解決方案的觀點。

可是,即便最高級的UEBA工具也不包括與不一樣用戶行爲相關的全部內容。(域用戶、應用程序用戶、SaaS用戶、社交網絡、信使和其餘應該監控的賬戶)。

與常見攻擊的惡意軟件檢測和訓練分類器的可能性不一樣,用戶行爲屬於無監督學習問題之一。一般,沒有標記數據集以及要查找的內容。所以,爲全部類型的用戶建立通用算法的任務在用戶行爲區域中是棘手的。如下是公司在ML的幫助下解決的任務:

1.        檢測操做中的異常(例如,在異常時間;

2.        以將不一樣用分析;

3.        以分離用戶組檢測異常

更多資源:

  • 使用擴展隔離算法檢測異經常使用戶行爲;

用於進程行爲的機器學習

進程區域是最後但並不是最不重要的,在處理它時,有必要知道一個大體的業務流程,以便找到異常值。注意不一樣行業的業務流程可能有很大差別。你能夠在銀行和零售系統或製造廠中查找欺詐行爲。二者徹底不一樣,找到它們的不一樣須要不少領域知識。機器學習特徵工程(將數據表示爲算法的方式)對於實現結果相當重要。一樣,特徵在全部進程中都不一樣。

一般,進程行爲也有任務示例:

1.        歸:預測下一個用檢測信用卡欺等異常;

2.        類:檢測已知型的欺;

3.        類:較業務流程和檢測異常

更多資源:

機器學安全

若是你想了解有關網絡安全中機器學習的更多信息,能夠閱讀如下書籍:

1.        Cylance的網安全AI2017-對網絡安全ML的基短,並且有很好的實際例子。

2.        O'reilly的機器學和安全2018-迄今止關於個主的最佳籍,但不多關於深度的例子,大可能是通常的ML

3.        Packt的滲透測試機器學2018-不像前一個那麼優秀,但有不少的深度學方法。

4.        惡意軟件數據科學:攻擊檢測和歸因2018-標題中能夠看出,這本主要關注件。它剛剛在撰寫本文時發布,因此到目前止我沒法出任何反。但我相信,這對端點保護團隊的每一個人來都是必的。 

結論

若是你想保護你的系統,機器學習絕對不是一個銀彈解決方案。毫無疑問,可解釋性存在許多問題(特別是對於深度學習算法)。另外一方面,隨着數據量的增長和網絡安全專家數量的減小,ML是惟一的補救措施。它如今有效,很快就會執行。如今最好開始作這些。由於請記住,黑客也開始在攻擊中使用ML。

原文連接 

相關文章
相關標籤/搜索