, ,
(第二軍醫大學 基礎醫學部,上海 200433)
基于改進Apriori的網絡安全感知方法
陸江東,鄭奮,戴卓臣
(第二軍醫大學基礎醫學部,上海200433)
針對網絡安全態勢評估過程中存在數據源單一、實時性不強、準確率不高的問題,提出一種基于改進關聯規則算法(Apriori算法)的網絡安全態勢感知方法;通過對數據的分析,發現在網絡中存在關于安全態勢的關聯規則;通過網絡攻擊影響熵值序列的分析,對關聯規則進行分類為空間正常和異常空間,進而對關聯規則進行聚類分析;根據聚類后的規則劃分網絡安全態勢等級;將改進后的算法應用到網絡安全態勢感知當中,實驗結果表明,該方法滿足了網絡安全危險預警和實時監控的要求;改進的算法用于安全態勢感知是可行的、有效的。
網絡安全;關聯規則;Apriori算法;態勢感知
網絡安全態勢分析(NSSA)[1]是一門出現在網絡當中的新興技術,能夠輔助安全專家對自己的網絡進行實時、準確地安全評估。但是,由于網絡安全的影響因素復雜多變,并且具有較大的不確定性,因此,構建一種網絡安全態勢評估系統對網絡態勢進行評估和預測成為一項重要的研究問題。
針對這一問題,研究者們提出了多種解決方法。Tim Bass[2]建立了融合多傳感器數據的入侵檢測框架,并且將其應用于新一代網絡態勢感知和入侵檢測系統中。后來,Jason Shifflet等[3]人也提出了類似的模型。2006年,美國國防部預研發展署在本年的研究中,對網絡態勢感知系統所要研究的目的和一些相關技術做了詳細的說明。陳秀真[4]等人通過研究提出了具有層次化的網絡安全威脅衡量方法。趙國生等人[5]通過研究提出了基于灰色關聯分析的網絡可生存性衡量方法,將灰理論應用到網絡態勢感知中的態勢預測模型中。
然而,現有方法仍然存在諸多問題。這類算法依賴于Apriori算法[7-8],該算法有以下幾個主要問題:1)多次掃描不是頻繁項集的選項;2)進行候選間的自連接時,相同項目過多;3)未對數據庫中的記錄進行優化,重復掃描無用記錄。因此,這類方法難以處理數據來源多樣的情景,在實踐中往往準確率較低、實時性較差。
針對這類問題,本文對經典的關聯規則算法(Apriori算法)進行改進,分別對候選項集的產生和判斷過程進行優化,降低不必要的計算和存儲過程。 在此基礎上提出了一種新網絡安全態勢的感知模型。該模型首先生成信息熵序列。接著對序列進行離散化,并運用本文改進的Apriori算法進行關聯規則挖掘。然后對這些規則進行分類。最后根據分類后的關聯規則進行態勢風險指數生成。
為驗證本文算法的有效性,通過在校園局域網上設計實驗,進行網絡安全監測。實驗結果表明,本文提出的算法可以有效的達到實時監測要求。
傳統的Apriori算法[7-8]面臨以下幾個主要問題:1)多次掃描不是頻繁項集的選項;2)進行候選間的自連接時,相同項目過多;3)未對數據庫中的記錄進行優化,重復掃描無用記錄。針對這些問題,本文從候選集產生、頻繁項集判斷及數據庫操作3個方面對該算法進行改進。
1.1 候選項集產生過程的改進
從k項集生成k+1項時,由于Lk的自連接操作中會產生很多與k項集相同的候選項,只要在生成前進行判斷,如果兩個項集的前k-1項不同,則直接放棄對該記錄的計算,移置下一個記錄進行計算。
1.2 頻繁項集判斷過程的改進
首先,計算出|LK-1(ij)|,同時,計算出LK-1中所有事務項集的頻率;然后,計算頻率小于k+1的所有項集,即I’={i|<|LK-1(ij)| 1.3 數據庫的優化 由于每次進行項集判斷時,會頻繁的對數據庫進行連接,這將消耗大量資源、浪費很多時間。這是本文通過對事務進行標記,從而達到減少連接數據庫的目的。 1.4 算法步驟 第一步:設置最小支持度min_support和最小置信度min_confidence,連接數據庫,獲取1項集合的各種支持度,生成1項集合L1。 第二步:候選項集的產生。依據2.2節當中所描述的改進方法,對第一步所產生的L1進行項集頻率的排序(升序或者降序均可),生成k-1項集Lk-1。 第三步:頻繁項集判斷。按照2.3節所描述的改進方法,獲取Lk-1中所有項集的頻率信息,記錄所有頻率小于k+1的項目I’={i|<|Lk-1(ij)| 第四步:添加標記信息。根據2.4節所描述的改進方法,為不在Ck中的項集的事務添加標記信息,比如用“1”表示,然后刪除標記為“1”的所有項集,得到新的候選項集信息。 重復第二步到第五步的計算過程,當所有事務均不能產生新的頻繁項集的時候,停止循環。得到的結果即挖掘出來的規則。通過與最小置信度min_confidence進行對比,得到有效的關聯規則。 圖1 基于改進Apriori算法的網絡安全態勢感知方法 網絡當中受到的攻擊進行檢查和反饋的網絡安全態勢感知系統是加強網絡安全的一種手段。針對網絡安全態勢感知的要求,本文在改進的關聯規則的基礎上提出了一種新的網絡安全趨勢的預知模型,如圖1所示。該模型首先生成信息熵序列。接著對序列進行離散化,并運用本文改進的Apriori算法進行關聯規則挖掘。然后對這些規則進行分類。最后根據分類后的關聯規則進行態勢風險指數生成。 2.1 網絡安全態勢感知的數據源分析 為了合理高效的使用收集到的網絡數據,本文引入信息熵[6-8]這一概念及其技術。信息源被看作是一組隨機事件的集合,該集合具有不確定性和隨機性的特點。通信系統具有統計特征性,各個信息源信號出現的幾率就形成了信息熵。 將流經某一個地址的不同類型事件進行分類,每一類視為一組隨機事件,那么,這樣運用信息理論的相關技術對這一系列隨機事件進行分析。假設p(xi)為某一隨機事件的概率分布,i=1,2,…n,那么信息熵表示為: (1) 而p(xi)由某一種測量數據中某個地址發生的次數ni進行計算: (2) 將NetFlow數據源與信息理論中的信息熵進行映射,形成新的數據源信息,下文的分析主要基于轉換后的數據源信息。 2.2 信息熵數據源的生成 要通過信息論算法[9]進行處理,首先要將NetFlow數據轉化為信息熵序列。網絡信息被視為與時間相關的函數,將信息熵H假定為與時間t的函數:H=f(t)。通過計算時間t0前所發生的信息熵時間序列規律,對時間t0以后的信息熵進行預測,從而達到對網絡的安全態勢感知。信息熵時間序列表示為: x={xi|xi∈R,i=1,2,…,L} 2.3 信息熵的離散化 信息熵序列[10]是一組連續的信息,即一組連續函數,而在計算機當中,連續值的形式不易于處理,故要進行離散化處理。離散化是一個將連續模型或者函數轉化為相同效果的離散值的過程。 2.4 關聯規則挖掘與分類 該步驟使用2.4節所描述的改進后的Apriori算法對3.2節所獲取的離散化后的數據源進行關聯規則的挖掘與分類。 首先,設置合理的最小支持度和最小置信度。設置信息要根據不同的網絡和不同安全級別進行設置。其次,在信息熵數據中應用2.4節改進后的Apriori算法,對網絡安全態勢關聯規則進行挖掘,得到滿足關聯規則的最小可信度和最小支持度。然后,將關聯規則進行相關分類。劃分為正常空間和異常空間兩大類,主要的依據:通過已知網絡攻擊的信息熵變化值進行類別判斷。 2.5 態勢的可視化 根據3.3節挖掘出來的關聯規則信息,雖然能夠很好的反應網絡當中的一些安全態勢,但是對于管理人員來說,這種數值化的信息不能很直觀的進行閱讀。故本文將已經挖掘出來的關聯規則進行可視化表示。主要是通過對關聯規則進行等級劃分來實現。 要對已獲取的關聯規則進行網絡態勢進行劃分,首先定義出安全級別的劃分標準。3.3節描述了如何將關聯規則劃分為兩大類,即正常空間和異常空間,但是,兩個級別顯然不能描述網絡當前的狀態,故還要進行更進一步的劃分。規定:若規則屬于正常空間,認為網絡目前處于一個安全級別;若規則處于正常空間,但對攻擊行為不能確定,則判定網絡風險位于一個中等級別;否則,判定此時網絡風險位于一個危險級別。根據以上描述,依據網絡的具體情況,定義不同級別的風險指數,即: 如果目前網絡處于安全級別,此時網絡的風險指數值為0。如果某一時刻同時存在一種或一種以上的網絡攻擊,則風險指數等于各種威脅度之和。網絡安全專家通過對不同的網絡定義來設定危險指數。根據風險指數,通過一些可視化軟件,生成描述風險級別的可視化信息。根據可視化信息,網絡的安全管理人員將能夠更直觀、便利的發現網絡當中存在的威脅,能夠依據這些可視化信息進行危險預測。 為了驗證本文提出的網絡安全態勢感知模型的實踐性和合理性,本文在實際環境中設計網絡安全監測實驗。 3.1 實驗環境 實驗通過校園局域網進行安全性檢測。硬件設備包括Firewall,高性能千兆交換機,IDS系統,另外有模塊化的多業務交換機和路由器[11]。所使用的設備均支持設定的SNMP、日志文件、NetFlow等多源數據源[12-14],滿足所提出模型數據源的要求。 3.2 實驗過程及結果分析 本文將所提出的在關聯規則基礎上的網絡安全態勢預知模型運用到網絡安全監測中。首先進行NetFlow數據流量信息的收集,以便將其轉換為信息熵序列。在學校局域網中,取其中骨干網上面的一個節點Netflow數據進行分析,選擇7天中的2 000個數據作為我們的測試樣本點。通過3.1節描述的方法,生成信息熵序列,部分信息如圖2和圖3所示。 圖2 源IP地址的部分信息熵序列 圖3 目標端口號的部分信息熵序列 根據經驗,定義已知網絡攻擊對熵值序列的影響,如表1所示。 表1 已知網絡攻擊對熵值序列的影響 為了提高計算的效率,采用非均勻區間值離散化的方法,將每個信息熵序列分成5個區間A-E,每個區間的大小是不確定的。同時,對不同的序列,使用不同的序列號進行標注以示區別,分別為數字1-5。 然后,采用3.3節提出的方法對該離散化后的信息熵數據進行基于Apriori算法的關聯規則挖掘。根據以往經驗,設置最小支持度為0.01,最小置信度為0.02。通過計算,得到不同的項集信息,即不同項數的關聯規則信息。表2顯示了頻5-項集和相關的支持度計數結果。 表2 頻繁5-項集和支持度計數 通過選擇滿足最小置信度的項集,得到網絡安全態勢的感知信息,即將該實驗結果結合表1當中的信息,對當前網絡的安全狀態進行一個整體的評估。例如:{1A, 2B, 3C, 4B, 5E}的支持度為24,這個節點位置的目的端口地址熵值較大,但是目的地址的熵值相反,熵值非常小,由此可見,該節點的目的地址是比較聚集的,但是其目的端口卻是分散的,將其稱之為端口掃描攻擊模式。 為了管理員更直觀地了解當前網絡的安全狀況,對網絡安全態勢進行可視化描述。根據3.4節所描述的方法,根據這些關聯規則對網絡態勢進行分級。網絡安全態勢感知的實時監控信息如圖4所示。 可見,本文提出的方法可以在較短時間內監控網絡安全風險。最多可以在10秒內監控到11級風險。有效滿足網絡安全實時監控的需求。 圖4 網絡安全態勢感知的實時監控 本文提出一種基于改進關聯規則算法(Apriori算法)的網絡安全態勢感知方法。首先,該方法對所使用的數據源進行詳細的描述;然后,以Apriori算法為理論基礎,對相應的理論進行改善,得到改善后的Apriori算法。該算法通過對復雜項目集計數過程的中間結果進行過濾,把無效的數據進行刪除,以此減小數據庫規模。再者,基于改進的Apriori算法,給出了網絡安全態勢感知模型的具體實施步驟。最后,用實驗驗證了該框架的可行性并進行了結果分析。實驗結果表明,本文提出的基于關聯規則的網絡安全態勢感知模型能夠實現了網絡安全實時監控和危險預警的需求。 [1] 郭方方, 唐勻龍, 修龍亭, 等. 基于云計算的網絡安全態勢感知模型研究[J]. 計算機學報,2014,47(11):149-151. [2] Bass T. Intrusion detection system and multisensor data fusion: creating cyberspace situational awareness[J]. Communications of the ACM,2012,43(4):99-105. [3] Shifflet J. A technique independent fusion model for network intrusion detection[A]. Proceedings of the Midstates Conference on Undergraduate Research in Computer Science and Mathematics[C].2012,3(1):13-19. [4] 陳秀真,鄭慶華,管曉宏,等.層次化網絡安全威脅態勢量化評估方法[J].軟件學報, 2013, 17(4): 885-897. [5] 趙國生,王慧強,王 健.基于灰色關聯分析的網絡可生存性態勢評估研究[J].小型微型計算機系統,2012, 27(10):156-864. [6] 楊啟昉,馬廣平.關聯規則挖掘Apriori算法的改進[J].計算機應用,2012,28(12):217-218. [7] Shifflet J. A technique independent fusion model for network intrusion detection[A]. Proceedings of the Midstates Conference on Undergraduate Research in Computer Science and Mathematics[C].2013,3(1):13-19. [8] 張春生.改進的數據庫一次掃描快速Apriori算法[J].計算機工程與設計,2013,30(16):3811-3813. [9] Ling X, Ren A S. Analysis on factors affecting quantity safety of agricultural products based on DEMATEL method [J]. Science & Technology and Economy,2012.22(1): 65-68. [10] Sun B, Liu W, Tian D, et al. Application of time series date mining on security analysis[J].Journal of Jilin University: Information Science Edition,2013,28(3):270-274. [11] 劉華婷,郭仁祥,姜 浩.關聯規則挖掘Apriori算法的研究與改進[J].計算機應用與軟件,2012,26(l):146-148. [12] Yu M, Hu M,Jin G,et al. Association rules algorithm applied to telecommunication network alarms [J]. Journal of Jilin University: Information Science Edition,2014, 281(3):264-269. [13] 錢光超,賈瑞玉,張 然,等.Apriori算法的一種優化方法[J].計算機工程,2012,34(23):196-198. [14] Tang H Y, Zhan X Y. The research of the accessibility website design based log mining [J].Computer Knowledge and Technology,2013,7(4):3261-3262. NetworkSecuritySituationAwarenessMethodBasedonImprovedAprioriAlgorithm Lu Jiangdong, Zheng Fen, Dai Zhuochen (College of Basic Medical Sciences,Second Military Medical University,Shanghai 200433,China) For the existing problems that data source is single, real-time is not strong, the accuracy rate is not high in the process of network security situation assessment, a network security situation awareness method based on algorithm of association rules is proposed. Through the analysis of the data, association rules about the security situation in the network can be found; based on network attack effect of entropy sequence analysis, association rules are classified for the space of normal and abnormal, and then the cluster analysis to association rules is carried on. Levels of network security situation are divided according to the clustered rules, the improved algorithm is applied to network security situational awareness, experimental results show that, the model can meet the requirements of the network security hazard warning and real-time monitoring. The improved algorithm used for security situational awareness is feasible and effective. network security; association rule; Apriori algorithm; situation awareness 2017-04-26; 2017-05-11。 陸江東(1983-),男,江蘇鹽城人,碩士,講師,主要從事計算機教學,數據挖掘方向的研究。 1671-4598(2017)10-0244-03 10.16526/j.cnki.11-4762/tp.2017.10.062 TP393 A2 新的網絡安全態勢感知方法



3 實驗與分析





4 結論