朱 敏
(湄洲灣職業技術學院 現代教育技術中心,福建 莆田,351119)
隨著全球計算機技術以及互聯網技術的快速發展,網絡也逐步復雜化、大型化,網絡攻擊行為手段也越來越多樣化,常規的網絡安全措施(防火墻、入侵檢測、加密等)大部分均屬于被動防御,且各個防御措施之間并沒有內在關聯,無法全方位地應對嚴峻的網絡安全形式,態勢安全技術則應運而生[1]。態勢安全最先起源于軍事領域中,并引伸出了相關的態勢感知技術(Situational Awareness),近幾年也逐步應用到工業社會領域中。
網絡安全態勢評估技術的基本原理是通過安全機器收集到數據和信息,以此來獲取到網絡攻擊行為和對象的一致性評估,這種動態來源相比單一的評估方式來源更加可靠。Jason Shiffley應用本體模塊化分析網絡態勢安全形式,并針對不同模塊采取了不同的安全檢測技術,以此來獲取得到整體網絡安全態勢。Olabelurin等設計熵聚類預測框架實現了DDos攻擊行為實時監測,并可以主動對攻擊行為實施防御。韋勇等[2]基于D-S證據理論,提出了基于日志審計的評估方法,該種評估方式更精確的評估網絡安全現狀以及發展趨勢。陳虹等[3]進一步融合D-S理論和網絡告警信息、日志記錄等,結合分析鏈路安全態勢來完成對網絡安全態勢的感知。
網絡安全態勢感知評估充分利用各種網絡安全技術手段以及網絡設備等多維角度分析網絡安全要素,以此來構建基于網安全行為的網絡安全態勢評估體系,協助管理人員合理調整網絡節點設備、主機等。
網絡安全態勢評估經典模型為Tim Bass入侵檢測模型,它是一個研究框架,具體如圖1所示。Tim Bass框架中包含了以下幾個步驟:

圖1 Tim Bass 入侵檢測數據融合框架knowledge
(1)數據精煉模塊:主要功能為收集網絡安全設備實時監測的數據,并對這些數據進行預處理;
(2)攻擊對象識別模塊:從空間、時間等角度關聯分析并預處理后的安全設備數據,從中識別網絡攻擊對象;
(3)動態理解提煉模塊:在獲取網絡攻擊對象后,充分挖掘對象之間的聯系,充分了解網絡實時運行狀態,并實現評估網絡安全態勢。
(4)威脅評估模塊:統計網絡安全攻擊行為發生概率以及造成的危害[3],此外評測不同網絡安全攻擊行為對網絡造成的威脅程度;
(5)資源管理模塊:實時監控全網態勢系統,并制定確保網絡安全的對策。
Tim Bass入侵檢測模型雖然只是一個網絡安全態勢評估框架模型,但在網絡安全態勢評估發展中具有十分重要的作用。由于Tim Bass框架并沒有完全實現,由此需要后續學者深入研究相關框架理論和實踐。
在當前研究中,網絡安全態勢評價模型有較大的差異性。根據需求不同,網絡安全態勢評價模型中評價因子主要有:計算機漏洞分析、入侵檢測系統日志、網絡攻擊行為、防火墻日志信息、權限設置等[4]。在網絡安全態勢評價模型中可以通過添加多個評價因子來提升評估結果。在深入研究后,評價因子的增加會復雜化網絡安全態勢評價模型的全局,對于網絡監管員的要求也非常高。
從宏觀角度來提取網絡安全信息數據源指標,忽視攻擊行為中的細節,并將最后量化形式的評價結果直接呈現給網絡監管員,具體流程如圖2所示。

圖2 網絡評估模型
基于BP神經的網絡安全態勢評估實現流程如下:首先進行神經網絡訓練,訓練過程中網絡收斂后可以得到各項指標值;然后應用BP神經網絡模型訓練待評價評估因子,并得到網絡安全評估結果,反應了當前網絡的安全現狀。
網絡安全態勢評估結果要精準地反應網絡安全現狀,這就需要對各個網絡安全攻擊行為進行內在關聯性進行分析[5],充分考慮網絡復雜性和異構性,得出攻擊行為對態勢評估的影響,并以此來構造態勢安全評估體系。
在分析了網絡攻擊行為對于態勢評估的影響后,定義了以下態勢評估因子:
(1)攻擊頻次因子:定義網絡運行周期內實時監測到不同種類攻擊行為的發生頻次,符號定位為Ci(i表示第i種攻擊行為類型)。
(2)攻擊數量因子:定義網絡運行周期內實時監測統計到的攻擊行為數量,符號定義為N。
(3)攻擊威脅因子:定義網絡安全攻擊行為導致的安全行為影響[1],符號定位為Xi(i表示第i種攻擊行為類型)。
由于不同類型攻擊行為對網絡安全的威脅程度不同,因此,定義了在t時刻每種網絡安全攻擊類型的評估威脅指數為:
根據網絡安全運行狀態分析,根據攻擊威脅度水平將態勢評估指標體系劃分為以下4個等級:安全、輕度、中度、重度[2]。為了更好地直觀分析網絡安全態勢評估,對各個等級采用數值化定量分析,如表1所示。

表1 網絡安全等級劃分
在構建網絡安全態勢評估模型中,將BP神經網絡輸入指標作為態勢指標評估因子,BP神經網絡在訓練過程逐步優化確定每層中各個參數[5],輸出參數為網絡安全等級值。訓練過程中應用遺傳算法優化各個參數來快速獲取全局最優解,提升網絡安全態勢評估模型準確性和效率[6]。
訓練過程中遺傳算法中通過優化權值避免初始值的盲目性[3]。BP神經網絡學習中將神經元作為遺傳算法中染色體,通過選擇適合的適應度函數實現迭代操作,迭代結束后輸出網絡安全等級。
(1)編碼。訓練過程中BP神經網絡中將節點劃分為:輸入層節點為j、隱含層節點為j、輸出層節點為k,并定義訓練矩陣為:
輸入層-隱含層之間的權值矩陣為:
隱含層闕值矩陣為:
隱含層和輸出層權值矩陣為:
輸出層的闕值矩陣為:
遺傳算法會優化BP神經網絡中的權值[4],這就需要將上述節點矩陣變換為染色體串,設計的染色體串編碼方式為二進制編碼,每個系數的值均采用x個染色體位構成,且x的值取決于當前精度,由此編碼映射關系如圖3所示。

圖3 編碼映射關系圖
(2)適應度評價。適應度函數則是遺傳算法性能的重要指標,在滿足了BP算法需求后,適應度函數采用分類誤差準確度函數:通過計算輸入樣本得到誤差函數值,然后根據誤差結果來評價網絡安全,誤差值越小表示適應度越大。
(3)選擇、交叉、變異操作
保留適應度較高的個體,重組適應度較低的個體,并生成下一代適應度更高的群體。
(4)迭代上述操作,直至找到收斂值。
構建基于BP神經神經安全態勢評估模型的基本流程如下:初始化BP神經網絡參數,并將預處理后的原始數據輸入到態勢評估模型中[5],應用遺傳算法對權值迭代選擇優化,以此來快速獲取得到訓練參數值,增強網絡泛化能力和訓練結果精確性,訓練結束后直接輸出網絡安全態勢評估結果值。
搭建網絡拓撲結構如圖4實驗環境所示,模擬實際攻擊行為發起對網絡的攻擊,應用網絡傳感器數據采集工具收集路由器的Snort攻擊信息。實驗數據采用KDD Cup99數據集,通過標注網絡攻擊行為能夠較為精準的獲取攻擊行為監測率。KDD Cup99數據集中每條紀錄都是由42位組成,前41位為特征字段,第42位為標注字段,根據設計的攻擊威脅因子Xi,不同類型的攻擊行為對網絡安全運行威脅程度均不同,各個攻擊類型分布如表2所示。

圖4 網絡拓撲結構圖

表2 攻擊行為類型分布表
KDD Cup數據集過于龐大,采取其中的10%數據作為實驗數據,并隨機劃分為訓練樣本、測試樣本,具體分配情況如表3所示。

表3 數據集劃分
通過對比分析常規BP算法來驗證遺傳算法對BP神經網絡權值算法的優化效率,實驗結果如圖5所示。實驗結果顯示兩者算法收斂結果保持一致[6],但收斂速度明顯高于常規BP算法,表明應用遺傳算法優化BP神經網絡權值可以確保訓練結果的精確性,效率更高。

圖5 實驗結果對比圖
應用BP神經網絡訓練集評估測試數據集,并分析輸出的安全評估等級值(0~1),并將與期望值進行對比分,對比如圖6所示。通過分析對比圖可知,評估結果值和期望值趨向以及大小值均保持一致,表明設計的算法具備非常好的評估精確率、時效性。

圖6 威脅值對比圖
構建網絡安全態勢感知評估模型可以提升評估網絡安全性能,并提升網絡安全預警的精確性。通過分析當前網絡安全情況,設計了攻擊指標因子來全面反應網絡攻擊行為。此外更好地解決了收斂速度較低、訓練效率差等問題。應用遺傳算法來優化BP神經網絡訓練過程權值,提升了訓練效率,并基于優化后的BP神經網絡構建了網絡態勢評估模型指標體系,實時統計監控分析網絡安全狀態。實驗結果表明,文章提出的基于BP神經網絡安全態勢評估模型中具備較好的訓練集以及收斂速度,評估效率也更符合預期值。