網絡流量的自動化分析新方向
1. INTRODUCTION
在信息安全領域中,機器學習方法在流量分析中得到了廣泛的應用。在應用機器學習方法時,許多方面決定著模型的表現,如特征提取,模型選擇以及超參數調整。在本文中,作者提出了一種自動化應用機器學習機器實現流量分析目標的通用方法。這種方法依賴于對網絡流量的統一表示,通過將不同流量分析任務中的特征表示為統一的形式,結合自動機器學習方法,可以實現對網絡流量的自動化分析,而不依賴于大量的背景知識和人力成本。
本文的主要貢獻在于:
-
為自動化機器學習提供了一種新的方向。提出一種統一的網絡數據包表示方法nPrint。
-
將nPrint與自動機器學習工具相結合,提出nPrintML,實現了自動化流量分析。
-
使用nPrintML對8個不同的流量分析任務進行案例分析,實驗的結果表明nPrintML可以更好地獲取網絡流量的特征信息,nPrintML獲取的機器學習模型在性能上比傳統特征工程得到的機器學習模型更加優越。
2. DATA REPRESENTATION
在應用機器學習方法時,對數據進行編碼是非常重要的一環。為了實現上述提出的目標,數據編碼需要滿足以下要求:
-
Complete:由于nPrint實現的是一種統一數據編碼,而不依賴于專家知識,所以需要提取數據包包頭的所有信息。
-
Constant size per problem:對于機器學習模型,數據的輸入需要保持一致。
-
Inherently normalized:機器學習模型在歸一化后的數據上表現較好。
-
Aligned:不同數據包頭的同一部分在編碼后應該位于同樣的位置。
Building a Standard Data Representation
在通用的網絡流量表示方法中,主要有語義表示法和非齊二進制表示法,如圖:
這些方法都無法很好地滿足上述需求。為了解決這一問題,作者基于兩種方法的思想,將兩種方法進行混合,提出nPrint:
3. NPRINTML
作者將nPrint與自動機器學習方法相結合,提出nPrintML,實現了機器學習自動化的流程,nPrintML的全部流程如下:
4. CASE STUDIES
使用nPrintML,作者對8個流量分析場景進行實例分析,實驗結果表明:nPrintML可以應用于不同場景,獲得的模型較傳統方法得到的模型性能更好:完整的實驗結果如下: