?

基于集成SVM和Bagging的未知惡意流量檢測①

2022-11-07 09:07杜冠瑤魏金俠
計算機系統應用 2022年10期
關鍵詞:分類器聚類樣本

趙 靜,李 俊,龍 春,杜冠瑤,萬 巍,魏金俠

1(中國科學院 計算機網絡信息中心,北京 100190)

2(中國科學院大學,北京 100049)

網絡空間是人們生產、生活的重要空間,網絡安全已經成為國家安全的重要組成部分,我國是遭受網絡攻擊最嚴重的國家之一,重大網絡安全事件時有發生.僅在2021年上半年,我國約有446 萬臺主機感染惡意程序[1],平均每月約有4 300 起峰值超過10 Gb/s大流量DDoS 攻擊,并且總體呈現遞增趨勢.基于流量的攻擊增長如此迅速的主要原因是新型未知惡意流量的興起與發展.

僵尸網絡、勒索病毒、網絡蠕蟲木馬、拒絕服務攻擊等網絡惡意技術手段更加多樣化、惡意代碼變異更加快速.惡意攻擊在網絡環境中具有高度復雜性和多樣性,對新型未知的網絡惡意行為進行檢測成為異常檢測技術研究的重要新方向[2-4].

研究人員對大量惡意數據流樣本分析發現,大部分新出現的惡意數據流實際上是已知惡意流量的變體形式,具有一定的關聯性[5].惡意流量的執行者通過多態、變形等技術手段打亂已知惡意流量的特征,形成新的惡意流量變種,以繞過安全設備的檢測.為了能夠快速有效地對抗新型安全威脅,建立高效的分類方法對海量未知樣本進行檢測是有必要的.

在傳統已有的異常檢測方法中,專門對未知惡意流量異常檢測特征處理和檢測方法進行研究的成果并不是很多,并且在同時解決數據不平衡性、多變性和模型檢測準確性等方面存在不足.具體表現在以下方面.

當前網絡流量攻擊手段變得愈發隱蔽和復雜,關鍵攻擊特征常常隱藏在正常流量數據流中,攻擊樣本數量極少,同時復雜網絡流量攻擊數據特征維度比較高,在這種攻擊樣本數量嚴重不均衡且特征維度過高的情況下傳統模型訓練并不完善,缺乏針對不均衡性、特征維度過高的惡意流量進行特征全面提取的有效手段; 傳統的惡意流量檢測方法未能充分考慮樣本分布,大多僅考慮凸樣本空間分布,缺乏對樣本分布適應性較強的未知流量準確識別方法; 同時傳統惡意流量檢測方法也面臨對新輸入樣本的檢測需要更新整個模型參數的問題,對惡意流量變化快速更新的能力不足,模型的實時性較低.

綜上,當前形勢下傳統的網絡未知惡意流量檢測技術已經面臨嚴峻的挑戰.針對真實網絡環境中惡意流量數據極度不平衡的情況下,研究具有高檢測率、低誤報率的未知惡意流量檢測方法是網絡空間安全領域的迫切需求.

因此,本文綜合考慮傳統惡意流量檢測方法中樣本不均衡性、樣本分布適應性不足等問題,采用機器學習方法對未知惡意流量高效檢測進行深入研究.本文的主要貢獻總結如下:

首先,針對網絡流量數據不平衡問題,提出基于Multi-SMOTE 過采樣的流量處理方法,該方法可以為后續未知攻擊檢測步驟提供高質量的數據集,降低數據質量導致的檢測誤差.

第二,提出基于半監督譜聚類的未知流量篩選方法.由于未知流量往往摻雜在海量已知流量中,對未知流量先進行篩選才能使后續惡意未知流量檢測更準確、快速和便捷.而網絡數據流特征復雜、屬性維度過高,利用傳統的檢測方法或者聚類算法識別未知流量往往在運行時間和準確率等方面不具有優勢.鑒于此,考慮利用一種對數據分布適應性更強的方法來實現對未知流量的精確識別.譜聚類具有識別非凸分布聚類的能力,能在任意形狀的樣本空間上聚類,因此,提出一種基于半監督譜聚類的未知流量篩選方法,能夠從混合流量中精準識別未知樣本.

第三,利用Bagging 思想,訓練基于集成SVM 的未知惡意流量檢測器.在每次訓練時,上一輪被分錯的樣本在本輪以Bagging 采樣的方式選出來加入訓練集中,進行反復迭代與訓練,得到最優的參數,最終獲得綜合性能高的檢測器.

1 相關研究與分析

下面分別從本文應用到的過采樣技術、未知流量攻擊類型檢測兩個方面論述研究現狀及發展動態,其中未知流量類型檢測包括未知流量篩選和未知流量攻擊類型檢測兩部分.

1.1 過采樣技術

過采樣技術可以有效解決因樣本不均衡導致的機器學習模型因對樣本量較小的數據無法充分學習到特征,因而造成欠擬合的問題.2002年,文獻[6]提出了SMOTE 過采樣算法,該算法是對隨機過采樣方法的改進,是對每個少數類樣本,從它的最近鄰中隨機選擇一個樣本,然后在原樣本和被選樣本之間的連線上,隨機選擇一點作為新合成的少數類樣本.SMOTE 算法摒棄了隨機過采樣復制樣本的方法,可以防止隨機過采用中容易出現的過擬合問題.文獻[7]中作者認為有些樣本遠離邊界,對分類沒有多大幫助,將少數類樣本根據與多數樣本的距離大小分為Noise,Safe,Danger 三類樣本集,然后只對Danger 中的樣本集合使用SMOTE算法.針對SMOTE 對每個少數樣本合成相同數量的樣本,文獻[8]提出了自適應合成抽樣算法ADASYN,可以采用某種機制自動決定每個少數樣本產生樣本的數量,以保證數據分布不發生過大變化.文獻[9]通過考慮數據集中確定性的變化來添加新的數據點,根據權重確定少數樣本被選為種子的概率.文獻[10]提出了一種新的基于核的自適應合成過采樣方法,稱為Kernel-ADASYN,用于不平衡數據分類問題.其思想是構造一個自適應過采樣分布來生成合成的少數群體數據.首先用核密度估計方法估計自適應過采樣分布,然后根據不同少數群體數據的難度對自適應過采樣分布進行加權.文獻[11]針對多類別不平衡問題,提出SMOM算法,通過對輔助樣本的選擇確定合成樣本的位置.文獻[12]針對傳統采樣方式的準確率和魯棒性欠佳,容易丟失重要樣本信息的問題,提出了一種基于樣本特征的自適應變鄰域SMOTE 算法,實驗表明該方法比其他傳統方法有更好的準確率和魯棒性.文獻[13]認為SMOTE 算法沒有涉及缺失值的恢復,雖然FID 算法[14]解決了這個問題,但沒有很好地考慮到數據屬性之間的相關性,為此提出了一種基于模糊規則的過采樣技術,高效地解決了數據不平衡和缺失數據這兩個問題.文獻[15]在傳統過采樣SMOTE 算法的基礎上,提出了LR-SMOTE 算法,結合K-means 和SVM 方法使新生成的樣本靠近樣本中心,避免產生離群樣本或改變數據集的分布.

然而,現有的SMOTE 及其改進算法大多關注合成數據的質量,而忽視了數據分布和數據噪聲問題.現實中數據是以流的方式出現,數據分布隨時間不斷變化,容易導致結構不穩定而產生概念漂移,因此在過采樣過程中,會加劇少量樣本數據噪聲的疊加.

1.2 未知惡意流量檢測

在未知惡意流量檢測方面,近年來,為了躲避檢測軟件的查殺,惡意流量在傳播過程中采取多態[16]等變種技術偽裝成與已知攻擊流量不同的形式去傳播.因此,對基于已知攻擊流量偽裝成新型攻擊流量的檢測問題也變得越來越重要[17-24].

文獻[25]將決策樹和神經網絡進行結合,采用決策樹提取規則,提高了算法的精確度.文獻[26]介紹了一種因果決策樹模型,中間節點具有因果解釋的作用,且因果決策樹算法具有可擴展性,分類算法在保持分類精度較高的前提下還可以顯著降低算法的執行復雜度,從整體上提升異常檢測模型的性能.

文獻[27]提出一種多分類器融合的檢測模型,該模型克服了傳統異常檢測系統存在的虛警率高、實時性好、可擴展性差等問題,是一種增量式機器學習分類器,用于對網絡數據流進行智能檢測和分析.該模型雖然具有很好的實時性,但是在惡意流量多態或者演變形式的檢測方面的檢測率不是很高.文獻[28]提出了一種基于異常的異常檢測系統,該系統使用集成分類方法來檢測Web 服務器上的未知攻擊.該過程涉及利用過濾器和包裝器選擇程序去除不相關和多余的特征.然后將Logitboost 與隨機森林一起用作弱分類器.文獻[29]提出了兩個基于蟻群算法(ACA)的未知攻擊的異常檢測系統.該IDS 可以在未標記的數據集上學習并檢測未知攻擊.其提出的IDS 是ACA 和其他監督學習算法的結合,并將決策樹(DT)和人工神經網絡(ANN)分別與ACA 相結合,雖然取得較高的檢測率,但是誤報率并不理想.

文獻[30]提出了一種基于信息增益率和半監督學習的異常檢測方案,針對未知攻擊網絡流量特征難以定量選取、動態變化的攻擊難以自適應地應對,以及訓練數據集規模過小而導致模型難以訓練3 個問題,采用半監督學習算法通過少量已標記數據生成大規模訓練數據集,以此對檢測模型進行訓練,并引入信息增益率對網絡流量特征自適應地定量提取以實現對目標網絡中未知攻擊的檢測.

支持向量機(SVM)是應用于異常檢測領域最廣泛的一種分類方法[31,32].文獻[33]提出了一種基于遺傳算法和支持向量機的異常檢測方法.該模型采用遺傳算法進行特征選擇,并在適應度函數上進行了創新,有效地減少了數據的規模和維數,從而顯著減少模型訓練的時間,并同時達到較高的準確率.文獻[34]提出一種基于SVM 的異常檢測與時間混沌粒子群優化(TVCPSO)方法的結合模型,該模型利用TVCPSO 確定SVM 分類器的最佳參數,在檢測新型未知惡意流量方面具有較強的泛化能力.

文獻[35]分析當前流量攻擊檢測工作研究現狀與面臨的挑戰,指出目前大多數的異常檢測系統在誤報率和檢測率方面的效果不是很理想,為了解決這些問題,多數學者重點研究集成分類器的研發,通過對多個但分類器進行組合,獲得集成分類器.集成分類器可以避免單個分類器的不足,增強分類器的整體性能.

綜上所述,本文綜合考慮傳統惡意流量檢測方法中對樣本不均衡性與維度過高處理不完善、樣本分布適應性不足、檢測模型更新能力較弱等問題,采用機器學習方法及集成分類器對未知惡意流量高效檢測進行深入研究.

2 本文方法

本節將詳細介紹基于集成SVM 與Bagging 的未知惡意流量檢測模型的設計.首先提出基于Multi-SMOTE 過采樣的流量處理方法,以解決實際網絡流量數據中異常樣本的極度不平衡性導致的檢測模型訓練欠擬合問題,為后續檢測步驟提供高質量的數據集.第二,針對網絡流量中數據分布的多樣性,提出基于半監督譜聚類的未知流量篩選方法,能夠從具有多樣分布的混合流量中篩選出未知流量,以便后續步驟實現未知惡意流量的分類.最后,利用Bagging 思路,經過多輪調參,訓練了一個能夠識別未知惡意流量的集成SVM分類器.實驗結果表明,本文提出的模型針對未知流量惡意識別具有較好的綜合性能.

整體的方法流程圖如圖1 所示.

圖1 基于集成SVM 與Bagging 的未知流量攻擊類型檢測模型整體流程

2.1 基于Multi-SMOTE 的過采樣方法

通常,網絡流量數據中會存在某些新型惡意行為的數目相比其他惡意行為類別少很多,出現類別數量極端不平衡的現象.直接用這些數據集訓練檢測模型,很容易引起過擬合.為了避免這種現象發生,首先對少數類的惡意行為樣本進行過采樣,避免不同惡意行為數量不平衡現象的發生.

本文基于SMOTE 和Borderline-SMOTE 提出一種改進的過采樣算法,用于擴展新樣本的生成區域,方法命名為Multi-SMOTE.假設少數類樣本集為X,多數類樣本集為N,且X= {x1,x2,···,xxnum},N= {n1,n2,···,nnnum},其中xnum和nnum分別為X和N的樣本數目,每個樣本有d個特征,則每一個少數類樣本可表示為x: (x1,x2,···,xd)T.首先,利用Borderline-SMOTE 的關鍵少數類樣本選取算法來產生關鍵樣本集key_set.基于上述方法得到的key_set,針對該集合中的每一個樣本進行過采樣操作,可以有效克服原始SMOTE 產生過多無用樣本點的缺陷.為解決SMOTE 中存在的過采樣區域過于狹窄的問題,針對key_set中的每一個樣本點應用Multi-SMOTE 算法.利用Borderline-SMOTE 算法得到key_set之后,針對key_set中的每一個樣本x,找到x在X中的K個近鄰,并同時找到這K個近鄰中與x之間歐氏距離最大的近鄰,用xT表示.以x為中心,||x-xT||2為半徑(用r表示),在高維空間中確定一個區域,新樣本將在該區域中合生,該區域用G表示.

由于已將生成區域固定,因此可以得到新樣本每一維特征的取值范圍.針對第l個特征,l=1,2,···,d,其取值范圍為: [xl-r,xl+r].之后,從均勻分布(-1,+1)中生成d個隨機數,將其表示為 σl.使用 σl可直接合成一個新樣本x~ ,x~=(x1+ σ1r,x2+ σ2r,···,xd+σdr).然而,即使每一維特征的取值均在規定的取值范圍內,仍然無法保證該樣本在G當中,因為G是一個超球體區域,而各特征的取值范圍確定的是超方體區域,此時x~與x之間的歐氏距離無法保證為r.

為了解決上述問題,對σl進行歸一化操作,令m是 σ2l的加和.基于合成一個新樣本,在G的邊界之上.基于,便可以在G中生成一個新的樣本xnew,

2.2 基于半監督譜聚類的未知流量篩選

網絡流量數據來源廣、層次多、差異大、維度高、內在關系錯綜復雜,未知惡意流量隱藏得比較深,為了能更準確地對未知流量的攻擊類型進行識別,首先將未知流量和已知流量區分開來.因此,首先解決的是未知流量的篩選問題,考慮譜聚類方法對數據分布的適應性更強,具有識別非凸分布聚類的能力,能在任意形狀的樣本空間上聚類,且收斂于全局最優解,基于此本文建立一種基于半監督譜聚類的未知流量篩選模型.

2.2.1 數據集生成

選定一組已知網絡流量的數據集S,去掉數據集S中的標簽信息,形成一組無標簽數據集S′.將其與模擬生成的未知流量混合到一起,形成一個無標簽的綜合數據集M,作為譜聚類的訓練數據集.本文選擇以去掉有標簽數據標簽的方式來形成無標簽的混合數據集,除了構造監督信息,還可以通過模型最后的分類結果與標簽對比來驗證半監督譜聚類的性能.

2.2.2 監督信息構造

半監督聚類中,監督信息能有效改善聚類算法的性能.有國外學者證實,尋找滿足所有監督信息的聚類解是一個NP 完備問題,監督信息越多,半監督聚類算法的復雜度越高,但聚類性能不一定越高,因此挖掘適合半監督聚類的監督信息十分關鍵.

本文為了調整譜聚類算法距離矩陣的元素值,構造成對的監督信息.通常,在聚類過程中,距離比較遠的數據被認為是屬于不同類的,從而被劃分到不同的類中.同樣,距離較近的數據被認為是屬于相同類的,從而被劃分到同一類別中.因此,本文將上述數據標記為兩類集合作為監督信息,分別表示距離遠的同類集X和距離近的不同類集C.

2.2.3 半監督譜聚類

基于以上生成的數據集和監督信息,提出了半監督譜聚類算法如算法1 所示.

算法1.基于半監督譜聚類的未知流量篩選算法輸入: 已知網絡流量數據集 ,無標簽的綜合訓練數據集 ,距離矩陣輸出: 未知流量類集M D 1)為距離矩陣 中元素賦初值0,計算數據集中兩點之間歐氏距離;D 2)修改距離矩陣 ,若這兩點屬于同類集 ,則矩陣元素為0; 若這兩點屬于不同類集 ,則矩陣元素為無窮;S D X C 3)構造矩陣,其各個元素為距離矩陣的倒數;P=L-1/2S L1/2LLii=∑nj=1 S ij 4)構造矩陣,其中 為對角矩陣;5)經過譜聚類過程獲得2 個類;6)對已知流量的數據集進行聚類,分別計算上述2 個類的聚類中心與已知數據集中每個類聚類中心的平均距離,比較2 個類到已知數據集的平均距離大小.

2.3 基于集成SVM 和Bagging 的惡意流量判定方法

網絡流量數據量大、維度高,內部關系復雜,應用傳統的統計方法不能高效率分析和處理.支持向量機不同于現有的統計分析方法,避開了從歸納到演繹的傳統過程,可以高效地實現從訓練樣本到預測樣本的轉導推理,大大簡化了分類與回歸問題,同時具有很好的魯棒性.

集成學習通過將多個學習器進行結合,可獲得比單一學習器更見顯著的泛化性能.本文基于AdaBoost和Bagging 結合的方法實現對未知流量攻擊類型的檢測,根據集成過程中弱分類器的權重調整訓練樣本的數據量,依據Bagging 采樣的方式選取訓練樣本.最終的改進分類器F(·)是根據基分類器的加權求和獲得的.本文研究目的是實現未知流量攻擊類型的檢測,因此,集成SVM 分類器指的是多分類器,涉及到的SVM 基分類器是適用于多分類的場景.

對于SVM,在集成過程中調整樣本的權重只會改變樣本在空間中的位置,并且不會降低分類錯誤的樣本的損失.其實,在上一輪訓練過程中被分類錯誤的樣本應在本輪訓練中會帶來更大的損失,這樣的話需要選擇較大的懲罰參數C來平衡分錯樣本帶來的損失.但是,為不同的樣本選擇不同的懲罰參數C比較困難.因此,利用Bagging 的采樣思想來選擇每一輪訓練的樣本,以提高精度和召回率異常檢測模型.

將上一輪分錯的樣本復制α (α >1)份,復制之后的所有樣本將被加入到本輪的訓練樣本中.顯然,在本輪的訓練樣本中,被分錯的樣本數量增加了.因此,本輪訓練中,分類器傾向于將上輪分錯的樣本以更高的準確率正確分類.具體方法描述如下:

令M為所有訓練樣本的集合,N是本輪訓練中選擇的訓練樣本,N<|M|.假設本輪訓練過程中分類錯誤的樣本表示為集合Q,則從M中隨機選擇N-α|Q|個樣本形成樣本集合P.將集合Q中的樣本復制α 次,復制之后的樣本的集合表示為Qα.最終集合P和集合Qα組合成為下一輪訓練過程中的訓練數據集.為了避免離群點對訓練樣本的重采樣造成影響,設定錯位分類閾值的上限H和下限L.具體算法如算法2 所示.

3 實驗及結果分析

3.1 實驗環境及數據說明

本文實驗環境為Windows 7 平臺,Intel Core i7,8 核CPU,分配內存20 GB.實驗采用Python 語言作為編程語言.本文定義模型性能評估指標分別為準確率(accuracy,ACC)、精確率(precision)、召回率(recall)、誤報率(false positive rate,FPR)和F1 分值(F1-score).

算法2.基于集成SVM 和Bagging 的惡意流量判定方法QαNα L H輸入: 分類錯誤樣本集 ,復制之后的樣本集 ,模型參數 、 、 、Q輸出: 改進分類器,測試數據的具體攻擊類型F(·)1)如果,從訓練數據集中隨機選擇 個樣本;|Q|>HQHQ M N-α|Q|P P Qα|Q|<LN 2)如果,從集合 中隨機選擇 個樣本形成新的集合 ,然后從訓練樣本集合 中隨機選擇個樣本形成集合 ,和 組合作為下一輪訓練過程的訓練樣本,該過程與AdaBoost 權重調整策略類似;L≤|Q|≤HN-α|Q|P P Qα 3)如果,從訓練數據集中隨機選取個樣本形成集合 ,和 組合作為下一輪訓練過程的訓練樣本;4)以這樣的方式生成多個基分類器,然后根據基分類器的加權求和獲得改進分類器,,,和 是超參數,通過十折交叉驗證的方式獲得最優值;F(·)F(·) Nα L H 5)將測試數據集輸入 中,輸出結果顯示測試數據的具體攻擊類型.

數據集方面,首先,本文采用流量生成工具Flightsim自己生成流量數據集S,以測試 Multi-SMOTE 過采樣算法、半監督譜聚類算法和未知流量檢測模型性能.Flightsim 是一款輕量級的開源網絡安全工具,安全研究人員可以利用這款工具來生成惡意網絡流量.其次,為了進一步評估檢測模型的性能,本文與其他同類論文中的方法進行了對比實驗,為了使實驗具有可比性,采用了同類論文中所使用的UCI 數據集和KDD’99 數據集.最后,為了驗證本文所提方法的泛化能力,分別在自生成數據集S、UCI 數據集和KDD’99 數據集進行了實驗.

3.2 Multi-SMOTE 過采樣算法性能評估

本文利用Flightsim 流量生成工具,模擬生成了9 類流量數據,分為1 類正常流量數據和8 類惡意流量數據,自生成流量數據集的數據分布如圖2 所示.

圖2 自生成流量數據集數據分布圖

由圖2 可以看出,惡意流量數據存在著嚴重的數據不平衡問題,sqlattack 和rootkit 惡意流量占比遠遠小于normal 類.針對這一問題,本文用提出的Multi-SMOTE 過采樣方法對數據進行采樣,采樣后的數據分布如圖3 所示.

圖3 Multi-SMOTE 過采樣后數據分布圖

經過Multi-SMOTE 采樣后,少量樣本數據有了大幅度增加,并且在數據量增加的同時保證了數據分布沒有發生太大變化.本文提出的Multi-SMOTE 方法解決了先前過采樣算法存在的數據分布不平衡和數據噪聲疊加的問題.在數據預處理階段便獲得質量較好的訓練數據,有利于訓練出更好的模型.

3.3 半監督譜聚類算法性能評估

為了在自生成數據集上測試本文提出的半監督譜聚類算法,我們將隨機從自生成數據集中抽取25%的樣本作為子數據集進行聚類實驗.將子數據集S上的所有標簽信息去掉,形成一組無標簽數據集S′.將S′輸入到半監督譜聚類算法中進行聚類實驗.為了驗證本文提出的半監督譜聚類算法的有效性,將相同的數據采用K-means 算法進行對比實驗.

從表1 可以看出,本文提出的半監督譜聚類算法明顯優于K-means 方法,K-means 在高維空間對稀疏數據的處理并不好,而半監督譜聚類算法很好地解決了這一問題,并且譜聚類算法能夠適應網絡流量分布廣、差異大、維度高的特點.圖4 展示了半監督譜聚類算法對數據集S進行聚類后的分布情況,可以看出在簇數為9 的情況下,仍能很好地區分出各個類別.

圖4 半監督譜聚類散點分布圖

表1 半監督圖譜聚類實驗結果

3.4 本文模型整體性能評估

首先實驗利用自生成數據集對本文提出的模型做了整體性的評估,實驗結果如表2 所示.可以看出本文提出的模型總體上在對各個類別的識別上具有較高的識別率,均在92%以上,最高可達99%,在各個類別的預測上表現都很出色,并且性能均衡穩定,初步證明了本文方法在未知惡意流量識別上的有效性.

表2 本文方法在自生成數據集上的整體性能評估

基于Multi-SMOTE 過采樣的流量處理方法能夠提高流量特征質量,從而提高惡意未知流量識別的準確率.基于半監督譜聚類的未知流量篩選方法是為了專門篩選出未知流量以避免其他已知惡意流量對結果的影響.這兩個步驟對于未知惡意流量的檢測起到了非常重要的作用,為了驗證其有效性,實驗利用3 種數據訓練了集成SVM 模型.數據1 為原始數據,即為沒有經過Multi-SMOTE 過采樣處理和基于半監督譜聚類的未知流量篩選的數據,表示為Data1.數據2 為僅經過基于半監督譜聚類的未知流量篩選的數據,表示為Data2.數據3 為同時經過Multi-SMOTE 過采樣處理和基于半監督譜聚類的未知流量篩選的數據,表示為Data3.在實驗的過程中,同樣均利用Bagging 思路訓練集成SVM 分類器,分類結果如表3-表5 所示.

從表3-表5 的結果可以綜合看出,在不同的數據集上,3 種數據的總體表現趨勢是一致的.使用原始數據訓練出的集成SVM 分類器,即使使用了Bagging 思想,也幾乎沒有分類效果.經過基于半監督譜聚類的未知流量篩選后的數據,在訓練集成SVM 分類器的時候有一點效果,但是F1-score 最好值也只有0.806,說明特征的質量對實驗結果有很重要的影響.經過本文模型設計的所有環節處理后的數據,再利用Bagging 思想訓練出的集成SVM 模型在綜合評價上表現優異,驗證了本文提出模型的每一個環節都是不可缺失的,環環緊扣,最終實現了對未知惡意流量的準確識別.

表3 集成SVM 分類器在3 種數據上的表現(自生成數據集)

表4 集成SVM 分類器在3 種數據上的表現(UCI 數據集)

表5 集成SVM 分類器在3 種數據上的表現(KDD’99)

為了進一步驗證本文方法的先進性,我們選取了文獻 [25,27,29,34] 中的方法進行了對比實驗.結果如表6 所示,我們選取KDD’99 數據集作為實驗數據.其中,文獻[27,29,34]使用了KDD’99 的數據集,文獻[25]使用了UCI 數據集.KDD’99 數據集公布于1999年,是網絡流量檢測領域中使用最廣泛的數據集,也是目前比較權威的數據集.KDD’99 數據集是由DARPA98數據集經過數據挖掘和預處理后得到的,每條記錄由41 個屬性組成,分成4 大類共39 種攻擊類型.

表6 本文方法與其他方法的性能對比

實驗首先利用文獻[25]提出的結合決策樹和神經網絡模型方法進行了對比,由于決策樹采用規則,在一定程度上依賴數據本身結構,缺少了靈活性,本文提出的方法對各類惡意流量的適應性更強,所以效果優于文獻[25]提出的方法.隨后,本文對同在KDD’99 數據集進行實驗的文獻[27,29,34]進行了對比,這3 個工作的實驗是針對分類器做的改進,通過多種算法相結合的方式,從而提升分類器的性能,但忽視了數據分布的情況和數據集規模大小的問題.本文提出的方法利用半監督形式來適應數據分布的問題.從表3 中可以看出,本文方法在準確率(ACC),精確率(precision),召回率(recall)上均優于其他方法.

在實際的應用中,最重要的目標是盡可能發現異常行為,提高檢測的準確率和召回率,而0.1 的誤報率在可接受的范圍內.

為了測試本文方法的泛化能力,我們利用本文的方法在自生成數據集S,UCI 數據集和KDD’99 數據集上分別做了實驗,并根據F1-score 對性能進行了評估.圖5 展示了3 個數據集上F1-score 的大小,由于S是本文提出的私有數據集,與模型兼容性更高,所以F1-score達到了0.99,另外兩個數據集的F1-score 在0.95 以上.

圖5 本文方法在不同數據集上的性能比較

綜上所述,從整體實驗結果來看,本文所提方法的整體優勢明顯,且具有良好的泛化能力.

4 結論

本文針對真實網絡環境中存在惡意流量數據極度不平衡的問題,研究具有高綜合性能的未知惡意流量檢測方法.綜合考慮傳統惡意流量檢測方法中存在樣本不均衡性、樣本分布適應性不足等問題,采用機器學習方法對未知惡意流量進行檢測.

首先,本文提出基于Multi-SMOTE 過采樣的流量處理方法,為后續未知攻擊檢測步驟提供高質量的數據集,降低數據質量導致的檢測誤差; 然后提出一種基于半監督譜聚類的未知流量篩選方法,從混合流量中精準識別未知流量.最后,利用前面提出的過采樣方法和未知流量篩選處理后的特征,基于Bagging 思想,訓練了能夠識別未知惡意流量的集成SVM 分類器.實驗結果表明,本文所提出的基于集成SVM 與Bagging 的未知惡意流量檢測模型在綜合評價(F1-score)方面優于目前同類未知惡意流量檢測方法.并且,本文所提方法在不同數據集上的性能評估結果顯示,所提方法具有良好的泛化能力.

猜你喜歡
分類器聚類樣本
分類器集成綜述
少樣本條件下基于K-最近鄰及多分類器協同的樣本擴增分類
學貫中西(6):闡述ML分類器的工作流程
基于數據降維與聚類的車聯網數據分析應用
基于模糊聚類和支持向量回歸的成績預測
基于AdaBoost算法的在線連續極限學習機集成算法
直擊高考中的用樣本估計總體
隨機微分方程的樣本Lyapunov二次型估計
基于密度的自適應搜索增量聚類法
基于支持向量機的測厚儀CS值電壓漂移故障判定及處理
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合