王波
摘要:針對海量網(wǎng)絡數(shù)據(jù)的安全問題,該文釆用模糊K-均值算法和樸素貝葉斯分類構建的聯(lián)合分類算法,以及基于Mahout技術實現(xiàn)分類算法在MapReduce框架上的并行計算,對于原始的網(wǎng)絡流量數(shù)據(jù)進行特征指標提取,建立相應的模型并進行訓練,然后使用聯(lián)合分類器的綜合判定算法進行異常流量的判定,從而達到全面的對網(wǎng)絡異常流量進行檢測,提高海量網(wǎng)絡數(shù)據(jù)處理平臺的安全性的目的。
關鍵詞:Hadoop;大數(shù)據(jù);網(wǎng)絡流量;數(shù)據(jù)存儲;異構
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2017)05-0007-02
Abstract: For the security problem of massive network data, this paper uses the fuzzy K- algorithm and Naive Bayesian classification to build a joint classification algorithm, and Mahout technology to achieve classification algorithm on the MapReduce framework of parallel computing, the original network traffic data for feature extraction, the establishment of the corresponding model and training, and then use the joint classifier to determine the abnormal traffic, so as to achieve a comprehensive network anomaly traffic detection, improve the security of massive network data processing platform.
Key words: Hadoop; big data; network traffic; network security; parallel computing
1 概述
安全問題是制約云計算技術發(fā)展和普及的一個重要問題。雖然研究人員已經(jīng)開展了許多針對云安全問題的研究工作,但在引入了移動互聯(lián)網(wǎng)的海量網(wǎng)絡數(shù)據(jù)處理業(yè)務后,現(xiàn)有的基于Hadoop的云計算平臺仍需要加強對數(shù)據(jù)流的安全檢測。
傳統(tǒng)的入侵檢測技術在云計算平臺中具有很大的局限性,由于虛擬化技術和分布式計算技術的應用,傳統(tǒng)的基于網(wǎng)絡的入侵檢測技術無法對虛擬主機進行有效檢測,而基于主機的入侵檢測技術也無法檢測出黑客的網(wǎng)絡攻擊。同時,傳統(tǒng)的入侵檢測技術在檢測髙速海量的網(wǎng)絡數(shù)據(jù)流時,其檢測效率往往不夠理想和準確。同時,當前越來越多的網(wǎng)絡攻擊行為使用了將信息隱藏在網(wǎng)絡報文中,許多木馬病毒都需要通過流量檢測才能識別。
基于Hadoop的海量網(wǎng)絡數(shù)據(jù)處理平臺處在網(wǎng)絡環(huán)境中,它需要實時接收采集到的海量數(shù)據(jù)流,同時在平臺的應用層,它需要為各類數(shù)據(jù)用戶提供大并發(fā)量的數(shù)據(jù)訪問接口。該平臺的網(wǎng)絡安全具有對異常流量進行快速檢測和檢測高準確率的要求,而傳統(tǒng)的網(wǎng)絡安全技術,例如數(shù)據(jù)加密和安全認證等,已無法解決該海量網(wǎng)絡數(shù)據(jù)處理平臺的安全問題。因此,針對海量網(wǎng)絡數(shù)據(jù)處理平臺的架構,除了配置傳統(tǒng)的網(wǎng)絡安全設備,包括防火墻、網(wǎng)絡、入侵檢測等設備外,還需要對海量數(shù)據(jù)流檢測技術應用于海量網(wǎng)絡數(shù)據(jù)處理平臺進行研究,主要包括提高檢測準確率和處理速度兩個方面進行考慮,開展相關的研究工作。
2 云計算安全問題分析
2.1針對云計算的網(wǎng)絡攻擊技術研究
云計算釆用基于網(wǎng)絡的服務模式,并根據(jù)用戶需求向用戶提供其所需的各類軟硬件資源和數(shù)據(jù)信息[1]。代表產品有Amazon的EC2、IBM的BlueCkmd、谷歌的App Engine等[2]。基于Hadoop的海量網(wǎng)絡數(shù)據(jù)處理平臺也存在網(wǎng)絡接口用于平臺管理和數(shù)據(jù)流的接收存儲,這與現(xiàn)有的大多數(shù)云服務類似,均需要在互聯(lián)網(wǎng)中為用戶提供服務。同時近年來,針對網(wǎng)絡中云計算集群的攻擊[3]也在急劇增加。目前針對云計算的攻擊主要包括非法訪問、云平臺漏洞攻擊、濫用權限攻擊、云計算環(huán)境基于主機或基于網(wǎng)絡的攻擊、進程劫持等幾種情況。
2.2云計算環(huán)境的異常流量檢測技術分析
針對云計算的安全問題,研究人員已經(jīng)進行了很多研究工作,許多云安全技術已經(jīng)被有效地應用到各種云計算應用場景,包括云網(wǎng)絡防火墻、入侵檢測系統(tǒng)的設計與部署。然而,傳統(tǒng)的入侵檢測技術初始設計主要針對物理網(wǎng)絡的防御,而且一般只是對單一的網(wǎng)絡或者對象的檢測而云計算的環(huán)境極其復雜和多樣化,它具有跨地域、異構化、虛擬化等特點,使用傳統(tǒng)的入侵檢測技術已經(jīng)無法滿足云計算的信息安全防護需要。因此,研究人員提出了許多適用于云安全的入侵檢測技術,已用研究成果表明,目前對云環(huán)境中兼具基于特征的檢測系統(tǒng)和基于異常行為的檢測系統(tǒng)二者優(yōu)點的網(wǎng)絡入侵檢測方法有著迫切的需求。
在前人研究的基礎上,本文針對云計算環(huán)境的特殊性,設計更加高效和快速反應的云安全的網(wǎng)絡安全檢測系統(tǒng),提出了一種基于分類器聯(lián)合的分布式異常流量檢測技術,該技術基于Hadoop的MapReduce運算機制,并作為海量網(wǎng)絡數(shù)據(jù)處理平臺的一個模塊。其功能是對云平臺網(wǎng)絡出口流量進行快速檢測,定位出其中的異常流量。該技術對網(wǎng)絡流量數(shù)據(jù)采用基于流統(tǒng)計特征的流量檢測,并使用歷史的真實流量數(shù)據(jù)對分類器進行訓練建模,再將新釆集的數(shù)據(jù)與模型匹配分析,再基于多種分類算法聯(lián)合檢測的方式,判定檢測的數(shù)據(jù)流是否正常,達到高效和實用的目的。
3.基于分類器聯(lián)合的分布式異常流量檢測技術
3.1框架說明
本文提出的基于Mahout技術的分布式異常流量檢測技術,基于模糊K-均值和樸素貝葉斯分類算法,使用檢測探針在海量網(wǎng)絡數(shù)據(jù)處理平臺的網(wǎng)絡出口位置對流量數(shù)據(jù)進行探測分析[4],可以實現(xiàn)對大型云計算平臺的網(wǎng)絡流量近實時異常檢測。
不同于傳統(tǒng)研究中使用的入侵檢測技術,本文提出的異常流量檢測計算,以流記錄的形式在HDFS中存儲流量特征,并基于Mahout技術在MapReduce框架中對其進行快速分析處理,實現(xiàn)流量記錄的存儲和高效的異常流量檢測。采用對數(shù)據(jù)流檢測的方式,比數(shù)據(jù)包解析的效率高,不涉及用戶隱私。本文提出的異常流量檢測技術是一個適用于實際云計算環(huán)境的整套解決方案。同時,配合網(wǎng)絡硬件監(jiān)測設備,該系統(tǒng)可以適用于各大數(shù)據(jù)中心的異常流量近實時檢測。結合云存儲的相關技術,可以實現(xiàn)網(wǎng)絡流量的存儲及再分析。
3.2分類算法選擇和實現(xiàn)
基于分類器聯(lián)合的分布式異常流量檢測技術基于Hadoop的MapReduce運算機制,并作為海量網(wǎng)絡數(shù)據(jù)處理平臺的一個模塊,實現(xiàn)對云平臺網(wǎng)絡流量的檢測和異常流量的判定。該技術算法在設計時充分考慮了實用性和高效性,并且已經(jīng)有相應的成熟軟件運行在測試網(wǎng)絡的中心服務器上。算法的基本思想是,利用歷史測量數(shù)據(jù)構建訓練模型,對新測量數(shù)據(jù)與模型進行匹配,利用串聯(lián)式多級判別算法來判定新測量數(shù)據(jù)是否是異常數(shù)據(jù)。基于歷史流量數(shù)據(jù)構建模型并進行訓練,然后進行該模型對檢測到的流記錄進行判定分析。本文使用模糊K-均值和樸素貝葉斯分類算法聯(lián)合判定的方法來對流量數(shù)據(jù)進行綜合判定,并基于Mahout技術實現(xiàn)分類算法在MapReduce框架上的大數(shù)據(jù)分類計算[5]。
模糊K-均值算法是一種常用的聚類算法,它是在K-均值的基礎上將分類進行模糊化處理。其基本原理是通過從原始數(shù)據(jù)中提取出K組的模糊矩陣再計算出最幵始的聚類中心向量矩陣。然后再通過特定的目標函數(shù),使用多次迭代的方法找到最合適的分組和中心,使得目標函數(shù)最小,并按照最大隸屬的原則進行分類。在處理大數(shù)據(jù)時,模糊K-均值算法具有較高的效率和伸縮性,適合本文中對海量網(wǎng)絡數(shù)據(jù)流的處理。
貝葉斯分類器是基于貝葉斯定理構建的一種統(tǒng)計學分類器,它可以用于預測某個數(shù)據(jù)樣本屬于某個類別的概率。貝葉斯分類器的一個重要應用是針對海量數(shù)據(jù)的分類,其具有較高的性能和準確度。
Mahout是一個運行在Hadoop上的用于進行數(shù)據(jù)分析和機器學習的分布式軟件框架,它釆用MapRechice機制實現(xiàn)了一系列可擴展的數(shù)據(jù)挖掘算法,包括邏輯回歸算法、貝葉斯分類器、隱藏馬爾可夫模型、K-Means聚類算法、最小哈希聚類算法、奇異值分解算法等等[129]。同時,Mahout作為Apache基金下的開源項目,當前有眾多研究人員對其進行擴展和完善,其支持的算法也越來越多,如神經(jīng)網(wǎng)絡、向量相似度、主成分分析等等。
3.3分類器聯(lián)合判定算法
不同的網(wǎng)絡應用業(yè)務的流量特征有著很大的區(qū)別,本文根據(jù)流量統(tǒng)計特征指標來對海量網(wǎng)絡數(shù)據(jù)處理平臺的流量進行檢測,并基于Mahout技術對流量記錄進行快速分類,檢測其中的異常流量,提高海量網(wǎng)絡數(shù)據(jù)處理平臺的安全性。首先使用流量統(tǒng)計特征指標選擇技術來找到上述特征指標中識別度最高的一組集合,然后再使用分類器對其進行學習訓練。在選取流量統(tǒng)計特征指標時,如果某個指標可以反映出分類的屬性時,則該指標為有價值的指標。在實際的特征選擇中,數(shù)據(jù)的特征指標往往存在著許多冗余,甚至是無價值的指標,因此本文在選取有價值的特征指標時,需要選擇出其中與數(shù)據(jù)分類相關性較大的指標,同時需要保證選取的特征指標之間沒有相關性,即指標之間無法彼此預測。
聯(lián)合判定算法釆用計算當前流量統(tǒng)計樣本與歷史數(shù)據(jù)樣本臨近度的方式來進行分析,綜合了模糊K-均值和樸素貝葉斯分類構建的模型,具體包含兩部分,對歷史數(shù)據(jù)的離線學習和對流量數(shù)據(jù)的在線分類。同時,為了驗證聯(lián)合分類算法的準確性,可以在后續(xù)使用釆集到的樣本流量數(shù)據(jù)進行實驗分析。計算方法如下,讀入某數(shù)據(jù)流的統(tǒng)計信息,經(jīng)過數(shù)據(jù)預處理后,獲取數(shù)據(jù)流的特征指標值,按照流量為異常和正常確定分類數(shù),并初始化聚類中心點,計算其與各類別樣本所有聚類中心點的歐式距離和隸屬度值,重復運算直到各個樣本數(shù)據(jù)的隸屬度值穩(wěn)定,則判定出樣本數(shù)據(jù)是否為異常流量。然后利用訓練后的樸素貝葉斯分類器,對其進行異常判定。最后聯(lián)合模糊K-均值和樸素貝葉斯分類器,對該數(shù)據(jù)進行最終的異常判定。模糊K-均值算法是無監(jiān)督的分類算法,樸素貝葉斯分類器是有監(jiān)督的分類算法,結合有監(jiān)督和無監(jiān)督的分類算法,可以避免單一算法的缺陷,較為全面的對網(wǎng)絡流量進行異常檢測。
4 結論與展望
本文提出一種應用于云計算平臺的異常流量檢測技術,該技術基于MapReduce技術的異常流量檢測技術,通過釆用分布式并行計算模式來對數(shù)據(jù)進行處理,可以實現(xiàn)對海量數(shù)據(jù)流的高效檢測,避免傳統(tǒng)入侵檢測技術的效率問題;該技術引入了特征選擇技術,從流量數(shù)據(jù)中提取有價值的流量分類數(shù)據(jù),為后續(xù)更加有效地檢測出異常流量提供幫助;該技術基于分類器聯(lián)合的檢測技術,模糊K-均值算法是無監(jiān)督的分類算法,樸素貝葉斯分類是有監(jiān)督的分類算法,通過結合有監(jiān)督和無監(jiān)督的分類算法,可以更為全面的對網(wǎng)絡異常流量進行檢測,以提高海量網(wǎng)絡數(shù)據(jù)處理平臺的安全性。
然而,云平臺的安全性涉及系統(tǒng)、服務器、網(wǎng)絡、用戶等多方面的內容,因此對云平臺進行安全保障工作時,除了部署傳統(tǒng)的安全防御設備外,還需要進行全面的考慮,并針對不同的云平臺應用場景,構建完善的網(wǎng)絡安全防護體系,是在本文基礎上需要進一步研究和深化的主要問題。
參考文獻:
[1] Annbrust M,F(xiàn)ox A,Griffith Ret al.,A View of Cloud Computing, Commun Acm, 2010 , 53 ⑷:50-58.
[2] Bhardwaj S,Jain L,Jain S,Cloud Computing: A Study of Infrastructure as a Service (IAAS),International Journal of engineering and information Technology, 2010,2 (1): 60-63.
[3] Zissis D, Lekkas Ds Addressing Cloud Computing Security Issues,F(xiàn)uture Gener Comp Sy, 2012, 28 (3): 583-592.
[4] Agarwal D,Gonzdlez J M,Jin Get al., An Infrastructure for Passive Network Monitoring of Application Data Streams, 2003.
[5] 劉軍.大數(shù)據(jù)處理[M].北京:人民郵電出版社,2013.