◆康瀠允
(沈陽理工大學信息科學與工程學院 遼寧 110159)
聚類算法在面向 SOA蜜罐系統入侵行為數據分析中的應用
◆康瀠允
(沈陽理工大學信息科學與工程學院 遼寧 110159)
隨著互聯網技術的飛速發展,SOA在成為當今流行的架構體系的同時,其首選的Web服務也日益成為黑客攻擊的新目標。針對SOA的安全問題日益突出,現在通常使用被動的防御方式,旨在保證SOA系統的安全性,在SOA系統中,以第三代蜜網部署拓撲為基礎,構建面向SOA的蜜罐系統,采用聚類算法,對系統中sebek回傳的數據進行分析。本文通過搭建網絡平臺,對面向SOA蜜罐系統捕獲到的數據,在檢測率和誤報率方面進行實驗驗證。
SOA;蜜罐;聚類算法
面向服務架構Service Oriented Architectures(SOA),能夠滿足人們對敏捷的、不受限制的集成業務流程的需求,近年來逐步成為當今網絡應用的潮流[1]。但由于網絡空間行為的對抗性日益凸顯,SOA系統會受到傳統及新型的攻擊。對于這些攻擊,現在所采用的防御方式是被動防御方式。
作為一種基于主動防御方式的網絡安全防御模型,蜜罐能夠很好改善并提高 SOA系統的安全性。蜜罐是一種以檢測、監視并捕獲攻擊行為,最終實現保護真實主機為目標的安全資源,它通過模擬一個或多個易受攻擊的主機,為攻擊者提供一個容易攻擊的目標,拖延攻擊者對有價值目標的攻擊。
在蜜罐技術用于網絡安全研究方面,國內外有學者有以下研究:利用蜜罐系統與入侵檢測系統聯動,來增強防護能力[2];利用蜜罐檢測僵尸網絡[3];利用蜜罐建立安全事件行為特征庫[4]等。
以第三代蜜網部署拓撲為架構,結合傳統網絡安全防御技術,在面向SOA蜜罐系統的服務提供端,設計面向SOA的蜜罐系統,系統結構如圖1所示。

圖1 面向SOA蜜罐系統結構
面向 SOA蜜罐系統系統擬設置數據誘捕模塊、數據控制模塊、數據捕獲模塊以及數據分析模塊,處理流程如下:首先,在虛擬SOA服務蜜罐主機中,部署面向SOA蜜罐系統的服務提供端能夠提供的服務,但是虛擬 SOA服務蜜罐主機中有一些能夠被入侵者發現的特定漏洞,從而能夠誘使入侵者優先訪問;其次,等待經過偽裝的入侵者訪問面向 SOA蜜罐系統提供的服務,在此過程中,入侵者發現蜜罐所在網段存在的漏洞,針對這些漏洞進行攻擊,而數據捕獲系統捕獲相關攻擊數據,將數據進行一定處理和存儲,并不斷地進行數據分析。
本部分測試主要使用weka軟件,weka是用Java語言編寫的數據挖掘機器學習軟件,也是一套完整的數據處理工具。學習算法和評價方法,包含數據可視化的圖形用戶界面。Weka軟件既能夠滿足多系統平臺的需求,又能夠很好地驗證算法效率,同時該環境還可以比較和評估不同的學習算法的性能。
2.2.1 數據集數據的選取
本文從已有的攻擊數據集中,抽取10000的樣本進行測試,其中攻擊樣本數據與正常樣本數據的比例為 4:1,攻擊樣本數為8000,正常樣本數為2000。這里選取數據描述中的9個關鍵特征值用作實驗,這些特征是網絡攻擊事件在時間上關聯特性。
2.2.2 面向SOA蜜罐系統的網絡入侵數據選取
面向SOA蜜罐系統中采用sebek軟件進行數據捕獲。sebek是一個數據捕獲工具,可以作為面向 SOA蜜罐系統的網絡入侵主動防御安全模型中數據捕獲的一種方式,用在蜜網組建中。
利用蜜網系統外部的三臺電腦,對虛擬 SOA服務蜜罐主機中,提供的面向 SOA蜜罐系統的相關服務進行正常的訪問,并對蜜罐系統存在的漏洞進行攻擊。從sebek捕獲的數據記錄中連續選取了5000條數據記錄,用作測試集,其中攻擊樣本數據與正常樣本數據的比例為4:1,攻擊樣本數為4000,正常樣本數為1000。
實驗中采用經典K-means聚類算法,對數據進行處理,本文采用檢測率和誤報率作為算法性能的度量標準。檢測率定義為,算法正確檢測到的攻擊樣本數目,和數據樣本中總的攻擊數目的比例。誤報率定義為,算法中被誤判為攻擊樣本的正常樣本,和數據樣本中總的正常樣本數目的比例。
在weka平臺中選擇K-means聚類算法。
在實際運算過程中,我們事先不知道初始聚類個數k值,k值的不同對聚類效果的影響也不盡相同,但目前還沒有一種公認的可以確定最合適初始聚類個數的絕對合理的方法。因而本文中的實驗對K分別取不同的值,使用K-means聚類算法對實驗數據進行處理。
將K-means算法對數據集聚類結果和對面向SOA蜜罐系統的網絡入侵數據聚類結果用折線圖表示,K值代表聚類數目,其中檢測率與聚類數目的關系如圖2所示,誤報率與聚類數目的關系如圖3所示。

圖2 檢測率與聚類數目的關系

圖3 誤報率與聚類數目的關系
檢測率,能反映算法對攻擊行為分類能力的大小,從圖2中可以看出,K-means聚類算法對面向SOA蜜罐系統的網絡入侵數據的聚類結果,在檢測率略優于對數據集的聚類結果。誤報率,則能反映算法對正常訪問行為分類能力的大小,從圖3中可以看出,K-means聚類算法對面向 SOA蜜罐系統的網絡入侵數據的聚類結果,在誤報率方面,優于對數據集的聚類結果,而當K值過大時,二者的聚類結果相當。雖然真實的網絡情況收集到的數據較整理后的數據集數據為復雜,但 K-means聚類算法對面向SOA蜜罐系統的網絡入侵主動防御安全模型具有較好的適用性。
針對 SOA的安全問題日益突出,為彌補傳統的入侵檢測技術存在的不足,改善并提高面向 SOA蜜罐系統的安全性,以第三代蜜網部署拓撲結構為基礎,結合包括防火墻與入侵檢測系統在內的傳統安全防御技術,在SOA系統中構建面向SOA蜜罐系統,并將經典K-means聚類算法用于對系統捕獲到的數據進行分析。在提高面向 SOA蜜罐系統的安全防護能力的同時,為面向SOA蜜罐系統的應用和 K-means聚類算法的性能評估提供了一定參考。
[1]舒振,馬建威,羅雪山.基于SOA的新型指揮控制系統體系框架及開發方法[J].兵工自動化,2010.
[2]何祥鋒.淺談蜜罐技術在網絡安全中的應用[J].網絡安全技術與應用,2014.
[3]崔嘉.蜜罐技術用于網絡安全的分析與研究[J].網絡空間安全,2016.
[4]付強,劉青華.蜜罐技術在網絡安全領域中的應用[J].中國高新技術企業,2016.
[5]劉永慶.一種基于 SOA架構的訪問控制安全服務模型研究[J].網絡安全技術與應用,2016.
[6]王鵬.互聯網防御DOS/DDOS攻擊策略研究[J].郵電設計技術,2012.