張云玲
(安徽信息工程學院,安徽 蕪湖 241000)
隨著互聯網的發展與普及,網絡攻擊日益頻繁,網絡安全問題層出不窮,成為人們關注的重點與難點。另一方面,由于網絡規模不斷擴大,網絡趨于多樣性、復雜性、分散性,現有網絡安全技術難以滿足高質量的網絡安全需求。網絡安全態勢感知是通過對網絡中全局安全狀態進行實時檢測分析,精準預測網絡安全狀態的一種預測有段,有助于網絡安全管理人員提前采取防御措施,保障網絡安全。目前,網路安全態勢感知技術主要通過歷史評估信息實現網絡安全態勢預測。文獻[1-2]基于k-means 算法,實現了網絡安全態勢預測;文獻[3-4]基于RBF 理論,利用網絡安全歷史數據,對網絡安全態勢發展趨勢進行了有效預測。上述預測方法雖然實現了網絡安全態勢感知,但其預測精度有待提高。基于此,為實現高精度的網絡安全態勢預測,文章提出基于HMM 的預測方法,并通過人工魚群算法和遺傳算法(GA)對其進行優化,取得了良好的預測效果。
HMM 是一種廣泛應用于語言識別、模式識別領域的基于統計的機器學習模型,該模型的基本定義如下。
假設所有隱藏狀態集合為Q,可能觀測到的狀態集合為V:

式中,N 表示可能隱藏狀態數,M 表示所有可能觀測的狀態數。
對于長度為T 的序列,其對應的狀態序列I和觀察到的序列O 可用表示為式(3)和式(4):

此外,還需t=1 時刻初始隱藏狀態分布,假設其為π,則HMM 模型可由一個三元組表示:

根據上述分析可知,HMM 算法訓練時,初始參數設置直接影響了訓練結果,若初始參數設定不合理,可能導致模型陷入局部最優,而人工魚群算法和GA 算法可有效避免此類問題。因此,文章采用GA 算法對HMM 算法進行改進:首先,采用人工魚群算法優化初始過程中的模糊聚類,提高聚類結果精度,然后采用GA 算法優化HMM 預測模型參數,避免模型陷入局部最優。
1.2.1 人工魚群算法優化初始聚類

其次,在三維空間內隨機分散樣本,并確定樣本三維坐標值。
然后,計算人工魚實物濃度,并在此基礎上進行聚群、覓食等優化,直到所有人工魚移動完成。
最后,判斷是否滿足終止條件。若當前人工魚最大濃度與迭代前最大濃度差值小于設定閾值,或達到最大迭代次數,則結束算法,并將結果映射到高維樣本;反之,則返回,再次執行人工魚食物濃度大小計算流程。
1.2.2 GA 算法優化模型參數
首先,結合輪盤賭方法使種群規模達到P[8]。具體方法如下。
計算公式(12)~(15)。

最后,判斷算法是否滿足終止條件。若滿足,則輸出結果,結束算法;反之,則繼續迭代并重新計算個體適應度值,并再次進行選擇、交叉、變異操作,直至達到最大迭代次數,終止算法。
通過上述操作,實現了HMM 算法的改進。

定義種群離散度為d:

定義染色體k 對種群離散性的支持度為:
隨機生成p 個HMM 初始概率矩陣π,轉移概率矩陣和輸出概率矩陣分別為A、B,則π、A、B 均滿足式(22):

采用浮點編碼對矩陣π、A、B 進行編碼,得到對應的初始染色體Geπ,轉移染色體GeA,輸出染色體GeB,如圖1 所示。

圖1 概率矩陣編碼染色體過程

首先,兩兩比較警報的m 個屬性,并根據專家經驗對其重要程度進行打分,得到判斷矩陣[9]:

式(28)中, 表示兩者源/目的IP 地址從左到右相同位數。
然后,構建人工魚個體、食物濃度函數、模糊等價矩陣,并將高維樣本映射到三維平面。最后,采用人工魚群算法進行聚類,完成評價函數的設計。
基于改進HMM 的網絡安全態勢感知方法的基本思路是:首先采用人工魚群算法對獲取的網絡安全態勢數據進行優化,得到初步聚類結果;然后利用HMM 構建預測模型初始序列,并通過GA 算法不斷優化HMM 模型參數,以得到最佳網絡安全態勢預測模型;最后,采用維特比算法進行預測,實現網絡安全態勢感知。其具體實現流程如下。

步驟5:判斷是否滿足終止條件,若滿足,則輸出最優參數;反之,則返回步驟3,繼續迭代。
步驟6:計算極大化隱狀態序列,并預測下一時刻網絡安全態勢值。
上述流程可用圖2 所示。

圖2 基于改進HMM 的網絡安全態勢感知方法預測流程
本實驗在MATLAB2017 軟件上進行仿真。實驗數據集選自蜜網項目2000 年8 月至9 月的honeynet 數據集,該數據集由非盈利性項目組honeynet project 共享創建,共收集了2000 年4 月至2001 年2 月期間的每種攻擊,包括8 個不同IP 地址,通過本地ISP 單一ISDN 連接。
在此基礎上,文章首先通過snort2.0 獲取警報數據。然后,考慮到數據集中可能存在態勢值過大的數據會對模型學習造成一定影響,因此為避免過大態勢值的影響,文章對實驗數據集進行了歸一化處理,如式(35)。最后,通過遺傳算法對警報進行預測,并結合模糊推理形成警報分級態勢結果,從而進行網絡安全態勢預測。主要過程如下。
步驟1:采用開源入侵檢測系統snort2.0 檢測honeynet 實驗數據集,獲取報警信息;
步驟2:采用人工魚群算法優化警報聚類結果,并建立HMM 預測模型初始序列;
步驟3:初始化HMM 模型參數,并將初始序列輸入模型;
步驟4:預測警報形成分級態勢結果,并建立態勢指標,如圖3。

圖3 態勢指標

本實驗選用平均絕對誤差(MAE)對算法性能進行評估,其計算方法如式(36)。

式中,n表示數據量,xi表示實際值,yi表示預測值。
本實驗將GA 算法基本參數設置如下:迭代次數N=150,交叉概率P1=0.15,變異概率P2=0.005。采用輪盤賭的方式選擇每代個體子代。
3.4.1 網絡安全態勢預測效果
為驗證本研究基于改進HMM 算法對網絡安全態勢預測的準確性,研究選用實驗數據集每12小時預警次數作為態勢值,以最近7 天5 個測試時刻的警報次數對下一測試時刻警報次數進行預測,得到態勢值。最后,保留任意時刻最近前6個樣本,并與真實網絡安全態勢進行比較,得到如圖4 所示結果。由圖可知,本研究提出的改進HMM 網絡安全態勢感知方法,對網絡安全態勢的預測值與實際值接近,變化趨勢基本吻合,說明本研究方法可有效感知網絡安全態勢。

圖4 預測結果
3.4.2 算法對比
為進一步驗證本研究提出算法對網絡安全態勢感知的有效性與優越性,文章將改進的HMM模型分別與標準HMM 模型和RBF 模型對實驗數據集進行預測的結果加以比較,結果如圖5 所示。由圖可知,相較于基于HMM 模型和RBF 模型,本研究改進的HMM 模型對網絡安全態勢的預測結果與實際值更接近,且隨著時間的延長,本研究提出模型預測結果更準確。

圖5 不同算法預測結果
為更直觀地比較不同算法的預測性能,采用不同算法對網絡安全態勢進行預測,得到如表1所示結果。通過計算不同算法預測的絕對誤差,發現改進HMM 模型的預測結果的絕對誤差最小,相較于RBF 模型的預測效果提高了42.85%,相較于標準HMM 模型預測效果提高了46.67%,如表2 所示,說明本研究模型對網絡安全態勢的預測性能更好。

表1 不同算法對網絡安全態勢預測結果

表2 不同算法預測絕對誤差
綜上所述,本研究基于改進HMM 的網絡安全態勢感知方法,通過采用人工魚群算法優化標準HMM 初始聚類,并通過GA 算法優化HMM模型參數,避免了HMM 模型陷入局部最優,提高了模型預測精度;通過將改進HMM 應用于網絡安全態勢感知,可對網絡安全態勢變化趨勢進行有效預測,相較于RBF 模型和標準HMM 模型,本研究改進HMM 模型的預測效果分別提高了42.85%和46.67%,具有一定的優越性。但由于條件限制,本研究仍存在一些不足,主要表現在實驗數據集的選取方面。雖然本研究選用的honeynet 數據集雖可證明提出方法的有效性,但不能全面反映網絡安全態勢,使研究存在一定局限性,下一步,研究將嘗試采集多個數據集對提出方法進行驗證。