摘要:將傳統(tǒng)信息安全技術(shù)和新型生物自適應(yīng)免疫技術(shù)應(yīng)用于考試系統(tǒng),設(shè)計并初步實(shí)現(xiàn)了一種新型的免疫網(wǎng)絡(luò)安全考試系統(tǒng)。此系統(tǒng)是多層次的靜態(tài)與動態(tài)、主動與被動防護(hù)相結(jié)合的自適應(yīng)安全考試系統(tǒng),它集多種保護(hù)方法于一體,能自適應(yīng)地保護(hù)系統(tǒng)本身,其安全性、穩(wěn)定性比其他考試系統(tǒng)有一定的增強(qiáng)。
關(guān)鍵詞:生物免疫系統(tǒng); 免疫網(wǎng)絡(luò); 考試安全; 考試系統(tǒng)
中圖分類號:TP393.08文獻(xiàn)標(biāo)志碼:A
文章編號:1001-3695(2007)08-0162-03
現(xiàn)在隨著網(wǎng)絡(luò)和網(wǎng)絡(luò)規(guī)模的不斷發(fā)展,網(wǎng)絡(luò)威脅的不斷出現(xiàn),各種傳統(tǒng)安全技術(shù)的局限性等,使得網(wǎng)絡(luò)考試系統(tǒng)的安全已經(jīng)成為人們無法回避的問題。現(xiàn)有的考試系統(tǒng)主要使用的是傳統(tǒng)的安全技術(shù),但它們都有自己的局限性,同時已經(jīng)不能滿足不斷變化的考試系統(tǒng)的安全需求。如何才能提高考試系統(tǒng)的安全呢?需要建立多方位、多層次、自適應(yīng)的手段來保證網(wǎng)絡(luò)考試系統(tǒng)的安全。生物免疫系統(tǒng)是一種高度進(jìn)化的,具有學(xué)習(xí)、記憶和模式識別能力的多層免疫系統(tǒng),以多種智能方法識別和消除病原體,保護(hù)生物免受病原體的危害。安全在網(wǎng)絡(luò)考試系統(tǒng)中的作用類似于生物免疫系統(tǒng)在生物體內(nèi)的作用。安全與免疫學(xué)的相似性使本文可以將生物免疫系統(tǒng)的結(jié)構(gòu)和機(jī)制應(yīng)用到網(wǎng)絡(luò)考試系統(tǒng)中,以提高其安全性。本文將傳統(tǒng)的安全技術(shù)與自適應(yīng)的免疫技術(shù)相結(jié)合,構(gòu)成多層次的、分布式的、主動與被動防護(hù)相結(jié)合的自適應(yīng)的免疫網(wǎng)絡(luò)安全考試系統(tǒng)。該系統(tǒng)與其他考試系統(tǒng)相比,增強(qiáng)了安全性和穩(wěn)定性,同時也使教育部門可以更好地利用現(xiàn)有資源。
1相關(guān)研究工作
現(xiàn)有的考試系統(tǒng)主要使用的安全技術(shù)有防火墻技術(shù)、防病毒技術(shù)、虛擬專用網(wǎng)絡(luò)技術(shù)、密碼技術(shù)和入侵檢測技術(shù)等。在傳統(tǒng)的安全技術(shù)中,各種技術(shù)均從不同的角度去治理網(wǎng)絡(luò),又深入擴(kuò)散到網(wǎng)絡(luò)安全的各個方面。但它們均有自己的局限性。防火墻是防止外部入侵的有效工具,入侵檢測系統(tǒng)可以檢查網(wǎng)絡(luò)內(nèi)部的攻擊行為或網(wǎng)絡(luò)濫用的系統(tǒng)等。所以應(yīng)該綜合應(yīng)用各種安全技術(shù),才能達(dá)到維護(hù)網(wǎng)絡(luò)系統(tǒng)的安全。現(xiàn)有的網(wǎng)絡(luò)技術(shù)采用的是靜態(tài)安全技術(shù)和已知的動態(tài)安全技術(shù),越來越難以滿足用戶的安全需求,具有自適應(yīng)性的安全系統(tǒng)才可以完成應(yīng)對動態(tài)、復(fù)雜的外部環(huán)境變化,保證計算機(jī)系統(tǒng)和網(wǎng)絡(luò)的安全性。生物免疫系統(tǒng)是一個自適應(yīng)的系統(tǒng),所以將自適應(yīng)的生物免疫應(yīng)用到考試系統(tǒng)中,以提高考試系統(tǒng)的安全性。
生物免疫系統(tǒng)是多層免疫系統(tǒng),最外層的是物理屏障的免疫;第二層是生理屏障的保護(hù)。如果病原體突破了前兩層保護(hù)進(jìn)入了生物體,則首先由先天性免疫系統(tǒng)來辨別一定的微生物或細(xì)菌并很快消滅它們。若病原體還沒有被消滅,則由淋巴細(xì)胞——T細(xì)胞和B細(xì)胞等構(gòu)成的自適應(yīng)免疫系統(tǒng)來處理。
該考試系統(tǒng)不僅借鑒了生物免疫系統(tǒng)的層次結(jié)構(gòu)模型,還借鑒了生物免疫系統(tǒng)中的檢測器的生成及重要的免疫機(jī)制。
生物免疫系統(tǒng)主要是通過模式識別(DNA編碼)的方式來實(shí)現(xiàn)免疫的。免疫系統(tǒng)中將所有的細(xì)胞分為兩類,即人體自身的細(xì)胞(self,又稱自我)和非自身的細(xì)胞(nonself,又稱非我)。免疫系統(tǒng)只對非自身細(xì)胞具有免疫作用。在免疫系統(tǒng)中,淋巴細(xì)胞充當(dāng)了免疫檢測器的作用。
借鑒的生物免疫系統(tǒng)的重要免疫機(jī)制如下:抗體的多樣性機(jī)制、克隆選擇和陰性選擇機(jī)制、聯(lián)想記憶機(jī)制、反饋機(jī)制、分布式自治機(jī)制、免疫耐受性等。
國際上已有如下的三個小組提出了基于免疫機(jī)制入侵檢測模型:a)美國University of New Mexico的Forrest、Hofmeyr小組[2~8];b)美國University of Memphis 的Dasgupta 小組[9~11];c)英國University College London的Kim、Bentley小組[12~13]。在基于免疫機(jī)制的入侵檢測模型中,美國New Mexico大學(xué)的Forrest、Hofmeyr小組的研究最為實(shí)際、完整和深入;美國Memphis大學(xué)的Dasgupta 小組研究的內(nèi)容只是其中的一個方面,即陰性檢測子和陽性檢測子的比較以及陰性檢測子的遺傳生成算法;英國London大學(xué)的Kim、Bentley小組提出的模型正在進(jìn)行實(shí)驗(yàn)驗(yàn)證工作,而從原理和結(jié)構(gòu)上看尚存在一些問題,其他的研究人員所做的工作較為零散,未能形成連續(xù)的和系統(tǒng)性的研究。
依據(jù)生物免疫的基本思想,借鑒美國University of New Mexico的Forrest、Hofmeyr小組的相關(guān)研究成果,將考試中的正常數(shù)據(jù)訪問當(dāng)成是自我的正常行為,將考試中的異常訪問當(dāng)成非我行為。區(qū)別自我和非我可用式(1)表示:
式(1)中v是預(yù)先設(shè)定的系統(tǒng)閾值。該式說明,當(dāng)一個行為模式與某一非我模式很相近或相同時可以判定其為異常或誤用行為。基于免疫原理的檢測系統(tǒng)如圖1所示。
該架構(gòu)中要解決的關(guān)鍵問題是:自我的初始化建立;非我的生成方法,包括增生演化生成候選檢測器集,通過克隆選擇、陰性選擇生成檢測器集;檢測算法、編碼策略或方法對以上問題有很大影響,甚至直接決定了算法。
2免疫網(wǎng)絡(luò)安全考試系統(tǒng)的設(shè)計
借鑒免疫系統(tǒng)的多層保護(hù), 基于免疫原理的考試系統(tǒng)安全設(shè)計,結(jié)合傳統(tǒng)的信息安全技術(shù),根據(jù)考試系統(tǒng)的具體功能與特點(diǎn)構(gòu)筑一個免疫網(wǎng)絡(luò)安全考試系統(tǒng)的安全模塊,如圖2所示。
圖1基于免疫原理的入侵檢測系統(tǒng)架構(gòu)圖2免疫網(wǎng)絡(luò)安全考試系統(tǒng)的安全模塊
靜態(tài)防御部分采用傳統(tǒng)的信息安全技術(shù)如防火墻、加密技術(shù)、病毒防治和身份認(rèn)證技術(shù)等。這些技術(shù)均集中在系統(tǒng)本身的加固上,發(fā)展較為成熟,對于已知的攻擊模式有很好的防御作用。但靜態(tài)防御部分的防御能力是固定的,不能隨著網(wǎng)絡(luò)的變化而變化,所以對于復(fù)雜攻擊的檢測和防御也是有限的。動態(tài)防御部分采用入侵檢測、攻擊陷阱等技術(shù),它們改變消極被動的防御方式,積極主動地采取各種措施來保證系統(tǒng)的安全,有效彌補(bǔ)其他靜態(tài)防御工具的不足。但它也存在著很多缺陷,如具有僅可檢測已知弱點(diǎn)的局限性;對于異常檢測難以定量分析;對于未知的攻擊存在錯報和漏報的情況;且不能采取及時的應(yīng)對措施,致使系統(tǒng)損壞等。加入生物免疫技術(shù)構(gòu)成了自適應(yīng)的生物免疫動態(tài)防御子模塊,使考試系統(tǒng)在受到惡意攻擊時,及時識別出自我和非我,并利用免疫機(jī)制讓整個安全系統(tǒng)防御攻擊,達(dá)到新的安全狀態(tài),能更好地防御外來攻擊。
考試系統(tǒng)的免疫模型中的一個重要部分是如何生成自我集合?自我為需要保護(hù)的數(shù)據(jù),而非我為其他任意的字符串。一般由基于主機(jī)、基于網(wǎng)絡(luò)、基于序列三種情況來定義自我與非我集合。基于主機(jī)方式目前在拆分的算法選擇上,還沒有一種特別有效的方法,所以此種方法不采用。基于網(wǎng)絡(luò)方式對于考試系統(tǒng)內(nèi)部的異常情況不易發(fā)現(xiàn),所以不予采用。基于序列方式是通過進(jìn)程的系統(tǒng)調(diào)用序列或者基于系統(tǒng)服務(wù)的訪問序列進(jìn)行自我集合提取,用匹配方法進(jìn)行識別。此種方法最適宜于考試系統(tǒng)的情況,本文采用此方法。系統(tǒng)的實(shí)現(xiàn)方法主要包括三個方面的內(nèi)容,即自我和非我的明確定義及自我集合的構(gòu)造、免疫匹配算法、構(gòu)造免疫檢測器。
在考試過程之中,由于進(jìn)程的系統(tǒng)調(diào)用序列遵循著相對穩(wěn)定的行為,而不同的系統(tǒng)調(diào)用通過對各種系統(tǒng)資源的占有、消耗、放棄、回收也會表現(xiàn)出相對穩(wěn)定的資源使用行為特征,并且系統(tǒng)資源的類型也是有限的、非常穩(wěn)定的。根據(jù)這一點(diǎn),可以采用用戶進(jìn)程的系統(tǒng)調(diào)用來定義自我,也可以將進(jìn)程以時間為軸的資源使用狀況曲線離散化,而得到的進(jìn)程資源使用狀況序列可以有效地表示為計算機(jī)系統(tǒng)的自我。到底采用哪一種表示呢?由于系統(tǒng)調(diào)用的類型種類繁多而且還在不斷地增加,這樣對自適應(yīng)要求不容易達(dá)到,采用后者來定義自我,這樣能達(dá)到自適應(yīng)的要求,對于系統(tǒng)資源信息的獲取非常方便,開銷極小,適用于實(shí)時檢測,同時可將多種系統(tǒng)資源定義為抗原的多個抗原決定基,通過對多種資源狀況的綜合分析可以提高檢測的準(zhǔn)確性。
在生物免疫模塊中,筆者模擬正常的考試過程,在排除了入侵、病毒、非授權(quán)訪問等不安全因素后的考試中,跟蹤和記錄服務(wù)器與考生機(jī)上進(jìn)程的各種資源的占用情況,這些資源有CPU占用時間、內(nèi)存占用時間、外部存儲器占用時間、網(wǎng)絡(luò)占用時間等,并根據(jù)考試情況以適當(dāng)?shù)臅r間間隔對其采樣,建立以一門課的考試時間為長度的資源使用情況的離散序列,最后將其保存為初期的自我抗體數(shù)據(jù)段。在加入了入侵、病毒、非授權(quán)訪問等不安全因素后的考試中,再次跟蹤和記錄服務(wù)器與考生機(jī)上進(jìn)程的各種資源占用情況,與形成自我抗體數(shù)據(jù)段的過程一樣,經(jīng)過采樣,形成離散序列,最后形成初期的非我抗原的數(shù)據(jù)段。抗體和抗原的結(jié)構(gòu)類似如圖3所示。
由于要求是自適應(yīng)的系統(tǒng),抗體和抗原的結(jié)構(gòu)與生物免疫系統(tǒng)一樣,由不變區(qū)和可變區(qū)組成。不變區(qū)包括固定的信息,如進(jìn)程的名字、進(jìn)程的路徑、文件的長度、資源類型等;可變區(qū)是二進(jìn)制化的系統(tǒng)資源使用情況的離散序列,長度可變。初期形成的抗體,根據(jù)陰性選擇原理,經(jīng)過自體耐受期后,被釋放到模擬的考試過程中執(zhí)行檢測任務(wù),在檢測到非我抗原后,該抗體進(jìn)行克隆選擇,經(jīng)過幾次重復(fù)的陰性選擇和克隆選擇后,不斷地進(jìn)化,最終形成成熟的檢測體集合。免疫考試系統(tǒng)中檢測器的識別演化過程如圖4所示。
在免疫網(wǎng)絡(luò)安全考試系統(tǒng)中,關(guān)鍵是要準(zhǔn)確及時地識別自我和非我,這個過程由檢測器完成。考試系統(tǒng)中的自我和非我是動態(tài)變化的,因此檢測器群體也在不斷地發(fā)生變化,并相互協(xié)調(diào)保證了考試系統(tǒng)不斷地應(yīng)對外部環(huán)境的變化,更好地防御外來入侵。
采用該算法是使檢測器具有淋巴細(xì)胞的特點(diǎn),即一個淋巴細(xì)胞可識別多種病原。有的淋巴細(xì)胞識別的病原多,有的淋巴細(xì)胞識別的病原少。在系統(tǒng)中,如果r取值越大,則檢測器能檢測的異常種類就越少。例如當(dāng)r=40 時,檢測器僅能檢測出一種異常。因此r決定了檢測器的特異性。
在免疫網(wǎng)絡(luò)安全考試系統(tǒng)中,檢測體集合通過檢測算法——連續(xù)R位匹配算法等去檢測考試過程中的非我行為。當(dāng)連續(xù)匹配的位數(shù)大于等于R位時,兩個序列匹配;否則不匹配。匹配是大部分或全部的匹配,所以與生物免疫系統(tǒng)中的免疫細(xì)胞的激活閾值一樣,在初期模擬考試過程中先規(guī)定一個激活閾值v,再在檢測過程中根據(jù)模擬考試情況自適應(yīng)地調(diào)節(jié)v到一個合適的大小,最終形成激活。若在正規(guī)考試過程中,超過系統(tǒng)的最高閾值v,系統(tǒng)自適應(yīng)地處理該情況,同時向管理員發(fā)出警告,寫入安全日志。在得到管理員的審查處理后,該檢測體被記錄到記錄檢測體集合中,供檢測體的進(jìn)化使用。所以在不同的時期,系統(tǒng)閾值是在不斷變化的。在考試系統(tǒng)的實(shí)驗(yàn)中,通過實(shí)驗(yàn)將系統(tǒng)閾值劃分為三個檔次,對不同檔次的系統(tǒng)閾值采用不同的響應(yīng)策略,主要包括提示、警告和終止程序運(yùn)行三種響應(yīng)策略。
這樣經(jīng)過不斷地進(jìn)化,考試免疫系統(tǒng)可以自適應(yīng)地最大程度地保證考試的安全。檢測數(shù)據(jù)對于本系統(tǒng)的檢測和分析極為重要,不僅需要檢測其是否受到破壞,還要進(jìn)行恢復(fù),所以需要加密并采用分布式的數(shù)據(jù)存儲方法以保證數(shù)據(jù)本身的安全。
將生物免疫部分加入到動態(tài)安全模塊中,就構(gòu)成了動態(tài)安全模塊。
由上所述,自適應(yīng)的生物免疫動態(tài)子模塊利用陰性選擇和生命周期等機(jī)制,使各個檢測器群體隨著考試的外界環(huán)境的變化而不停地演化,從而自適應(yīng)地保護(hù)了網(wǎng)絡(luò)考試系統(tǒng)的安全。
3免疫網(wǎng)絡(luò)考試系統(tǒng)的實(shí)現(xiàn)
免疫網(wǎng)絡(luò)安全考試系統(tǒng)的開發(fā)平臺采用Visual C++作為開發(fā)工具。經(jīng)2 168名同學(xué)使用所設(shè)計的免疫網(wǎng)絡(luò)安全考試系統(tǒng)進(jìn)行考試,考試情況正常,沒有出現(xiàn)安全問題,測試結(jié)果達(dá)到了設(shè)計要求。但在主動攻擊情況下,該系統(tǒng)的自適應(yīng)性有待進(jìn)一步的改進(jìn)和完善。
4結(jié)束語
上面提出了將靜態(tài)防御技術(shù)與融入免疫技術(shù)的動態(tài)防御技術(shù)相結(jié)合的方法用來保護(hù)考試系統(tǒng)的安全,使系統(tǒng)能自適應(yīng)地防御外來的異常情況。其新穎之處在于將生物學(xué)的免疫原理應(yīng)用到計算機(jī)網(wǎng)絡(luò)考試系統(tǒng)的安全保護(hù),它具有良好的分布性、魯棒性、適應(yīng)性、記憶性、動態(tài)覆蓋性等特性。當(dāng)然該免疫系統(tǒng)在某個時期不可能記憶所有的入侵模式,它只能在防御外來入侵的過程中,不斷地增加防御新入侵模式的能力,并刪除這一時期發(fā)生的可能性較小的入侵模式,爭取能夠做到全面防御。如何更好地應(yīng)對外來的異常情況還有很多問題有待解決。如怎樣提高檢測的準(zhǔn)確性和及時性,在免疫機(jī)制中如何提高整個系統(tǒng)的自適應(yīng)性,如何更好地實(shí)現(xiàn)安全系統(tǒng)的動態(tài)平衡,如何在復(fù)雜的變化的網(wǎng)絡(luò)數(shù)據(jù)中識別各種異常模式等均是以后需要解決的問題。
隨著對生物免疫系統(tǒng)認(rèn)識的發(fā)展和相關(guān)安全技術(shù)的提高,可以更安全地保護(hù)網(wǎng)絡(luò)考試系統(tǒng)。
參考文獻(xiàn):
[1]FORREST S, HOFMEYR S A,SOMAYAJI A. Computer immunology[J]. Communications of the ACM, 1997,40(10):88-96.
[2]HOFMEYR S A, FORREST S,HAESELEER D. An immunological approach to distributed network intrusion detection[C]//Proc of RAID’98. Belgium:[s.n.],1998.
[3]HOFMEYR S A, FORREST S. Immunity by design:an artificial immune system[C]//Proc of GECCO’99.San Francisco,CA:[s.n.],1999.
[4]HOFMEYR S A, FORREST S. Architecture for an artificial immune system[J]. Evolutionary Computation, 2000,8(4):443-473.
[5]FORREST S,HOFMEYR S A.Immunology as information processing[M]//SEGEL A,COHEN I R.Design principles for Immune systems other distributed autonomous systems. Oxforol:Oxford University Press, 2000.
[6]FORREST S. HOFMEYR S A. John holland’s invisible hand: an artificial immune system[C]//Presented at the FESTSCHIRIFT. 1999.
[7]HOFMEYR S A. An immunological model of distributed detection and its application to computer security [D].Albuquerque:University of New Mexico,1999.
[8]DASGUPTA D. An immune agent architecture for intrusion detection[C]//Proc of GECCO. Las Vegas, Nevada:[s.n.], 2000.
[9]DASGUPTA D, GONZALEZ F. An immunogenetic approach to intrusion detection,Tech Rep CS-01-001[R]Memphis:University of Memphis,2001.
[10]DASGUPTA D, NINO F. A comparison of negative and positive selection algorithms in novel pattern detection[C]//Proc of the IEEE Int’l Conf on Systems,Man and Cybernetics.Nashville:[s.n.],2000.
[11]KIM J, BENTLEY P. Investigating the roles of negative selection and clonal selection in an artificial immune system for network intrusion detection[J]. Special Issue on Artificial Immune Systems in IEEE Transactions of Evolutionary Computation,2001.
[12]KIM J, BENTLEY P. Towards an artificial immune system for network intrusion detection: an investigation of clonal selection with a negative selection operator[C]//Proc of the Congress on Evolutionary Computation.Seoul:[s.n.], 2001.
注:“本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文”