胡 銳,徐 芳,熊郁峰,熊洲宇,陳 敏
(江西省煙草公司吉安市公司,江西 吉安 343009)
網絡給諸多行業發展帶來了便利,但因網絡而導致的問題也日漸顯著,相繼出現了因網絡信息保護不利而導致的信息泄露、網絡詐騙、網絡監聽等事件[1]。人工智能技術是網絡安全技術難題的重要解決手段,越來越多的研究著重于基于人工智能構建網絡態勢感知模型[2]。
應對網絡攻擊的研究成為熱門[3-4],研究人員逐漸使用網絡安全態勢感知代替原有的被動防御措施,能夠提前預測和發現潛藏的網絡攻擊。原始的網絡異常流量檢測模型中通常使用統計分析[5]等方法,由于是通過已有信息來進行防范,往往因為預測效果差而達不到防范新型網絡攻擊的效果。
態勢感知是一種基于環境的、動態的、系統的洞悉安全風險的能力,可以全面地發現、識別安全威脅,并能準確分析、及時處理安全威脅的一種方式。最早在軍事領域中被提出,分為覆蓋感知、理解和預測3個層次[6]。普通的安全管理策略視角單一,不能以全局的視角挖掘出網絡空間的內在聯系,存在潛在風險,而網絡安全態勢感知可整合采集的全部數據,以此評價網絡運行態勢[7]。
基于傳統機器學習的網絡安全態勢感知技術研究中,常用的方法有K鄰近算法[8]、支持向量機[9]、樸素貝葉斯[10]、隨機森林[11],相較于原始的網絡檢測模型,在基于傳統機器學習的方法中,異常網絡模型檢測中的準確率被提高了,但是存在復雜函數表達有限、魯棒性較差的問題。隨著網絡服務的增加以及網絡邊界不斷往外延伸,網絡流量呈現爆炸式增長的趨勢,傳統的機器學習表現出較大誤報率和泛化能力差等現象。
在基于深度學習構建異常網絡檢測模型的研究中,PEI等人[12]提出了一種基于長短期記憶自編碼的異常網絡檢測模型,有較高的檢測精度。YIN等人[13]提出了一種基于循環卷積網絡(Recurrent Neural Network,RNN)的異常網絡檢測模型,在多分類二分類中,相較于傳統的機器學習方法性能較好。來杰等人[14]提出將改進的高斯模型和深度AE網絡相結合,實現了數據的降維優化,檢測異常網絡有較好的效果。Hwang等人[15]使用卷積神經網絡(Convolutional Neural Networks,CNN)和無監督的模型進行自動的分析流量模式。目前注意力機制也被廣泛應用,可以學習特定的特征,而忽略掉不重要的信息,皇甫雨婷等人[16]提出了一種基于注意力機制的模型來學習多個特征之間的相關性,抑制掉干擾信息,提出的模型有較高的準確率,但是在表格文件中,無法學習到位置信息和異常網絡信息中的前后信息關系。
綜上所述,傳統機器學習方法難以處理大量高維實驗數據,又因為本文使用的實驗數據為表格數據,而深度學習方法在表格數據中表現不如樹模型,所以不選擇注意力機制和CNN等深度學習方法。基于此,本文提出一種基于遺傳算法+LightGBM(Light Gradient Boosting Machine)的網絡安全態勢感知模型,著重解決實驗數據的格式、數量規模和維度帶來的問題。在現有針對性的流量攻擊中,使用主動防御的網絡安全技術,強化的網絡模型進行檢測,挖掘網絡流中的信息,提高網絡安全態勢預測模型精度與效率。
遺傳算法(Genetic Algorithm,GA)是一種模擬生物群體演化的計算機方法,它仿照自然界中的環境選擇和基因遺傳,使適應性高的個體更容易生存和繁衍,而適應性低的個體則被淘汰[17-18]。它不依賴于群體中的梯度信息,而是依靠群體內部的搜索策略,可以求解復雜的非線性問題,具有并行性、魯棒性、通用性、搜索能力、適用面廣等特點[19]。
GA有如下優點:(1)無需求導,僅依據目標函數進行搜索;(2)以決策變量的編碼為運算對象,不受函數約束條件的影響;(3)在同一時間內使用了多個查詢點的信息,因此它具有平行查詢點的特點;(4)在選擇、交叉、變異等操作上采用概率的方法,增加了算法的靈活性;(5)具有較強的全局尋優能力,對求解復雜及非線性問題有較好的效果;(6)與其他的啟發式算法具有很好的兼容性,能夠與諸如各向異性擴散融合(Anisotropic Diffusion Fusion,ADF)等的其他優化算法相結合,提高算法的性能。
LightGBM是一種梯度提升框架,其作為一個實現梯度下降樹(Gradient Boosting Decision Tree,GBDT)算法的框架,支持高效率的并行訓練。相較于經典神經網絡算法能夠以batch的方式訓練來保證訓練數據的大小不受內存的限制,普通的GBDT算法每次迭代,都需要遍歷整個訓練數據多次,但由于弱學習器的強依賴性,只能串行訓練,從而導致訓練耗時較長。LightGBM的單機多線程與多機并行訓練特點彌補了這個缺陷。具體算法優化的體現主要在于單邊梯度抽樣算法(Gradient-based One-Side Sampling,GOSS)與互斥特征綁定算法(Exclusive Feature Bundling,EFB)這兩大利器。
GOSS算法能夠對梯度小的樣本按比例進行采樣,對于梯度大的樣本點予以保留。而由信息增益公式(如式(1)所示)及定義可知大梯度樣本對信息增益有更大作用。所以這樣做不僅保證了模型的準確度,而且能夠極大減少樣本量,從而提高訓練效率。
(1)
其中:no=∑I[xi∈O],
njl|O(d)=∑I[xi∈O:xij≤d],
njr|O(d)=∑I[xi∈O:xij>d].
EFB算法專門被用于處理高維特征,能夠對互斥特征進行捆綁形成新的特征。其采用一種構圖思想,將特征作為圖的頂點,對相互之間不互斥的特征進行相連,隨后根據頂點的度進行降序排列,度越大,則該特征與其他特征間的沖突越大,設置最大沖突閾值K,將加入到特征簇后沖突數不超過K的特征加入到捆綁簇中,否則建立新的特征簇。
讀取數據集(CSE-CIC-IDS2018)進行分析,首先要對數據集中的特征進行初步的篩選與清洗,需要刪除IP address、Flow ID、Timestamp等多余特征列。為了提高實驗結果的準確性,需要對于每個數據集中的樣本進行數據清洗,丟棄一些無窮大值、NaN空值和重復行等無效的數據。每個數據集的網絡流量類型及樣本數量統計如表1所示,包含各個數據集的丟棄樣本以及剩余的樣本。

表1 每個數據集的網絡流量類型及樣本類型
為了提高模型的泛化能力和穩定性,本文引入GA對LightGBM進行參數優化。利用GA的隨機性、全局性特點,能夠使得模型避免陷入局部最優情況。圖1是基于遺傳算法改進的LightGBM模型的流程圖。

圖1 模型流程圖
為了減少LightGBM全局最優參數組的偏差,提升網絡安全態勢感知模型的準確性,在對原始數據的處理中,除了正常的數據清洗空值填充以及數值化以外,還需要針對二分類實驗進行額外的標簽整理工作。將原本多分類的標簽整理成有攻擊和無攻擊兩種類型。隨后輸入到本文的模型中訓練,其中利用GA進行參數調優的核心步驟主要分為6步:
(1)求解不同參數組下的LightGBM分類模型的均方根誤差(Root Mean Square Error,RMSE)取值大小;
(2)對每個待尋優參數進行編碼;
(3)計算種群內各個體的適應度函數值;
(4)找出適應度函數值最大時對應的參數組,并記錄結果;
(5)運用輪盤賭算法進行自然選擇,保留被選中的參數組;
(6)對剩余參數組按交叉率進行二進制位交換操作以及按變異率進行二進制位變異操作。
本文提出的模型相比于傳統機器學習和深度學習方法更適用于表格實驗數據,傳統機器學習方法面對大量高維特征表格實驗數據時,常常表現出誤報率大和泛化能力差等結果,而深度學習方法在表格數據中表現不如樹模型。本文提出的一種基于遺傳算法+LightGBM的網絡安全態勢感知模型,以LightGBM為主模塊,使用GA進行參數優化可避免模型過擬合,在兩者組合的基礎上,使用特定步驟清洗過的數據進行訓練能進一步提升模型的態勢感知準確率,能夠有效解決實驗數據的格式、數量規模和維度帶來的問題。
本次實驗使用的軟硬件環境如表2所示。

表2 軟硬件環境
為驗證模型的效果,本實驗使用的數據集是CSE-CIC-IDS2018 on AWS,來自通信安全機構(CSE)與加拿大網絡安全研究所(CIC)之間的協作項目。CSE-CIC-IDS2018 on AWS是基于創建用戶概要文件生成的用于入侵檢測的多樣且全面的基準數據集。受攻擊的攻擊基礎設施包括50臺計算機,以及5個受害組織部門的420臺計算機和30臺服務器。捕獲每臺計算機的網絡流量和系統日志,使用CICFlowMeter-V3從捕獲的流量中提取的80個特征。包括七種不同的攻擊場景的14種攻擊類型:Heartbleed、Botnet、DoS等。
在數據預處理部分對數據進行初步篩選和匯總,從匯總后的數據中提取出正常的標簽和每種攻擊類型的數據,正常標簽數據為Benign,剩下的標簽數據為各種攻擊類型。正常的網絡流量類型與各個攻擊類型的比例為7:3左右,統計如表3所示。本實驗將所有的攻擊類型統一劃分,分為正常類型與受攻擊類型,使用模型進行異常識別分類,驗證模型效果。

表3 網絡流量類型數量統計
為了更好地驗證本文提出的模型在進行網絡安全態勢感知的效果,根據所使用的數據集劃分了四個對照組:80個特征多分類對照組(IDS-2018-mul-80future)、80個特征二分類對照組(IDS-2018-bin-80future)、18個特征多分類對照組(IDS-2018-mul-18future)以及18個特征二分類對照組(IDS-2018-bin-18future)。在每個對照組中,選取了幾個其他應用在網絡安全態勢感知方面的深度學習網絡模型,并使用相同數據集進行對比實驗。若本文提出的模型能夠根據輸入數據正確預測網絡攻擊類型,則判定為感知成功。
首先是80特征下的網絡安全態勢感知效果,根據表4可以看出不同模型在80特征下的多分類、二分類準確率,本文所提出的模型在80特征的情況下的態勢感知準確度要明顯優于其他深度學習神經網絡模型,其中多分類的感知準確率達到了99.43%,二分類的感知準確率達到了99.87%。

表4 80特征訓練準確率對比
對比分析網絡安全態勢感知效果較好的TabNet網絡模型。在80特征條件下,模型訓練過程的損失變化和準確率變化結果如圖2、圖3所示,測試準確率如圖4所示,圖示中的橫坐標為epoch,縱坐標為loss值和準確率。

圖2 TabNet 80特征訓練損失變化曲線

圖3 TabNet 80特征訓練準確率變化曲線

圖4 TabNet 80特征測試準確率曲線
由以上訓練損失、訓練準確率和測試準確率曲線變化圖可得出結論:雖然TabNet網絡模型的感知效果在訓練時呈現出較高的感知準確率,但是其在測試集上呈現出震蕩的趨勢,根據其曲線變化可以推斷出這是由于訓練特征過多而導致的過擬合現象。
為驗證因特征過多導致的模型過擬合猜想,設置18特征對照組實驗,根據構建樹模型時各個特征所做出的貢獻的重要程度進行排序,排序結果如圖5所示,提取重要度排名前18的特征用于訓練,圖示中的橫坐標為前18個特征名,縱坐標為特征重要度評分。

圖5 特征重要度評分
將80特征降維為18特征后,訓練過程的損失變化和測試準確率如圖6和圖7所示。

圖6 TabNet-18訓練損失曲線

圖7 TabNet-18測試準確率曲線
選取18特征用于訓練大大降低了訓練難度,削減了大部分無用特征之后訓練時所需要消耗的時間和硬件資源也會大大減少,訓練出的模型大小相較于80特征也會有明顯降低。
通過圖6和圖7可以看出通過特征降維,剔除掉對于網絡安全態勢感知幫助不大的特征,能夠極大地緩解深度神經網絡訓練時所出現的過擬合現象,增強深度神經網絡的魯棒性。除此之外,降低訓練特征之后所訓練出的模型明顯更加符合日常使用場景。
使用18特征數據集進行模型對比實驗,結果如表5所示。根據表5中的實驗結果對比可以看出,本文提出的機器學習模型在少特征的情況下仍然具有較好的網絡安全態勢感知效果,相較于其他模型具有較為明顯的優勢,且本文模型相較于其他深度學習模型還有以下幾個優點:

表5 18特征訓練準確度對比
(1)訓練速度快,模型準確率高。
(2)訓練出來的樹模型具有良好的可解釋性。
(3)對于硬件要求不高,魯棒性強。
結合fastai.tabularmodel、TabNet、LightGBM、XGBoost四個對照組所產生的對比實驗結果,可以證明本文所提出的模型具有良好的魯棒性和準確率,無論是面對多分類的網絡安全態勢感知問題,還是面對二分類的網絡安全態勢感知問題,本文提出的模型相較于其他模型而言都具有更高的感知準確率,在數據集僅有少量訓練特征,如18個特征時,仍能表現出很好的感知效果。
針對目前網絡異常流量檢測中存在的網絡環境復雜、數據集特征多、模型檢測效率低且容易過擬合等現象,提出了一種基于遺傳算法改進的LightGBM模型,利用遺傳算法的隨機性、全局性特點能夠使其避免陷入局部最優情況。本文提出的網絡模型在CIC-IDS-2018數據集上進行實驗分析,在80特征的網絡安全態勢感知下,二分類的感知準確率達到了99.87%。為了防止出現過擬合現象,通過構建樹模型減少訓練特征,能夠從高維數據中挖掘出對于檢測效果影響重要的關鍵特征信息,并對這些關鍵特征信息進行分析。實驗證明,在低特征二分類的情況下仍然能夠達到99.39%的準確率,與其他網絡檢測模型相比有更高的準確率,檢測效率高且具有很好的靈活性和魯棒性,在智能煙草工業數字化建設中具有實際的應用價值。
除此之外,本文提出的模型還存在著一些問題:本文使用的CIC-IDS-2018數據集包含了79個流量特征信息,在實際工業應用中可能難以提取。下一步將根據提取的特征對模型進行微調,從而使其更加適用于實際場景。