張 雁, 劉才銘,2
(1.樂(lè)山師范學(xué)院計(jì)算機(jī)科學(xué)學(xué)院,四川樂(lè)山614004;2.西南交通大學(xué)信息科學(xué)與技術(shù)學(xué)院,四川成都610031)
網(wǎng)絡(luò)安全監(jiān)測(cè)技術(shù)通過(guò)對(duì)網(wǎng)絡(luò)安全威脅進(jìn)行有效地檢測(cè),并對(duì)網(wǎng)絡(luò)安全威脅的相關(guān)數(shù)據(jù)進(jìn)行分析和判斷,為網(wǎng)絡(luò)管理者提供網(wǎng)絡(luò)安全程度的參考,并為追究安全威脅制造者的責(zé)任提供依據(jù),它已經(jīng)成為網(wǎng)絡(luò)安全技術(shù)的研究熱點(diǎn)之一[1]。
目前,主要采用網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估(Network Security Situational Awareness)[2]技術(shù)監(jiān)測(cè)計(jì)算機(jī)網(wǎng)絡(luò)中的安全狀況,但是,傳統(tǒng)網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估技術(shù)主要采用日志分析和漏洞掃描等方法[2-3],其獲取的數(shù)據(jù)帶有很大的靜態(tài)性,難以適應(yīng)瞬息萬(wàn)變的網(wǎng)絡(luò)安全環(huán)境。況且,網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估技術(shù)只評(píng)估安全狀況,不對(duì)威脅制造者的行蹤進(jìn)行記錄,不利于事后追究責(zé)任。隨著網(wǎng)絡(luò)安全形勢(shì)的日益復(fù)雜,網(wǎng)絡(luò)安全監(jiān)測(cè)技術(shù)迫切需要進(jìn)行拓展,在對(duì)網(wǎng)絡(luò)安全威脅進(jìn)行檢測(cè)和取證的基礎(chǔ)上,實(shí)現(xiàn)針對(duì)動(dòng)態(tài)網(wǎng)絡(luò)環(huán)境中存在的安全風(fēng)險(xiǎn)的精確評(píng)估,讓網(wǎng)絡(luò)管理員不僅知道遭受了網(wǎng)絡(luò)安全威脅,還能夠有科學(xué)依據(jù)去防范和化解網(wǎng)絡(luò)安全風(fēng)險(xiǎn),或?qū)踩L(fēng)險(xiǎn)控制在可接受的范圍內(nèi)。
為了有效監(jiān)測(cè)計(jì)算機(jī)網(wǎng)絡(luò)中面臨的安全威脅,引入計(jì)算智能方法便是一種有效的途徑之一。人工免疫系統(tǒng)(Artificial Immune System,AIS)[4-7]已發(fā)展成為計(jì)算智能研究的一個(gè)嶄新的分支,而由其發(fā)展而來(lái)的計(jì)算機(jī)免疫系統(tǒng)(Computer Immune System,CIS)[8-9]更是在計(jì)算機(jī)網(wǎng)絡(luò)及其安全研究中得到了廣泛地應(yīng)用[9-10]。模擬克隆選擇原理(Clonal Selection Principle,CSP)的克隆選擇算法(Clonal Selection Algorithm,CSA)是CIS的重要組成部分,它通過(guò)親和力機(jī)制讓系統(tǒng)進(jìn)行學(xué)習(xí),并演化出解決問(wèn)題的最佳方法。Castro[11]提出了克隆選擇算法模型,并在模式識(shí)別、組合優(yōu)化和多峰值函數(shù)優(yōu)化中得到驗(yàn)證[9]。Kim和Bentley[12]提出動(dòng)態(tài)克隆選擇算法(Dynamical Clonal Selection,DynamiCS),并在網(wǎng)絡(luò)安全應(yīng)用中得到驗(yàn)證。隨后,大量研究人員在基于克隆選擇原理的網(wǎng)絡(luò)安全研究方面取得大量積極的研究成果。
文中將克隆選擇原理引入到網(wǎng)絡(luò)安全監(jiān)測(cè)技術(shù)中,利用克隆選擇原理的良好機(jī)制和自學(xué)習(xí)性特征,并使用克隆選擇算法動(dòng)態(tài)地演化出檢測(cè)網(wǎng)絡(luò)安全威脅的檢測(cè)要素,實(shí)現(xiàn)網(wǎng)絡(luò)安全威脅的告警、網(wǎng)絡(luò)安全風(fēng)險(xiǎn)評(píng)估、以及網(wǎng)絡(luò)安全威脅的取證等網(wǎng)絡(luò)安全監(jiān)測(cè)流程。
網(wǎng)絡(luò)安全監(jiān)測(cè)技術(shù)監(jiān)測(cè)網(wǎng)絡(luò)內(nèi)的網(wǎng)絡(luò)安全威脅,并提取監(jiān)測(cè)到的網(wǎng)絡(luò)安全威脅信息,給管理員發(fā)送告警信息,還根據(jù)網(wǎng)絡(luò)安全威脅的強(qiáng)度定量評(píng)估網(wǎng)絡(luò)安全風(fēng)險(xiǎn),同時(shí)對(duì)網(wǎng)絡(luò)安全威脅造成的影響進(jìn)行取證。研究的網(wǎng)絡(luò)安全監(jiān)測(cè)的流程如圖1所示,其中,虛線表示檢測(cè)數(shù)據(jù)的流動(dòng)方向。首先,將網(wǎng)絡(luò)數(shù)據(jù)包提呈為抗原;然后,將抗原提交給基于克隆選擇原理的網(wǎng)絡(luò)安全威脅檢測(cè)模塊,利用抗原訓(xùn)練檢測(cè)器,讓檢測(cè)器得到進(jìn)化和自適應(yīng);最后,根據(jù)網(wǎng)絡(luò)安全威脅的監(jiān)測(cè)結(jié)果,對(duì)網(wǎng)絡(luò)管理員進(jìn)行告警、評(píng)估安全風(fēng)險(xiǎn)和取證。
為了將克隆選擇原理引入到網(wǎng)絡(luò)安全監(jiān)測(cè)技術(shù)中,需要將真實(shí)網(wǎng)絡(luò)環(huán)境下的數(shù)據(jù)模擬成克隆選擇原理中的數(shù)據(jù)元素和檢測(cè)要素。將計(jì)算機(jī)網(wǎng)絡(luò)數(shù)據(jù)包的特征信息模擬成抗原(antigen),將檢測(cè)網(wǎng)絡(luò)安全威脅的檢測(cè)要素模擬成檢測(cè)器(detector)。
抽取網(wǎng)絡(luò)數(shù)據(jù)包的主要包頭信息,將其轉(zhuǎn)換成長(zhǎng)度為l(l為自然數(shù))的二進(jìn)制串,定義這些二進(jìn)制串的狀態(tài)空間為U={0,1}l,將網(wǎng)絡(luò)數(shù)據(jù)包的包頭信息提呈為抗原,抗原由網(wǎng)絡(luò)數(shù)據(jù)包的源/目的IP地址、端口號(hào)和協(xié)議標(biāo)志等數(shù)據(jù)包特征的二進(jìn)制串組成。定義抗原集合為其中,p為網(wǎng)絡(luò)數(shù)據(jù)包,APCs(p)函數(shù)表示將數(shù)據(jù)包 p的特征信息提呈為長(zhǎng)度為l的二進(jìn)制串。
將正常網(wǎng)絡(luò)行為和網(wǎng)絡(luò)安全威脅分別定義為自體抗原Self(簡(jiǎn)稱(chēng)自體)和非自體抗原 Nonself(簡(jiǎn)稱(chēng)非自體),其中,Self,Nonself∈Ag,它們滿(mǎn)足 Self∩Nonself=Φ,Self∪Nonself=Ag[1]。
定義1 定義檢測(cè)器集合為 D={〈gene,age,count,type,family〉|gene∈Ag,age,count,type,family∈N},其中,gene為檢測(cè)器的基因,它是與抗原進(jìn)行匹配的二進(jìn)制串,也即檢測(cè)數(shù)據(jù)包中是否含有安全威脅的關(guān)鍵特征信息;N為自然數(shù)集合;count為檢測(cè)器匹配到抗原的數(shù)量;age為檢測(cè)器的年齡,表示該檢測(cè)器已經(jīng)存活了多少代;type表示檢測(cè)器的類(lèi)型;family為一個(gè)正序列整數(shù),表示檢測(cè)器的族群序列號(hào),它與一種網(wǎng)絡(luò)安全威脅的編號(hào)相對(duì)應(yīng)。
選擇我院接受的進(jìn)行超聲檢查的300例甲狀腺結(jié)節(jié)患者作為案例,對(duì)患者采用本院現(xiàn)有的超聲量化分級(jí)系統(tǒng)實(shí)施診斷和評(píng)估。本次研究的研究案例均符合要求,經(jīng)過(guò)病理診斷后具備知情權(quán),簽署知情同意書(shū)。
檢測(cè)器的基因與抗原具有相同的數(shù)據(jù)格式,它是檢測(cè)器識(shí)別抗原的關(guān)鍵特征信息,因此,判斷檢測(cè)器是否檢測(cè)到抗原,需要建立檢測(cè)器基因與抗原的二進(jìn)制字符串的匹配算法。目前主要采用海明距離(Hamming)、歐氏距離(Euclidean)和r-連續(xù)位匹配算法(r-Contiguous)[8]等匹配方法。建立函數(shù) fmatch(),判斷檢測(cè)器d和抗原ag是否匹配,如下所示。

其中,函數(shù)返回值為1時(shí),檢測(cè)器d和抗原ag匹配,否則不匹配。

圖1 網(wǎng)絡(luò)安全監(jiān)測(cè)流程
將檢測(cè)器分類(lèi)為未成熟檢測(cè)器DI、成熟檢測(cè)器DM和記憶檢測(cè)器DR。
未成熟檢測(cè)器模擬了檢測(cè)要素進(jìn)化的初始階段,是新生成的檢測(cè)器,由記憶檢測(cè)器的基因片段進(jìn)行變異和重組后產(chǎn)生,或者由系統(tǒng)隨機(jī)產(chǎn)生,這樣可以提高檢測(cè)器的多樣性,未成熟檢測(cè)器滿(mǎn)足:DI=其中,α為未成熟檢測(cè)器的耐受期閾值;count為匹配到正常自體抗原的數(shù)量,一旦未成熟檢測(cè)器匹配到自體抗原,即 count>0,則未成熟檢測(cè)器將走向死亡;parent.family為產(chǎn)生該未成熟檢測(cè)器的記憶檢測(cè)器的族群序列號(hào),如果為隨機(jī)生成的未成熟檢測(cè)器,則使用新的族群序列號(hào),但不能與以前的族群序列號(hào)重復(fù)。
成熟檢測(cè)器模擬了檢測(cè)器進(jìn)化的中間階段,由未成熟檢測(cè)器進(jìn)化而來(lái),它滿(mǎn)足:DM={d|d∈D,d.age<λ,d.count<δ},其中,λ為成熟檢測(cè)器的生命周期(即成熟檢測(cè)器的壽命);δ為成熟檢測(cè)器的激活閾值,它不與自體匹配,每檢測(cè)到一個(gè)抗原,其count域加1,它需要在其生命周期λ里檢測(cè)到足夠數(shù)量(δ)的抗原,才能進(jìn)化成記憶檢測(cè)器,否則將走向死亡,如圖1所示。
記憶檢測(cè)器DR模擬了檢測(cè)器進(jìn)化的最高階段,由被激活的成熟檢測(cè)器進(jìn)化而來(lái),或由管理員將已知網(wǎng)絡(luò)安全威脅的特征數(shù)據(jù)轉(zhuǎn)換而來(lái),它滿(mǎn)足:DR={d|d∈D,d.age≥λ,d.count≥δ},它包含有能精確識(shí)別攻擊數(shù)據(jù)包的特征,并能夠?qū)Ψ亲泽w抗原產(chǎn)生二次免疫應(yīng)答,迅速地識(shí)別有害抗原,即檢測(cè)到攻擊數(shù)據(jù)包時(shí),通過(guò)克隆擴(kuò)增機(jī)制用自己的基因片段產(chǎn)生大量的未成熟檢測(cè)器,以便生成更多的識(shí)別有害抗原的檢測(cè)器,從而壯大自己的族群。在初始階段,可以輸入經(jīng)典的網(wǎng)絡(luò)安全威脅特征信息作為記憶檢測(cè)器,并用其生成未成熟檢測(cè)器,經(jīng)過(guò)動(dòng)態(tài)演化,可以更快地生成能多樣化地檢測(cè)有害抗原的檢測(cè)器。
定義網(wǎng)絡(luò)安全威脅集合為 T。

其中,attackID為網(wǎng)絡(luò)安全威脅的標(biāo)識(shí)號(hào),它與其對(duì)應(yīng)的記憶檢測(cè)器的族群序列號(hào)相同;N為自然數(shù);attack-Name為網(wǎng)絡(luò)安全威脅的名稱(chēng);attackInfo為網(wǎng)絡(luò)攻擊的描述信息;ASCII為ASCII字符集。

當(dāng)記憶檢測(cè)器識(shí)別到有害抗原時(shí),通過(guò)其 family域關(guān)聯(lián)到抗原對(duì)應(yīng)的網(wǎng)絡(luò)安全威脅種類(lèi),并提取網(wǎng)絡(luò)安全威脅的信息,向管理員發(fā)出警告。設(shè)A為告警信息集合。

其中,attackName表示檢測(cè)到的網(wǎng)絡(luò)安全威脅的名稱(chēng),attackCount表示該種網(wǎng)絡(luò)安全威脅的發(fā)生次數(shù)。
隨著檢測(cè)器的動(dòng)態(tài)演化,檢測(cè)器的族群數(shù)量也隨之發(fā)生變化,這種族群數(shù)量的大小,也反映了網(wǎng)絡(luò)安全威脅強(qiáng)度的動(dòng)態(tài)變化,即網(wǎng)絡(luò)安全威脅的強(qiáng)度反映在具有相同族群序列號(hào)的未成熟檢測(cè)器和成熟檢測(cè)器的數(shù)量上。
設(shè)第i類(lèi)(i為網(wǎng)絡(luò)安全威脅列號(hào))網(wǎng)絡(luò)安全威脅的危害性為hi,設(shè)第j個(gè)網(wǎng)絡(luò)資產(chǎn)(包括軟硬件)的重要性為vj,則第j個(gè)網(wǎng)絡(luò)資產(chǎn)面臨的安全風(fēng)險(xiǎn)rj為:

其中,m為網(wǎng)絡(luò)資產(chǎn)遭受的網(wǎng)絡(luò)安全威脅的數(shù)量;“*”表示計(jì)算方法;dI∈DI,dM∈DM,dI.family=dM.family=i;Count()函數(shù)按照參數(shù)給定的條件統(tǒng)計(jì)檢測(cè)器的數(shù)量。
網(wǎng)絡(luò)面臨的整體安全風(fēng)險(xiǎn) r為:

其中,n為被監(jiān)測(cè)的網(wǎng)絡(luò)資產(chǎn)的數(shù)量。
該方法在檢測(cè)到網(wǎng)絡(luò)安全威脅時(shí),同時(shí)對(duì)網(wǎng)絡(luò)安全威脅行為進(jìn)行取證。一旦記憶檢測(cè)器匹配到非法抗原,隨即對(duì)抗原對(duì)應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行特征提取,提取的特征信息包括源IP地址、目的IP地址、發(fā)生的時(shí)間等,并對(duì)遭受安全威脅的目標(biāo)系統(tǒng)的當(dāng)前狀態(tài)信息進(jìn)行提取,如CPU使用狀態(tài)、內(nèi)存使用狀態(tài)、網(wǎng)絡(luò)流量等。將提取的以上信息形成網(wǎng)絡(luò)安全威脅快照數(shù)據(jù)Flash,對(duì)該數(shù)據(jù)進(jìn)行處理后形成證據(jù) Evidence,發(fā)往證據(jù)服務(wù)器進(jìn)行保存,證據(jù)的生成過(guò)程如下所示。
Evidence=Encrypt(Hash(Flash),publicKey)+Encrypt(Flash,publicKey)
其中,Encrypt()為公鑰加密函數(shù),Hash()為單向散列函數(shù),publicKey為證據(jù)服務(wù)器提供的公鑰,“+”為內(nèi)容連接符。
證據(jù)服務(wù)器在接收到證據(jù)后,拆解出包頭信息,用其私鑰進(jìn)行解密,然后將解密后的信息與內(nèi)容信息的hash值進(jìn)行比較,若兩個(gè)值相同,則表示該證據(jù)完整,是可信的,可以存入證據(jù)服務(wù)器中,否則要求重發(fā)證據(jù)。
通過(guò)對(duì)網(wǎng)絡(luò)安全威脅進(jìn)行監(jiān)測(cè),可以讓網(wǎng)絡(luò)管理人員全面地了解當(dāng)前的網(wǎng)絡(luò)安全狀況。為了對(duì)網(wǎng)絡(luò)安全威脅進(jìn)行有效地監(jiān)測(cè),文中將克隆選擇原理引入到網(wǎng)絡(luò)安全監(jiān)測(cè)技術(shù)中,研究克隆選擇原理在計(jì)算機(jī)網(wǎng)絡(luò)中的網(wǎng)絡(luò)安全監(jiān)測(cè)方法,實(shí)現(xiàn)網(wǎng)絡(luò)安全威脅的告警、網(wǎng)絡(luò)安全風(fēng)險(xiǎn)評(píng)估、以及網(wǎng)絡(luò)安全威脅的取證等網(wǎng)絡(luò)安全監(jiān)測(cè)流程。建立了一種有效的網(wǎng)絡(luò)安全監(jiān)測(cè)技術(shù),其監(jiān)測(cè)的結(jié)果能為制定主動(dòng)的網(wǎng)絡(luò)安全防御策略提供科學(xué)的依據(jù)。
致謝:感謝樂(lè)山師范學(xué)院科研項(xiàng)目(Z1113,Z1065)對(duì)本文的資助
[1] 李濤.基于免疫的網(wǎng)絡(luò)監(jiān)控模型[J].計(jì)算機(jī)學(xué)報(bào),2006,29(9):1515-1522.
[2] 韋勇,連一峰,馮登國(guó).基于信息融合的網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估模型[J].計(jì)算機(jī)研究與發(fā)展,2009,46(3):353-362.
[3] 韋勇,連一峰.基于日志審計(jì)與性能修正算法的網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估模型[J].計(jì)算機(jī)學(xué)報(bào),2009,32(4):763-772.
[4] Hofmeyr S A,Forrest S.Immunity by design:An artificial immune system[C].Genetic Evolutionary Computation Conf,San Francisco,CA,1999:1289-1296.
[5] 肖人彬,王磊.人工免疫系統(tǒng):原理、模型、分析及展望[J].計(jì)算機(jī)學(xué)報(bào),2002,25(12):1281-1293.
[6] 焦李成,杜海峰.人工免疫系統(tǒng)進(jìn)展和展望[J].電子學(xué)報(bào),2003,31(10):1540-1548.
[7] 莫宏偉,左興權(quán).人工免疫系統(tǒng)[M].北京:科學(xué)出版社,2009.
[8] Forrest S,Hofmeyr S A,Somayaji A.Computer immunology[J].Communications of the ACM,1997,40(10):88-96.
[9] 李濤.計(jì)算機(jī)免疫學(xué)[M].北京:電子工業(yè)出版社,2004.
[10] Dasgupta D.An immunity-based technique to characterize intrusions in computer networks[J].IEEE Transactions on Evolutionary Computation,2002,6(3):281-291.
[11] Castro L N,Zuben F J V.Learning and optimization using the clonal selection principle[J].IEEE Transaction On Evolution Computation,2002,6(3).
[12] Kim J,Bentley P J.Towards an artificial immune system for network intrusion detection:an investigation of dynamic clonal selection[C].The Congress on Evolutionary Computation,2002:1015-1020.