摘 要:隨著IT行業的迅速發展,傳統的病毒防護系統已經無法快速、及時地處理與日俱增的安全問題。而新一代的云計算技術恰好能夠解決傳統防護方法的弊端,為病毒防護技術提供了新的途徑和思路。文章建立云計算在病毒入侵檢測模型,通過實驗在機房試運行。該系統模型能夠有效運用云計算的強大性能,對于外來相似或者有關聯的病毒進行歸類,把復雜的入侵因素進行簡化,明確入侵方向,降低防護難度。
關鍵詞:云計算;Map/Reduce;病毒入侵檢測技術
1 引言
目前,病毒防護技術主要有:防火墻、網絡入侵檢測、殺毒軟件等。這些防護系統已經無法快速、及時地處理日益增長的安全問題。例如,當入侵者獲得訪問權限或直接跳過防火墻對網絡進行攻擊,防火墻就形同虛設了。隨著各種類型的病毒的迅速遞增,計算機和網絡中消耗的內在特征文件也在飛速增長。在存在大型的數據流量的網絡系統中,很容易形成IDS瓶頸。
2 云計算在病毒入侵檢測技術中的應用
新一代的云計算技術擁有的:“容低性”、“綜合性”、“高容錯性”的性能恰好能夠解決傳統防護方法的弊端,為病毒防護技術提供了新的途徑和思路。無論多先進的網絡防護方式都無法使網絡絕對的安全,而面對多而復雜的網絡問題,出現相同不安全因素往往會多次。因此對網絡入侵的數據進行簡化歸類,明確入侵方向而采取相應的防御措施就顯得非常重要了。在此利用“云技術”對網絡入侵的數據進行簡化歸類,明確入侵方向的方法來改進傳統的病毒入侵檢測系統:
2.1 構建云,在多臺Linux中安裝Hadoop。
2.2 設計關鍵程序及算法。設計Map-Reduce程序以及相關算法使其能夠對警報信息進行整合,找出相似信息,明確入侵方向。
2.3 用分布式數據庫Hbase用于存儲完成整合后的數據。
2.4 通過Map-Reduce算法對警報數據進行統計、分析、排序,得出需要優先處理的警報,再把分析處理完成的結果。
2.5 利用apache web服務器及PHP網頁腳本語言以網頁形式呈現。
一般入侵行為數據量大,且相似性高,而云計算中Map-Reduce的最大優點是能夠對大量相似信息的進行處理,所以再用mapper函數提取每條數據中的IP地址,包括源IP(src_ip)和目的IP(dst_ip)作為Key值,并記錄數據中的時間、優先級、端口等信息,而后用reducer函數匯總,統計出該警報數據的次數,記錄下相關信息作為入侵行為判斷的依據。
本論文將snort網絡入侵檢測系統所產生的入侵警報日志,上傳至hadoop平臺中,通過Map/Reduce進行計算處理,對警報數據進行統計、分析、排序,得出需要優先處理的警報,再把分析處理完成的結果,利用apache web服務器及PHP網頁腳本語言以網頁形式呈現。以便系統管理者能夠直觀全面了解網絡的安全情況。結構圖如圖1。
根據以上原理,我們可以畫出它的流程圖如圖2:
3 實驗的搭建
具體的實驗在韓山師范學院陶瓷學院現有的綜合機房實現。實驗運行的環境為校內網速1G,外網速100M的寬帶網絡,來構建Hadoop云計算實驗平臺。我們使用6臺普通PC機,其中1臺為主節點,5臺為從節點,工作于一臺24口網絡交換機下。在每臺電腦上安裝VMware Workstation,通過VMware Workstation虛擬出一臺計算機,在這些計算機安裝有RedHat Linux9.0操作系統,Hadoop-0.20.2、Java-1.6.0_26、hbase-0.90.4,因為hbase需使用zookeeper實例為集群狀態提供授權,所以還要安裝zookeeprer,這里選用3.3.3版本。
整個云計算在病毒入侵檢測技術中的搭建配置過程如下:
(1) 在6臺計算機上分別安裝linux,并對每臺計算機進行命名,其中1臺為主節點機命名為hadoop,即此臺作為分布式文件系統HDFS的NameNode及MapReduce運行過程中的JobNode。其余5臺計算機作為HDFS的DataNode及MapReduce的TaskNode,這些節點分別命名為hadoop1、hadoop2、hadoop3、hadoop4、hadoop5,將各臺計算機連接到交換機上,同時配置每臺機器的/etc/hosts目錄。調試確保各計算機間的網絡暢通,IP地址與計算機名之間解析正確,從任一臺計算機都可以ping通其它計算機的計算機名。
(2) 通過ssh-keygen生成PCI的密鑰對,然后將PCI的公鑰拷貝至各計算機的home/ssh目錄下的authorized文件中,使得從PCI來完成到各計算機的ssh無密碼登陸。
(3) 安裝jdk后,通過調試保證jdk能正常工作。
(4) 配置hadoop中的hadoop-env.sh,并修改其jdk路徑,修改masters內容為hadoop,修改slaves文件內容為hadoop1-hadoop5。
(5) 配置core-site.xml文件,該配置文件是hadoop中的主要配置文件。
(6) 配置mapred-site.xml文件。
以上配置文件完成了HDFS中Namenode的位置、MapReduce中的JobTraker的位置的配置。同時所有的配置文件必須拷貝到每一臺計算機中。配置好系統后,使用start-all.sh啟動云。
(7) 安裝hbase-0.90.4。
配置hbase服務器名稱,編輯regionservers文件,加入hadoop1-hadoop5。完成后,將所有文件復制到各臺子機,然后啟動hbase。
(8) 安裝zookeeper3.3.3。在/zookeeper/conf文件夾下創建配置文件zoo.cfg。
apache服務器的安裝:
(1)進入woke目錄下:cd /usr/local/work。
(如沒有則自己新建,命令:mkdir /usr/local/woke)
(2)在woke目錄下從網站下載apache并解壓:
Wget http://dev.xiaonei.com/apache-mirror/httpd/httpd-2.0.63.tar.gz
解壓:tar zxvf httpd-2.0.63.tar.gz。
(3)進入httpd-2.0.63目錄:cd httpd-2.0.63。
(4)建立makefile,并將Apache安裝到/usr/local/apache2目錄下:
./configure -prefix=/usr/local/apache2 -enable-module=so (/configure前有一個點“.”的)。
(5)開始編譯:make。
(6)開始安裝Apache到work目錄中:
make install。
(7)至此Apache的安裝工作完成,可以在每次啟動系統時通過如下命令啟動或重新啟動Apache服務:
/usr/local/apache2/bin/apachectl start
/usr/local/apache2/bin/apachectl restart。
4 實驗結果
實驗結果如圖3:
經過云計算環境下的病毒入侵檢測系統算法的分析后,可以從病毒防護平臺上查看發生惡意入侵的源IP,被攻擊目標的IP,攻擊的起始時間,結束時間,發起攻擊的方式,并從嚴重性中提醒安全管理員需要優先處理的安全問題,利用病毒防護平臺頁面,還可以將部署在不同網絡的IDS警報數據上傳到系統中進行分析;透過Snort報警ID,鏈接到Snort報警ID網站,便可以從網站上了解到對該ID代表攻擊詳細內容的描述,如圖4所示。
在病毒入侵檢測系統運用云計算算法基本實現了對警訊的來源、目的、攻擊事件綜合分析。通過病毒防護平臺可以讓系統管理者快速掌握攻擊事件的始末,了解惡意代碼的類型,便于從源頭找出云中出現安全問題的所在,可以解決在云端中數據過于龐大,雜亂,不容易找出關鍵問題所在的難題,而且利用SnortID可以清楚判斷攻擊方式,云端安全防護系統改變傳統分析處理報警信息的方式來處理云端安全問題的方式,減少了系統管理者在出現惡意入侵攻擊時的反應時間,提高處理云端安全問題的效率。
5 實驗過程出現的問題分析
實驗過程中影響實驗進程的問題主要有以后幾個:
5.1 錯誤代碼。
子節點datanode 無法啟動,經分析,其原因是在將dfs.name.dir的路徑設置在新加入硬盤中,沒有將文件夾的所有權賦予hadoop用戶,造成tmp文件無法創建,在查詢hadoop運行狀態時,只有主節點,沒檢測到其他5個子節點。修改5個子節點中文件夾權限后,問題解決。
5.2 在實驗開始時,出現對數據重復處理的現象,造成有Failed job 出現,是由于程序編寫時,未考慮將原有數據移出原有hdfs中文件夾造成的。在將數據移出后,程序正常。
5.3 同時,還發現runjob進程存在,而且無法使用Kill命令結束,停止Hadoop服務也無法結束進程,只能從任務管理器中將進程殺死。
5.4 下圖是數據送入Map/Reduce中進行處理時,兩個Job運行時間對照,算法Inergerate Alert job 受數據大小的影響比較明顯,算法Merge Extended Alert Job 在處理經過Inergerate Alert 分析后的數據沒有明顯的變化。
6 結束語
文章所構建云計算在病毒入侵檢測模型利用hadoop中的關鍵技術——Map/Reduce分布式計算技術,來實現對云平臺的警報數據進行分析計算。同時它能夠同時進行多工作,具有很高的容錯性,較高的數據分析效率。在云計算平臺中,網絡數據流量是很大的,網絡入侵檢測系統所產生地檢測數據量也很大,文章通過利用hadoop系統中的Hbase分布式數據庫來分散存儲這些檢測數據,解決大量數據單機存儲的瓶頸。
參考文獻
[1]孫松兒.云計算環境下的安全建設思路[J].信息安全與技術2010.
[2]陶善旗.基于Snort入侵檢測系統關聯規則挖掘的研究與實現[D] .南京:南京航空航天大學,2009.
[3]Barman Bikram.Safe on the Cloud(A Perspective into the Secur-ity Concerns of Cloud Computing)[A] .Siliconindia,2009,12(4):34-35.
[4]John Rittinghouse,James Ransome.Cloud Computing: Implementation, Management,and Security[M] .2009.
[5]潘利群,郝錦勝.入侵檢測系統中檢測分析模塊的研究[J] .武漢理工大學學報,2003,25(8):67-70.