郭義



摘 要:隱馬爾可夫模型(HMM)是網絡安全態勢評估模型中應用最廣泛的評估模型,其參數的確定直接影響了評估結果的客觀性。針對這一問題,在粒子群算法(PSO)的基礎上,提出自適應聚群粒子群算法(ASPSO)。首先通過人工魚群在全局搜索方面的優勢對PSO進行改進,然后對PSO算法中的慣性權值和學習因子進行改進,以提高HMM參數尋優準確率。最后以DARPA2000數據集中的LLDoS1.0的DDoS攻擊場景進行模擬攻擊,結果表明,改進算法在迭代次數方面要明顯優于傳統的PSO-HMM算法,且可真實模擬DDoS攻擊場景,與云網絡實際受到攻擊時一致。
關鍵詞:云網絡;安全態勢評估;HMM模型;ASPSO算法
中圖分類號:TP393.08 文獻標識碼:A ? ? 文章編號:1001-5922(2021)10-0179-05
Research on Cloud Network Security Based on Improved HMM
Guo Yi
(Fuyang Industrial Economics School, Fuyang 236502, China)
Abstract:The Hidden Markov Model (HMM) is the most widely used evaluation model in the network security situation evaluation model, and the determination of its parameters directly affects the objectivity of the evaluation results. For this problem, the adaptive cluster particle group algorithm (ASPSO) is proposed based on the particle group algorithm (PSO). The PSO is first improved through the advantages of artificial fish groups in global search, and then the inertia weights and learning factors in the PSO algorithm are improved to improve the optimization accuracy of HMM parameters. Finally, the DDoS attack is the DDoS attack scene of LLDoS1.0 in the DARPA2000 dataset, which shows that the improved algorithm is significantly better than the traditional PSO-HMM algorithm in terms of iterations, and can truly simulate the DDoS attack scene, consistent with when the cloud network is actually attacked.
Key words:cloud network; security situation assessment; HMM model; ASPSO algorithm
在云計算和大數據高速發展的今天,信息安全、云平臺防護等面臨巨大威脅,如病毒入侵、分布式拒絕服務(DDoS)攻擊、黑客攻擊等。從當前網絡面臨的威脅來看,傳統的入侵檢測系統(IDS)、入侵防御系統(IPS)等被動防御已不能滿足網絡安全防護需求。同時,網絡安全態勢感知(Network Security Situation Awareness,NSSA)作為網絡運行狀態的反映,不僅可體現當前的運行狀況,還可根據態勢評估值評估未來運行趨勢。在網絡安全態勢感知中,主要數據來源于日志文件、網絡設備等。通過對這些數據的整合、關聯分析,并結合態勢評估算法,實現態勢預測評估目的,以爭取在網絡攻擊前規避或者是遏制部分威脅,達到保護和降低攻擊的目的。而當前基于網絡安全態勢的評估中,比較常見的態勢評估方法包括Dempster/Shafer(D-S)證據理論、樸素貝葉斯分類、攻擊圖、BP(Back Propagation)神經網絡等[1-6]。李欣等[8]將隱馬爾可夫模型應用到云網絡環境中,認為隱馬爾可夫模型(Hidden Markov Model, HMM) 在實時評估網絡狀態方面具有無可比擬的優勢,但是存在模型參數匹配較難,以及評估準確率不高的問題。鑒于此,本研究則在以上研究理論和實踐的基礎上,提出自適應聚群粒子群算法的HMM參數優化方法,并對云網絡安全態勢進行評估。
1 基于HMM的網絡安全態勢評估
基于HMM的網絡安全態勢評估認為,網絡的安全狀態與實際觀察的安全事件并非一一對應,而是通過概率分布進行聯系,即網絡安全的序列可展示網絡狀態的變化。在云網絡中,將云網絡看成是由若干個節點過程,網絡攻擊者通過網絡節點發起攻擊。因此,對云網絡安全進行評估,可看成是對節點的安全態勢評估。其中通過設備可搜集到節點的漏洞、病毒和攻擊信息,是觀測序列。這些節點的安全狀態很難直接觀察到,因此又稱為隱藏狀態。對此,為度量節點的安全狀態,認為節點的安全狀態與攻擊者間是概率關系,可通過HMM來進行描述。因此,通過HMM模型在對網絡中的節點進行態勢分量建模后,則通過出現最高概率的隱藏狀態序列來進行安全態勢的評估與判斷。
基于HMM的網絡安全態勢評估由五元組λ={S,M,π,A,B}構成,具體為:①狀態空間為S={S1,S2,…,SN},依據安全事件的等級,網絡狀態空間S={G,L,M,H, S},其中G、L、M、H、S分別表示網絡狀態良好、低危、中危、高危、嚴重。②M為每一個安全狀態對應的觀測集合,用M={M1,M2,…,MN},O={O1,O2,…,Ot,…,OT}。為提高建立的模型計算速度,增加數據源的完備性,本文參考韓愛平等的研究成果,將IDS告警因素按照影響等級設定為10,且觀測符號個數也設定為10,N={1,2,…,10}。③π為初始狀態矩陣,則應用π={πi}可計算各個狀態下的初始概率,其中。④A為狀態轉移矩陣,t 時刻網絡安全狀態為i,t+1時刻網絡安全狀態為 j,t到t+1時刻網絡安全狀態的概率為aij,則A={aij},,其中,,。⑤預測符號矩陣為B,t 時刻網絡安全狀態為Si,觀測符號bj在Si條件下的概率分布為bj(k),則,。其中bij≥0,,bj(k)不隨時間的變化而發生改變。
其中,π和A為馬爾科夫鏈參數,B表示一般隨機過程的參數。前者產生狀態序列,后者產生觀測序列。
在確定以上的HMM參數后,根據周期內檢測到的觀測狀態序列,O={O1,O2,…,Ot,…,OT},可計算出各節點在? t? 時刻的概率rt(i),具體表示為
式(1)中,。根據公式可求得各個節點不同時間段的分布,進而判斷各個節點出現威脅的概率。
為更好的度量節點安全態勢,引入節點權重對態勢進行評估,具體計算公式為
式(2)中,Z表示網絡節點數目;SA表示網絡安全態勢值;WHiRi表示各個節點的權重。其中,應用Pagerank算法對節點進行權重分配,具體分配方法可用式(3)表示為
式(3)中,α=0.85;W(hi)表示節點權重值;N表示網絡中節點數目;Out(hj)表示hj的出鏈數目;Mpi表示hj的出鏈集合。
2 HMM參數優化改進
在實際應用場景中,HMM模型參數設置暴露出人工設置的不準確性。因此,有必要對HMM參數進行優化,減少傳統認為設置的主觀性。針對該問題,李欣等(2019)提出通過Baum-Welch(BW) 參數優化算法與人群搜索算法結合對HMM進行優化。結果表明:該方法可提高準確率[8]。本研究在以往研究的基礎上,參考韓愛平的研究成果[9],提出采用自適應聚群粒子群算法的HMM參數優化方法。
2.1 基于ASPSO的HMM參數優化
傳統的粒子群優化算法(PSO)雖然尋優速度快,可應用于HMM模型參數進行確定,但由于其構造簡單,在搜索過程中容易陷入局部最優解,且收斂速度普遍較慢,因此需要對PSO算法進行改進。在該改進中,引入人工魚群的擁擠度因子,進而避免傳統PSO算法在HMM參數優化中容易陷入局部極值,從而達到全局最優的目的。
在引入人工魚群算法的同時,對PSO算法也進行改進,具體是對慣性權值ω和學習因子c1、c2的改進。本文首先確定PSO算法的慣性權值ω在0.4~0.9。在搜索迭代初期,通常取較大慣性權值,從而讓粒子擺脫劇組最優,提高全局最優;在后期,則取較小的慣性權值。因此,基于以上的分析,本文中將算法的迭代代數 gen 自適應的慣性權值公式變為
式(4)中,gen表示迭代代數;genmax表示最大迭數;ωgen表示迭代代數gen的自適應慣性權值;ωmax=0.9,ωmin=0.4。
同時,PSO算法中初次迭代時,c1和c2會影響算法的全局尋優能力和收斂速度。為保證PSO就有較強的全局尋優和收斂速度,本文應用迭代代數gen與學習因子的關系,確定了c1、c2的更新公式為
式(5)、(6)中,gen表示迭代代數;genmax表示最大迭代代數;cmin表示學習因子c1的初始值;cmax表示學習因子c1的最終值,且滿足0>cmin>cmax≤4。
2.2 基于ASPSO的HMM網絡安全態勢評估
結合以上的HMM參數尋優改進,將云網絡的安全態勢評估步驟分為以下幾步:
①確定HMM模型初始結構參數,包括狀態轉移矩陣和符號矩陣參數的確定;②初始化種群,設定初始粒子群數目為50,最大迭代數為100,確定種群中粒子的初始位置和初始速度,應用慣性權值計算式(4)和學習因子計算式(5)、(6)確定ω和c1、c2的值;③確定人工魚群算法參數,設人工魚總數為50,移動步長為0.5,最大試探數為4,擁擠度因子為0.2;④計算粒子的適應度函數并更新其最優值;⑤若迭代代數達到設定的最大迭代代數,停止算法,輸出最優粒子個體;若迭代數沒有達到最大迭代數,重復步驟④、⑤,直至得到最優參數;⑥根據式(2)計算網絡安全態勢結果,并輸出結果。基于 ASPSO的HMM云網絡安全態勢評估流程如圖1所示。
3 仿真實驗
3.1 實驗數據來源
為研究基于 ASPSO的HMM模型對云網絡安全的評估結果,本實驗應用DARPA2000數據集,在該數據集中包含LLDoS 1. 0的DDoS攻擊場景作為云網絡安全態勢的評估。DDoS 攻擊網絡流量主要分為5個階段:
第1階段:掃描活躍主機。
IP為202. 77. 162. 213的攻擊者對172. 16. 112. 0/24、172. 16. 113. 0/24、172. 16. 114. 0/24和 172. 16. 115. 0/24這4個IP進行掃描,查詢其中活躍的主機。
第2階段:Sadmind查詢。
查詢活躍主機是否運行sadmind,若主機正在運行sadmind,可進行第3階段。
第3階段:獲取主機root權限。
根據Sadmind Buffer Overflow漏洞獲得172. 16. 112. 20、172. 16. 112. 10、172. 16. 115. 50主機root權限。
第4階段:安裝DDoS攻擊工具。
在172. 16. 112. 20、172. 16. 112. 10、172. 16. 115. 50這3臺主機中安裝DDoS攻擊工具。
第5階段:發起攻擊。
利用DDoS攻擊工具發起攻擊,遠程控制172. 16. 112. 20、172. 16. 112. 10、172. 16. 115. 50這3臺主機。
3.2 模型參數確定
為確保仿真實驗的準確性,本實驗在Windows7操作系統、Matlab2014b、硬件處理系統為500 Hz、內存為512 M以上的環境下進行實驗。
設置 A/B 的參數。π =(1,0,0,0,0)。應用Matlab2017b軟件多次對模型參數進行實驗,最終確定模型的關鍵參數:慣性權值ωmax= 0.9,ωmin= 0.4;學習因子c1最大4,最小1;人工魚群數最少50;人工魚移動步長為0.5,最大試探數為4,感知距離為6,擁擠度因子為0.2。
3.3 仿真結果
(1)迭代次數優化。通過以上設置,分別得到只采用PSO算法和應用ASPSO算法對HMM參數進行優化的結果。其結果分別如圖2、圖3所示。
由圖2可知,PSO 算法對HMM模型參數的優化需要進行430次迭代才能得到最優解;由圖3可知,ASPSO算法對HMM模型參數的優化僅在第160代迭代數就可得到最優解。可見,ASPSO算法的優化結果比PSO算法的優化結果顯著。
(2)參數優化結果。應用ASPSO算法對模型的狀態轉移矩陣參數和觀測符號矩陣參數進行優化,可得到如表1所示的狀態轉移矩陣參數和表2所示的觀測符號矩陣參數值。
(3)安全態勢評估。結合以上的參數,采用DDoS攻擊場景1對云網絡進行攻擊模擬,對云網絡中的主機發起攻擊。攻擊5個階段發生的大致時間為:第1階段18~30 min;第2階段36~50 min;第3階段62~63 min;第4階段80 min后;第5階段118 min后。根據上述的模擬攻擊,如得到圖4的安全態勢評估結果。
由圖4可知,主機在被攻擊者與實際攻擊場合吻合,共經歷5個階段。當攻擊者攻擊進行到第3階段時,由于主機安裝有DDoS程序,因此后兩個攻擊階段的態勢曲線并沒有通過曲線圖反映出來。
整體網絡安全態勢評估曲線如圖5所示。
由5可知,在攻擊者攻擊主機的第1階段掃描過程中,云網絡的態勢值不高,為0.921;第2階段Sadmind掃描,網絡的態勢值開始增大,為1.866;第3階段入侵成功,網絡態勢值達到3.935;第4階段攻擊過程中,網絡的態勢值不斷減小直至趨于0;第5階段控制主機,此時的網絡態勢值達到4.247。
4 結語
綜上所述,本實驗對HMM模型參數優化,可極大減少迭代次數,并得到最優的HMM參數;同時,通過對HMM參數的改進,可得到不同攻擊節點網絡的安全態勢,且這種態勢與實際的攻擊一致,說明本實驗的改進有效,取得良好的評估效果。
參考文獻
[1]湯永利,李偉杰,于金霞,等. 基于改進D-S證據理論的網絡安全態勢評估方法[J]. 南京理工大學學報,2015,39(04):405-411.
[2]文志誠,曹春麗,周 浩. 基于樸素貝葉斯分類器的網絡安全態勢評估方法[J]. 計算機應用,2015,35(08):2 164-2 168.
[3]王 坤,邱 輝,楊豪璞. 基于攻擊模式識別的網絡安全態勢評估方法[J]. 計算機應用,2016,36(01):194-198+226.
[4]謝麗霞,王志華. 基于布谷鳥搜索優化BP神經網絡的網絡安全態勢評估方法[J]. 計算機應用,2017,37(07):1 926-1 930.
[5]韓曉露,劉 云,張振江,等. 網絡安全態勢感知理論與技術綜述及難點問題研究[J]. 信息安全與通信保密,2019(07):61-71.
[6]王巖雪,孫大躍. 基于蟻群算法優化BP神經網絡的政務云網絡態勢預測研究[J/OL]. 現代電子技術,2020(07):1-6.
[7]丁華東,許華虎,段 然,等. 基于貝葉斯方法的安全態勢感知模型[J/OL]. 計算機工程,2020(07):1-12.
[8]李 欣,段詠程. 基于改進隱馬爾可夫模型的網絡安全態勢評估方法[J/OL].計算機科學,2020(05):1-5.
[9]韓愛平. 面向政務云的網絡安全態勢評估與預測技術研究[D].西安:長安大學,2019.