◆張 晴
?
基于隱馬爾可夫模型的網絡安全態勢預測的研究
◆張 晴
(河北師范大學(石家莊)信息技術學院 河北 050024)
隨著國家重要信息設施日益網絡化,網絡安全形勢越來越復雜,本文提出根據網絡安全態勢的特點重新構建隱馬爾可夫模型。采用隱馬爾可夫模型的時間序列方法,刻畫出不同時刻的安全態勢,優化模型的參數,以增加模型參數的準確性和客觀性,并用前向算法和后向算法相結合的方法實現識別單個狀態的概率,最后用維特比算法預測其安全態勢的變化趨勢,為網絡管理人員提供合理數據提高其工作效率和效果。
隱馬爾科夫模型;網絡安全態勢;優化參數;維特比算法
隨著國家重要信息設施日益網絡化,相應的網絡安全形勢也越來越復雜,因此,網絡安全態勢預測成了網絡安全研究領域的重點,有望解決網絡安全與管理問題。研究者提出了一些方法,謝麗霞等針對網絡安全態勢感知問題,提出一種基于神經網絡的網絡安全態勢感知方法,但其對態勢發展趨勢及預測準確度還不夠。李偉明等提出利用遺傳算法來確定狀態轉移概率分布和觀測概率分布,但其針對特定攻擊和風險的描述規則缺乏靈活性,規則庫不易構造。因此,本文提出基于隱馬爾可夫模型對網絡安全態勢進行預測,達到提高其識別和預測的精確度。
隱馬爾可夫模型是用來描述由一個隱藏的馬爾可夫鏈隨機生成不可觀測的狀態隨機序列,再由各個狀態生成一個可產生觀測隨機序列的過程[1]。針對網絡安全態勢的特性,參照馬爾可夫經典模型,可建立隱馬爾可夫模型,由一個λ=(V,S,PI,A,B)表示:
(1)V表示可觀測集合空間,記V={V1,V2,…,VM},其中M表示各狀態觀測向量值的數目。
(2)S表示隱藏狀態集合空間,記S={S1,S2,…,SN},其中Si表示一個獨立的狀態,N表示狀態的數目。不同的報警信息導致網絡進入不同的安全狀態,可將網絡的安全狀態劃分為“高、中高、中、中低、低”5個狀態。
(3)PI表示初始隱藏狀態概率分布矩陣,記PI={PIi},其中PI=P(i1=Si),1≤i≤N,表示可觀測序列O在某時刻t=1時,各個隱狀態的初始所處狀態Si的概率分布情況。
(4)A表示隱藏狀態的狀態轉移概率分布矩陣,記A={aij},其中aij=P(it+1=Sj|it=Si),1≤i,j≤N,表示在t時刻處于狀態Si且在t+1時刻轉移到狀態Sj的概率。
(5)B表示隱藏狀態對應的觀測狀態概率分布矩陣,記B=bi(k),其中bi(k)=P(Ot+1=Vk|it=Si), 1≤k,i≤N,表示在時刻t處于狀態Si的條件下生成觀測值Vk的概率。
前向算法的步驟如下所述:
(1)初始化前向概率
αi(1)=PIi*bi(O1),i=1,2,…,N
(2)迭代計算

(3)終止條件
P(O|λ)=
維特比算法的步驟如下所述:
(1)初始化
δi(1)=PIi*bi(O1),i=1,2,…,N
ηi(1)=0, i=1,2,…,N
(2)進行遞推公式
δi(t)=max[δj(t-1)aij]bi(Ot), i=1,2,…,N;j=1,2,…,N
ηi(t)=argmax[ηj(t-1)aji], i=1,2,…,N;j=1,2,…,N
(3)求最優路徑的終點
P*=maxδi(T), i=1,2,…,N
it*=argmax[δi(T)],i=1,2,…,N
(4)最優路徑回溯,對于t=T-1,T-2,…,1
it*=ηit+1*(t+1)
綜上所述,可求得最優路徑為I*=( i1*, i2*,…, iT*)。
傳統的狀態轉移矩陣往往依據經驗給出,具有很強的主觀性,因此,本文提出將網絡安全狀態的轉移看作攻擊事件與防護措施的博弈過程,可描述為|E|×|R|矩陣。E為網絡中發生的攻擊事件,將網絡劃分為5種攻擊事件:IP掃描類、端口掃描類、獲取口令類、破解口令類、獲取系統權限類。R為網絡中所部署的防護措施,將網絡劃分為5種防護措施:監測IP掃描類、監測端口掃描類、阻止獲取口令類、阻止破解口令類、修復獲取系統權限類。
根據上述矩陣分析,可得當網絡安全狀態分別5種狀態時的|E|×|R|矩陣,最終可確定得到隱藏狀態的狀態轉移概率分布矩陣A,如下所示:

由于前向算法求得某一觀測序列出現的概率對于網絡安全態勢毫無實際意義,因此,本文提出采用隱馬爾可夫模型的前向算法和后向算法相結合的方式,刻畫出不同時刻的安全態勢,實現識別某一時刻網絡處于的安全狀態的概率,進而推斷出此時的網絡安全狀態。
后向算法步驟如下所述:
(1)初始化后向概率,對最終時刻的所有狀態Si規定: βi(t)=1,即βi(T)=1,i=1,2,…,N。
(2)后向概率的遞推公式

(3)給出P(O|λ)的計算公式,
綜上所述,可用前向算法和后向算法相結合的方式,計算出在t時刻網絡處于狀態Si的概率,公式如下:

本實驗選用美國麻省理工學院林肯實驗室提供的DARPA2000攻擊測試數據集LLDOS1.0。
本實驗的運行平臺為Windows操作系統。硬件環境的要求為主機處理器在500.0MHz以上,存在512M以上。軟件運行環境為Sublime開發軟件,Python語言編寫。
分別將依據經驗給出的狀態轉移矩陣和通過博弈過程計算出的狀態轉移矩陣,對網絡安全態勢進行計算識別。此時的初始概率分布矩陣PI和觀測概率分布矩陣B均勻設置,狀態轉移概率分布矩陣A為改進得出,如下所示。

本實驗將報警信息依照威脅性劃分為3個等級,分別為“低、中、高”。采集一組報警信息的觀測樣本數據,分別為“低、中、中、低、低、中、高、低、中、高”,使用前向后向算法。實驗結果得出,t=5時,報警信息為“低”,可推斷此時的狀態為“高”。根據專家經驗計算和根據博弈過程計算的網絡安全狀態概率如表1所示。
表1 網絡安全狀態概率

經過對比分析,可以明顯地看出根據博弈過程計算出的網絡安全態勢的概率更高、更精準。
本實驗繼續將采集的報警信息的觀測樣本數據,使用維特比算法得到網絡安全態勢最佳隱狀態序列為:高、低、低、高、高、低、低、高、低、低。最后一個隱狀態為“低”,根據博弈過程計算出的狀態轉移概率矩陣,低狀態轉移到低狀態的概率為最高概率0.8。所以,可預測出在下一時刻的安全態勢為“低”。接下來,網絡管理人員可根據預測的結果對下一步的防護措施進行部署和調整,這就大大地提高了網絡管理人員的工作效率。
本文研究了基于隱馬爾可夫模型對網絡安全態勢的識別和預測,重構了隱馬爾可夫模型,并且提出更科學的方法來確立模型參數。采用前向后向算法識別某一時刻的安全態勢概率,最后用維特比算法得到隱藏狀態序列,從而預測其安全態勢的變化趨勢,為網絡管理人員提供合理數據,提高其工作效率。
[1]劉科.基于隱Markov模型的網絡安全態勢評估機制研究[D].曲阜師范大學,2017.
[2]于瀅.網絡安全態勢感知系統的研究[J].電腦知識與技術,2017.
[3]陳叢.網絡安全態勢評估與預測技術分析[J].科技風,2017.
[4]張艷雪.基于模糊-隱馬爾可夫模型的復合式攻擊預測方法研究[D].河北師范大學,2015.
[5]劉景瑋.博弈論在網絡安全態勢感知中的應用[D].大連海事大學,2013.
[6]詹雄,郭昊,張錋,毛澍.基于隱馬爾可夫模型的網絡安全態勢預測方法[J].電信科學,2015.
[7]張勇,譚小彬.一種基于隱Markov模型的網絡安全態勢感知方法研究[J].信息網絡安全,2011.
[8]李方偉,楊紹成,朱江.基于模糊層次法的改進型網絡安全態勢評估方法[J].計算機應用,2014.