針對當前預測模型只能對過去和現在網絡安全態(tài)勢進行分析,不能對將來網絡安全態(tài)勢進行預測的缺陷,為了提高預測精度,提出了支持向量機的網絡安全態(tài)勢預測方法。支持向量機可以利用過去和當前的網絡安全態(tài)勢值,對將來網絡安全狀態(tài)進行預測,同時采用遺傳算法對支持向量機參數優(yōu)化,加快網絡安全態(tài)勢預測速度。通過仿真對預測方法性能進行檢驗,結果表明,預測方法能夠準確反映網絡安全的整體變化趨勢,提高了網絡安全態(tài)勢的預測精度,相對于傳統(tǒng)預測方法,更適用于現實的網絡環(huán)境中。
隨著互聯網發(fā)展,網絡攻擊手段層出不窮,網絡安全問題越來越重要,殺毒軟件和防火墻等產生大量的告警信息,網絡管理者面對如此海量的數據難以把握網絡系統(tǒng)的安全狀態(tài),不能及時采取相應的防范措施。為了使網絡的安全管理從被動變?yōu)橹鲃?,網絡安全態(tài)勢預測應運而生。網絡安全態(tài)勢預測能夠為網絡管理者提供過去和當前時刻的網絡安全狀態(tài),同時可以對未來時段網絡的安全態(tài)勢進行預測,減輕管理者的數據壓力,因此成為當前網絡安全研究中的熱點。
1999年,TimBass對網絡入侵檢測系統(tǒng)進行了分析,指出網絡入侵檢測系統(tǒng)的不足,同是提出了網絡安全態(tài)勢的概念。隨后國外許多研究者對網絡安全態(tài)勢進行了大量的研究,然則國內對網絡安全態(tài)勢預測研究剛起步。傳統(tǒng)網絡安全態(tài)勢預測算法為基于統(tǒng)計的貝葉斯技術和灰色關聯模型,該方法只能給網絡管理者提供過去和當前的網絡安全態(tài)勢狀態(tài),不能對下一個階段網絡安全狀態(tài)進行預測?;疑P聯模型只能反映網絡安全態(tài)勢的趨勢,不能對網絡安全態(tài)勢進行精確的預測。
支持向量機是一種非線性預測能力非常強的方法,能夠在海量數據中識別和提取網絡安全系統(tǒng)隱藏的規(guī)律,因此,為了提高網絡安全態(tài)勢的預測精度,提出遺傳優(yōu)化支持向量機的網絡安全態(tài)勢預測模型,利用遺傳算法全局搜索能力對支持向量機參數進行優(yōu)化,采用支持向量機對網絡安全狀態(tài)進行預測,最后對實際網絡安全態(tài)勢值進行仿真預測,并對預測精度進行分析,驗證該網絡安全態(tài)勢預測方法是有效性。
“態(tài)勢”一詞來自軍事領域,一般用于說明一個范圍較大、結構比較復雜、因素影響眾多的被研究對象的狀態(tài)綜合表現,最典型的如戰(zhàn)場態(tài)勢。在網絡安全研究中,引入“態(tài)勢”的概念,主要目標是希望建立一套可行的網絡安全態(tài)勢體系,對網絡的整體安全狀況有一個全面、快速的了解。網絡態(tài)勢預測原理是根據網絡安全事件發(fā)生的頻率、數量,以及網絡受威脅程度的不同,通過加權處理,將海量的網絡安全信息融合成一個能表現網絡運行狀況態(tài)勢值,然后依據歷史的和當前的網絡安全態(tài)勢值對未來網絡安全趨勢預測。
網絡安全態(tài)勢是一種按時間先后順序采集的數據,因此可以當成一個時間序列進行處理,前一段時間序列態(tài)勢值作為預測模型的輸入變量,輸出是網絡安全態(tài)勢下一時間的態(tài)勢值。因此,網絡安全態(tài)勢預測就是希望通過序列的前N個時刻的態(tài)勢值,預測出以后的 M個態(tài)勢值,其分為兩個步驟:對采用訓練數據進行訓練建立網絡安全態(tài)勢預測模型;采用網絡安全態(tài)勢模型對下一階段的網絡安全態(tài)勢進行預測。
由于網絡安全態(tài)勢具有隨機性和不確定性,因此采用傳統(tǒng)預測模型很難對其進行準確的預測,而支持向量機是一種新的機器學習方法,對隨機性和不確定性系統(tǒng)具有非常強的自適應學習能力,比較適合于網絡安全態(tài)勢預測,因此本文采用支持向量機對網絡安全態(tài)勢進行建模并預測。
支持向量機是近年來興起一種非線性預測技術,大量研究結果表明,基于支持向量機的預測模型性能優(yōu)于一般預測算法,尤其對高度復雜度的非線性問題,其優(yōu)勢更加明顯。支持向量預測是通過一個非線性映射φ函數,將非線數據xi映射到高維特征空間H,并在該高維特征空間進行線性預測,即:
其中,ω表示支持向量機超平面的權值向量,b表示為偏置量。
因此,支持向量預測就是求解如下一個優(yōu)化問題,即:
其中約束條件為:
其中,c表示懲罰參數,ξi、ξ*i表示松弛變量,ε不敏感損失函數,ε定義如下:
通過引入拉格朗日乘子,將非線性預測問題轉為成如下一個優(yōu)化問題,即:
其中,αi、α*i表示拉格朗日乘子。根據KKT條件,支持向量機預測問題可以通過解式(2)的對偶問題來求解,即:
約束條件為:
針對集約化的需求,匹配抽取到的能力指標,各校、各系、各專業(yè)的學生依據個人能力和興趣自主加入,利用協同共享平臺增加和強化知識體系,以滿足企業(yè)的用人要求。
其中,k(x,xi)表示支持向量機核函數,描述了高維特征空間的內積。由于高斯核函數比其它核函數效果好,因此本文選擇高斯核函數作為支持向量機核函數,高斯核函數定義如下:
那么,支持向量機預測模型最后的表達式為:
其中,σ表示高斯核函數寬度。
當支持向量機的核函數為高斯核函數,預測模型需優(yōu)化的參數為:ε,c和σ。傳統(tǒng)支持向量機參數一般采用經驗確定法、窮舉法和網絡搜索方法。經驗確定法選擇的參數一般不是最優(yōu),模型的預測精度較低,而窮舉法、網絡搜索方法耗時相當長,難以找到最優(yōu)參數,因此要提高網絡安全態(tài)勢的預測精度,首先要解決支持向量機參數的優(yōu)化問題。遺傳算法是一種模擬生物界自然選擇和群體進化機理的一種啟發(fā)式算法,具有全局搜索和并行搜索能力,尋優(yōu)速度相當快,因此本文采用遺傳算法對支持向量機的參數ε、c和σ進行優(yōu)化。
(1)網絡安全態(tài)勢數據的收集,并對收集到的異常和不良數據進行處理。
(2)網絡安全態(tài)勢數據的預處理。由于網絡安全態(tài)勢受到多種因素影響,數據之間有時相差很大,而支持向量機預測模型對(0,1)之間的最敏感,因此需要將網絡安全態(tài)勢原始數據進行歸一化處理,將其歸一化到(0,1)范圍。
(3)將一維網絡安全態(tài)勢數據通過確定嵌入維和時間延遲轉換成多維網絡安全態(tài)勢數據,本文設數據網絡安全態(tài)勢時間延遲為1,嵌入維按2,3,…等逐步試湊,最后確定嵌入維數為m。設一維網絡安全態(tài)勢數據為{x1,x2,… ,xn}。
(4)將網絡安全態(tài)勢數據分成訓練集和測試集兩部,將訓練集的輸入和輸出數據輸入到支持向量機學習,采用遺傳算法對支持向量機參數進行尋優(yōu),采用最優(yōu)參數建立網絡安全態(tài)勢最優(yōu)預測模型。
(5)采用最優(yōu)網絡安全態(tài)勢預測模型對測試集進行預測,根據網絡安全態(tài)勢值判斷當前網絡安全狀態(tài)。
為了驗證本文提出的支持向量機網絡安全態(tài)勢預測模型的有效性,選取某公司互聯網2009年10月1日-30日邊界安全監(jiān)測數據,每天進行4次采樣,就共獲得120個態(tài)勢值。前90個態(tài)勢值作為支持向量機的訓練樣本,后30個態(tài)勢值作為支持向量機測試樣本,所有實驗都在matlab7.0平臺上實現。
設網絡安全態(tài)勢的延遲時間為1,采用試湊法慢慢增加嵌入維數,最后嵌入維確定8,即支持向量機的輸入變量為7個,輸出變量為1,通過延遲時間和嵌入維數對網絡安全態(tài)勢數據進行重構,生成支持向量機的訓練和測試樣本。將訓練樣本輸入支持向量機進行學習,同時采用遺傳算法進行參數優(yōu)化,遺傳算法的參數設置為:進化代數100,初始種群個數40,訓練的目標誤差為0.01,交叉概率為0.95,變異概率為0.05。當程序運行到50.55秒后,達到目標誤差,此時支持向量機的訓練步數為5000。
為便于比較,采用BP神經網絡算法和RBF神經網絡來進行預測,采用均方誤差(MSE)和平均相對誤差(MAE)作為模型評價指標。
預測結果比較可明顯得出:支持向量機預測速度、運行時間、預測精度都要比BP神經網絡算法和RBF神經網絡好很多,這主要是由于支持向量機的預測性能要優(yōu)于BP和RBF神經網絡,同時采用遺傳算法進行參數,同時對解空間內的許多點進行搜索,很好防止了神經網絡算法陷入局部最小點、收斂速度慢的問題,支持向量機是一種預測快速、預測精度高、結果可靠的網絡態(tài)勢預測方法。
本文在對當前網絡態(tài)勢預測相關算法做出了分析,并提出基于支持向量機的網絡安全態(tài)勢預測方法,并詳細介紹預測模型設計與實現,最后通過仿真對模型的性能進行驗證,仿真結果表明,支持向量機比傳統(tǒng)預測方法更能夠準確地預測態(tài)勢,準確反映網絡安全態(tài)勢的整體變化情況,預測結果有利于指導網絡管理員對將來可能發(fā)生的網絡安全事件和網絡安全變化趨勢采取適當的應對措施。