陳 偉,吳輝群,湯樂民,王 偉
(南通大學(xué) a.醫(yī)學(xué)院;b.附屬醫(yī)院,江蘇 南通 226001)
?
一種認知功能的入侵防御系統(tǒng)
陳 偉a,吳輝群a,湯樂民a,王 偉b
(南通大學(xué) a.醫(yī)學(xué)院;b.附屬醫(yī)院,江蘇 南通 226001)
結(jié)合Soar具備的認知技術(shù),將Soar融合到入侵防御系統(tǒng)中,設(shè)計了一個具有認知功能的入侵防御系統(tǒng)。仿真結(jié)果表明:Soar對源數(shù)據(jù)包進行了一次完整的學(xué)習(xí),再遇到類似的特征包,就可直接標記為掃描包,并存儲到知識庫中,作為以后的評判標準。該系統(tǒng)實現(xiàn)了自我防御的目的,一定程度上滿足了計算機網(wǎng)絡(luò)安全的需求。
入侵防御系統(tǒng);安全;認知;仿真
傳統(tǒng)的防御系統(tǒng)基于兩種機制:一種是基于特征的檢測機制;另外一種是基于原理的檢測機制?;谔卣鞯臋z測機制實現(xiàn)起來較為簡單,對于新型攻擊只要提取出特征碼就能夠及時防御,但是該類方法只能識別已知的攻擊類型,對于變種的攻擊行為無法識別[1]?;谠淼臋z測機制彌補了前者無法識別變種攻擊的缺點,能夠精確識別出特征碼不唯一的攻擊行為,但該類方法技術(shù)要求較高,且應(yīng)對新的攻擊行為反應(yīng)速度較慢。為了改善入侵防御系統(tǒng)(intrusion prevention system,IPS),提高智能性成為下一代IPS的一個重要發(fā)展方向[1-2],國內(nèi)外學(xué)者和研究機構(gòu)對此展開了廣泛的研究。IBM技術(shù)研究部提出了自律思想,該思想的核心在于簡化和增強終端用戶的體驗,在復(fù)雜、動態(tài)和不穩(wěn)定的環(huán)境中利用計算機的自律計算特點來達到用戶的預(yù)期要求。融合其他領(lǐng)域的技術(shù)也成為增加IPS智能性的主要手段,例如通過增加適應(yīng)性抽樣算法、數(shù)據(jù)包分類器和增量學(xué)習(xí)算法等來優(yōu)化對IPS數(shù)據(jù)庫的分析效率[3-4]。將人工免疫技術(shù)、模糊邏輯、自組織特征映射(self-organizing feature maps,SOM)神經(jīng)網(wǎng)絡(luò)、數(shù)據(jù)挖掘技術(shù)與入侵防御技術(shù)相結(jié)合,提出的防御系統(tǒng)模型成為當前研究的熱點。把反饋控制的原理應(yīng)用到網(wǎng)絡(luò)安全態(tài)勢感知系統(tǒng)中,能更有效地收集網(wǎng)絡(luò)信息并進行安全態(tài)勢評估[5-7]。文獻[8-9]根據(jù)數(shù)字簽名系統(tǒng)的缺點提出了狀態(tài)感知的入侵防御系統(tǒng)。但上述方法都是從提高系統(tǒng)檢測數(shù)據(jù)智能性的角度出發(fā),并沒有涉及到系統(tǒng)自身認知防御方面[10],在一定程度上并不能滿足計算機網(wǎng)絡(luò)安全的需求。
認知網(wǎng)絡(luò)通過對周圍網(wǎng)絡(luò)環(huán)境的感知學(xué)習(xí)和重配置系統(tǒng)參數(shù)來適應(yīng)網(wǎng)絡(luò)環(huán)境的變化,從而達到網(wǎng)絡(luò)服務(wù)性能最優(yōu)化的目標[11-14]。Soar在認知領(lǐng)域展現(xiàn)了強大的功能,具有自我學(xué)習(xí)能力、實時的環(huán)境交互能力以及接近自然語言的語法,利用這些功能的相互配合,能夠解決更多復(fù)雜的問題。為使系統(tǒng)具有自我防御的能力,本文將Soar具備的認知技術(shù)融合到IPS當中,并設(shè)計了針對端口掃描的防御系統(tǒng)。通過仿真實驗驗證了該系統(tǒng)具有較好的智能性,可以有效地識別非法掃描,實現(xiàn)系統(tǒng)自我防御的目的,提高了計算機網(wǎng)絡(luò)安全的性能。
1.1 入侵防御系統(tǒng)的設(shè)計
本文以Soar架構(gòu)為基礎(chǔ),結(jié)合認知網(wǎng)絡(luò)安全代理(VMSoar)的解釋功能,設(shè)計了如圖1所示的基于Soar認知功能的入侵防御系統(tǒng)。
圖1 基于Soar認知功能的入侵防御系統(tǒng)
該系統(tǒng)按照“匹配-分析-預(yù)處理”的流程來執(zhí)行任務(wù)推理。問題的初始狀態(tài)產(chǎn)生后傳遞給VMSoar進行解釋,VMSoar根據(jù)得到的信息捕獲實時的網(wǎng)絡(luò)數(shù)據(jù)流。然后,在虛擬系統(tǒng)環(huán)境中運行相應(yīng)的命令來執(zhí)行假設(shè)的結(jié)果。最后,根據(jù)結(jié)果求解初始狀態(tài)。一旦結(jié)果匹配就傳遞給預(yù)處理模塊,該模塊把最終執(zhí)行的命令傳遞給系統(tǒng)。系統(tǒng)從接受輸入到得到輸出結(jié)果這樣一次完整的命令后,就完成了一次循環(huán),接著繼續(xù)從入口收集信息反饋給認知系統(tǒng),進行再一次的循環(huán),如此多次循環(huán)直到所有問題都被解決或達到用戶的預(yù)期目標為止。
問題空間用來控制對操作符的選擇,也是Soar進行學(xué)習(xí)的一個主要部分。每當Soar在某一個時刻面臨了多個操作符選擇且沒有更多的參數(shù)來決策如何選擇的時候,就會把這類問題轉(zhuǎn)入到問題空間中進行求解。在問題空間中,首先會創(chuàng)建一個初始狀態(tài),該狀態(tài)用來描述所出現(xiàn)問題的原因,然后轉(zhuǎn)入對整個知識庫的搜索來求解初始狀態(tài)。解釋初始狀態(tài)的時候,可能會產(chǎn)生附屬的新問題,此時問題空間繼續(xù)記錄新出現(xiàn)的問題,并產(chǎn)生一個新的子狀態(tài)。接著轉(zhuǎn)入對子狀態(tài)的求解,當某個操作符被選取并被執(zhí)行之后,隨之相應(yīng)的子狀態(tài)也會被解決,直到初始狀態(tài)被求解為止,退出問題空間,返回一個新的操作符。處理該類問題的整個執(zhí)行過程會被問題空間總結(jié)成一個新的操作符,之后再遇到此類問題時就直接觸發(fā)新產(chǎn)生的操作符,而不需要重復(fù)執(zhí)行之前的操作,到此Soar完成了一個學(xué)習(xí)過程。在本系統(tǒng)中,問題空間中的操作符描述了網(wǎng)絡(luò)環(huán)境參數(shù)以及數(shù)據(jù)包的特征等。
Soar的智能性體現(xiàn)在可以依靠系統(tǒng)內(nèi)部循環(huán)與外部環(huán)境的交互來捕獲輸入的行為特征。要使Soar識別某類行為的特征,首先要讓Soar對該類行為的基本特征進行學(xué)習(xí),因此,需要外界將該類行為基本特征進行定義并加入到Soar中。后期隨著Soar的執(zhí)行,外加人為的控制,就可以讓Soar學(xué)習(xí)到更多的行為特征。利用VMSoar具備的解釋功能把定義的特征行為轉(zhuǎn)換為Soar內(nèi)部識別的語法,通過對外界數(shù)據(jù)的捕獲,使得Soar捕獲到定義的行為特征。利用Soar具備的認知能力,使得Soar識別更多此類型行為的特征,進而可以識別未知掃描行為。
1.2 數(shù)據(jù)包特征分析
數(shù)據(jù)包特征分析主要從3個方面進行。首先,進行標志位檢測。傳輸控制協(xié)議包(transmission control protocol,TCP)中有6個比特位來表示每個包的特征,包括URG/ACK/PSH/RST/SYN/FIN。利用Tcpdump工具分析進出系統(tǒng)的數(shù)據(jù)包,Soar對收到數(shù)據(jù)包的標志位進行分類,分類的標準包括3大類組合:SYN_in和SYN_out;SYN_ACK_in和SYN_ACK_out;FIN_in和FIN_out。其次,分析端口的開放或者關(guān)閉,以及操作系統(tǒng)為提供指定服務(wù)而開放的端口列表。最后,進行狀態(tài)包數(shù)據(jù)流量的比率分析,利用收集的數(shù)據(jù)包特征,進行狀態(tài)模型分析和前期對比分析。
依據(jù)Tcpdump收集的不同類型數(shù)據(jù)包進行分類處理,對發(fā)送和接收過程中的TCP包進行統(tǒng)計分析,得到進出數(shù)據(jù)包的狀態(tài)模型。下面是對狀態(tài)模型計算方法和參量的定義。
系統(tǒng)收到外來IP包的狀態(tài)分為3類:狀態(tài)1為安全,狀態(tài)2為可疑,狀態(tài)3為危險。安全表示合法的連接請求,危險表示已經(jīng)被確認為掃描數(shù)據(jù)包,可疑表示暫時無法確定是否為危險。操作系統(tǒng)收到的每個源地址都會被定義成唯一的狀態(tài)。源地址的狀態(tài)類型隨著系統(tǒng)的運行及外部網(wǎng)絡(luò)的變化,會發(fā)生狀態(tài)的變換。
根據(jù)3類掃描的特征作如下定義:Nclosed表示連接到關(guān)閉端口的數(shù)據(jù)包數(shù)量;Nfin表示終止連接的數(shù)據(jù)包數(shù)量;Nhalf表示不再完成后續(xù)連接的數(shù)據(jù)包數(shù)量。3種類型數(shù)據(jù)包數(shù)量的計算方法為:
利用上述定義,對每一個數(shù)據(jù)包進行安全級別歸類:
對特定源數(shù)據(jù)包特征的前期狀態(tài)和當前已知狀態(tài)進行對比,判斷該源地址發(fā)來的數(shù)據(jù)包是否出現(xiàn)了異常。該方法針對被定義為可疑狀態(tài)的數(shù)據(jù)包更為有效,通過前后對比,對非人為因素造成的數(shù)據(jù)包掉包或客戶端發(fā)送錯誤等導(dǎo)致的接收端異常狀況,可以很快識別出該源地址是否合法。對前后兩個時間段內(nèi)來往的數(shù)據(jù)流信息進行比對,若收到數(shù)據(jù)包數(shù)量異?;蛘邤?shù)據(jù)流量比率異常,則可以判斷源地址被入侵。對特定源數(shù)據(jù)包的狀態(tài)記錄,可以更為準確地判斷目標的特征。
2.1 仿真實驗過程
仿真實驗步驟為:把預(yù)先設(shè)計的規(guī)則導(dǎo)入到Soar結(jié)構(gòu)體中,并將其初始化,使其處于監(jiān)聽狀態(tài),初始狀態(tài)的Soar只被定義了合法TCP連接;利用Nmap對目標地址發(fā)起掃描攻擊;利用Tcpdump捕獲掃描數(shù)據(jù)包,并把輸出的結(jié)果通過VMSoar導(dǎo)入到Soar中,然后對導(dǎo)入的數(shù)據(jù)進行解釋。
接下來,Soar引擎在建立的TCP規(guī)則庫中進行搜索,選出部分條件與輸入條件匹配或匹配程度最高的規(guī)則,并將該規(guī)則的決策發(fā)送給預(yù)處理模塊,預(yù)處理模塊根據(jù)收到的決策,產(chǎn)生相應(yīng)的動作,作用于系統(tǒng),改變運行狀態(tài)。
設(shè)攻擊方IP為222.192.41.222,服務(wù)器IP為222.192.41.220。
2.2 性能分析
攻擊方對服務(wù)器先發(fā)起一個TCP掃描,下面是被Tcpdump捕獲到的數(shù)據(jù)包:
TCP-Conncet_scan∶(port∶23)
01∶49∶34.591151 ARP,Request who-has 222.192.41.220 (Broadcast) tell 222.192.41.222,length 46
01∶49∶34.591258 ARP,Reply 222.192.41.220 is-at 00∶0c∶29∶8f∶89∶f6 (oui Unknown),length 28
01∶49∶34.755599 IP 222.192.41.222.7081>222.192.41.220.telnet∶Flags[S],seq 1936763825,win 8192,options[mss 1460,nop,wscale 2,nop,nop,sackOK],length 0
01∶49∶34.755892 IP 222.192.41.220.telnet>222.192.41.222.7033∶Flags[S.],seq 1661848282,ack 1936763826,win 14600,options[mss 1460,nop,nop,sackOK,nop,wscale7],length 0
01∶49∶34.760608 IP 222.192.41.222.7081>222.192.41.220.telnet∶Flags[.],ack 1,win 16425,length 0
01∶49∶34.760797 IP 222.192.41.222.7081>222.192.41.220.telnet∶Flags[R.],seq 1,ack 1,win 0,length 0
分析捕獲的信息可知:本次掃描結(jié)果顯示服務(wù)器的23端口開放,并且服務(wù)器和攻擊方完成了TCP連接的3次握手,建立了連接,緊接著發(fā)送了一個RST類型的包,攻擊方請求與服務(wù)器斷開連接。一旦系統(tǒng)捕獲到此數(shù)據(jù)包,VMsoar就對其進行解釋并傳遞給Soar進行內(nèi)部分析,觸發(fā)Soar的內(nèi)部循環(huán),得到圖2所示的分析過程。
圖2是Soar內(nèi)部對本次網(wǎng)絡(luò)之間互連的協(xié)議(internet protocol,IP)掃描的分析過程,根據(jù)現(xiàn)有的知識庫對該IP包進行了安全級別分類。該數(shù)據(jù)包雖然符合TCP連接的3次握手的判斷,但是在Soar的數(shù)據(jù)庫中并沒有該源地址的歷史信息且連接時間短暫,無法斷定數(shù)據(jù)包特征類型。因此,Soar判斷此IP
圖2 Soar內(nèi)部對IP掃描的分析過程
包為可疑包,處于待確認狀態(tài)。此時,Soar需要更多的輸入數(shù)據(jù),對該IP進行定性分析,Soar對該IP的分析處于繼續(xù)監(jiān)聽狀態(tài),等待新的數(shù)據(jù)輸入。再次發(fā)起對服務(wù)器端的掃描,接著Tcpdump監(jiān)聽到了如下的數(shù)據(jù)流:
TCP_Syn_scan(http∶80)∶
08∶34∶51.950309 IP 222.192.41.222.13966 > 222.192.41.220.http∶Flags [S],seq 3389264926,win 8192,options[mss 1460,nop,wscale 2,nop,nop,sackOK],length 0
08∶34∶51.950422 IP 222.192.41.220.http >222.192.41.222.13966∶Flags [R.],seq 0,ack 3389264927,win 0,length 0
08∶34∶52.047839 IP 222.192.41.222.13967 >222.192.41.220.http∶Flags [S],seq 3154202409,win 8192,options[mss 1460,nop,wscale 2,nop,nop,sackOK],length 0
08∶34∶52.047944 IP 222.192.41.220.http>222.192.41.222.13967∶Flags[R.],seq 0,ack 3154202410,win 0,length 0
08∶35∶43.485709 222.192.41.222.57996>222.192.41.220.http∶SE 1210652233:
1210652233(0) win2048
08∶35∶43.485709 222.192.41.222.57997>222.192.41.220.http∶win 2048
08∶35∶44.485709 222.192.41.222.57998>222.192.41.220.http∶SFP 1210652233∶
1210652233(0) win 2048 urg 0
該包顯示http端口開放,并且在捕獲到的最后3個包中可以明顯地分析出http∶SE和http∶SFP是兩個無效的組合。Soar可以斷定收到此類IP的數(shù)據(jù)包為非法包,向管理員發(fā)出警報。此時,Soar對該IP數(shù)據(jù)包完成了一次學(xué)習(xí),之后再遇到類似的IP特征包,就可直接標記為掃描包,并存儲到知識庫中,作為以后的評判標準。
在很多實驗中,Soar架構(gòu)在智能方面的表現(xiàn)較其他智能結(jié)構(gòu)(如EPIC模型和ACT-R模型)更為突出,將Soar具有的認知功能和IPS相結(jié)合來抵御網(wǎng)絡(luò)攻擊,在一定程度上提高了識別有害數(shù)據(jù)的概率。本文提出將Soar具備的認知技術(shù)融合到IPS當中,設(shè)計了針對端口掃描這類攻擊的一個防御系統(tǒng)。Soar內(nèi)部對IP掃描的分析過程顯示了該系統(tǒng)表現(xiàn)出較好的智能性,可以有效地識別非法掃描,實現(xiàn)系統(tǒng)自我防御。但是算法執(zhí)行過程記錄顯示,Soar在有限知識庫的基礎(chǔ)上,需要對規(guī)則之間的調(diào)用做出較為詳細的約束,存在規(guī)則之間的反復(fù)調(diào)用現(xiàn)象。雖然最終可以得出預(yù)期結(jié)果,但延長了內(nèi)部分析的時間。因此,在接下來的工作中將對算法進行優(yōu)化,力求降低算法的復(fù)雜度,得到更為滿意的內(nèi)部執(zhí)行時間。
[1]VASANTHI S,CHANDRASEKAR S.A study on network intrusion detection and prevention system current status and challenging issues[C]//Advances in Recent Technologies in Communication and Computing.2011:181-183.
[2] 劉慶華,林鄧偉.IPSec與NAT協(xié)同工作的一種解決方案[J].河南科技大學(xué)學(xué)報(自然科學(xué)版),2008,29(4):65-68.
[3] 劉德旬,劉曉潔.一種基于流式模式匹配的分片攻擊檢測方法[J].四川大學(xué)學(xué)報(自然科學(xué)版),2012,49(5):1025-1028.
[4] 艾磊,陳文.一種異步日志記錄的入侵防御系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機安全,2014(3):2-5.
[5]RAINER B,SEYIT A C,SAHIN A.Design and modeling of collaboration architecture for security[C]//International Symposium on Collaborative Technologies and Systems.2009:330-341.
[6] 萬召文,徐慧.具有認知功能的入侵防御系統(tǒng)研究與設(shè)計[J].計算機工程與設(shè)計,2013(10):3431-3435.
[7] JIANG Y P,GAN Y,ZHOU J H,et al.A model of intrusion prevention base on immune[C]//Fifth International Conference on Information Assurance and Security.2009:441-444.
[8] 吳海燕,蔣東興,程志銳.入侵防御系統(tǒng)研究[J].計算機工程與設(shè)計,2007,28(24):5844-5866.
[9] SUMINT M,MARY M,ANUPAM J,et al.Aknowledge-based approach to intrusion detection modeling[C]//IEEE Symposium on Security and Privacy Work-shops.2012:75-81.
[10]XI R R,JIN S Y,YUN X C,et al.CNSSA:a comprehensive network security situation awareness system[C]//International Joint Conference of IEEE.2011:482-487.
[11]LI J S,WANG X W.Cognitive and credible network architecture[C]//International Conference on Computer Application and System Modeling.2011:615-619.
[12] MARTUZA A,RIMA P M,MOJAMMEL H,et al.NIDS:a network based approach to intrusion detection and prevetion[C]//Bangladesh:International Association of Computer Science and Information Technoloy.2009:141-144.
[13] ABDULLAH A H,IDRIS M Y,STIAWAN D.The trends of intrusion prevention system network[C]// Proceedings of the 2nd International Conference on Education Technology and Computer of the IEEE ICETC.2010:217-221.
[14] THOMAS R W.Cognitive networks[C]//International Symposium on First IEEE.2005:352-360.
國家自然科學(xué)基金項目(81501559);江蘇省高校自然科學(xué)研究基金項目(15KJB310015);南通大學(xué)自然科學(xué)基金項目(15Z02);南通大學(xué)研究生創(chuàng)新訓(xùn)練計劃基金項目(YKC15056)
陳偉(1987-),男,江蘇淮安人,實驗師,碩士,主要研究方向為信號處理、圖像處理和信息安全等;吳輝群(1982-),男,通信作者,江蘇南通人,講師,博士,主要研究方向為信號處理、信息安全和醫(yī)學(xué)信息學(xué).
2015-11-02
1672-6871(2017)03-0049-05
10.15926/j.cnki.issn1672-6871.2017.03.011
TP393.081
A