吳 鵬,汪 健
(四川工程職業(yè)技術(shù)學(xué)院 計(jì)算機(jī)科學(xué)技術(shù)系,德陽(yáng) 618000)
網(wǎng)絡(luò)中高新技術(shù)的發(fā)展始終是把雙刃劍,好的方面在于它能給網(wǎng)絡(luò)使用者帶來(lái)操作上更多實(shí)用、方便、快捷的性能提高,不好的方面則是被利用來(lái)對(duì)網(wǎng)絡(luò)進(jìn)行破壞,以致引起若干的網(wǎng)絡(luò)安全問(wèn)題。根據(jù)CNCERT/CC發(fā)布的《2009年中國(guó)互聯(lián)網(wǎng)網(wǎng)絡(luò)安全報(bào)告》的監(jiān)測(cè)反映:2009年,對(duì)境內(nèi)互聯(lián)網(wǎng)基礎(chǔ)運(yùn)行設(shè)施的攻擊主要是分布式拒絕服務(wù)攻擊DDoS (Distributed Denial of Service),導(dǎo)致網(wǎng)絡(luò)性能下降,嚴(yán)重影響到網(wǎng)絡(luò)承載的其他業(yè)務(wù),針對(duì)日益復(fù)雜的網(wǎng)絡(luò)安全問(wèn)題,尋求更高效的解決方案迫在眉睫。
圖1 DDoS攻擊原理示意圖
典型的DDoS攻擊原理示意圖如圖1所示。攻擊者入侵有安全漏洞的主機(jī)并獲取控制權(quán),成為其控制機(jī),然后再選擇那些安全管理水平差的主機(jī)作為攻擊僵尸,這樣攻擊者便通過(guò)控制機(jī)控制攻擊僵尸向受害者發(fā)動(dòng)攻擊,使得原本單一的攻擊變成了群體性質(zhì)的攻擊,給受害方的防御帶來(lái)了很大難度。
常用的DDoS攻擊工具如表1所示:
表1 常用的DDoS攻擊工具
可見(jiàn)大部分的DDoS攻擊是通過(guò)UDP、TCP、ICMP等來(lái)實(shí)現(xiàn)的。目前有很多技術(shù)紛紛應(yīng)用在DDoS的防御系統(tǒng)上,有硬件的也有軟件的,但隨著攻擊方式的多樣性及不斷演變,檢測(cè)防御技術(shù)無(wú)論在理論還是應(yīng)用上都存在一些不足,主要體現(xiàn)在防護(hù)種類不足、效率不高等方面。為此,尋求更多更有效的技術(shù)方法成了每一個(gè)安全維護(hù)人員的工作之重,本文介紹的就是從軟件角度提出的一個(gè)檢測(cè)策略。
隨著計(jì)算機(jī)科學(xué)技術(shù)的高速發(fā)展,對(duì)技術(shù)的智能化要求越來(lái)越高,人們往往會(huì)從復(fù)雜而有效的生物系統(tǒng)的運(yùn)作原理中獲取靈感,近年來(lái)提出了若干的學(xué)習(xí)系統(tǒng),包括遺傳算法(GA)[1]、人工神經(jīng)網(wǎng)絡(luò)(ANN)[2]、蟻群系統(tǒng)(Ant System)[3]、人工免疫系統(tǒng)(AIS)等,它們分別從自然進(jìn)化過(guò)程、大腦神經(jīng)系統(tǒng)、螞蟻群體覓食、筑巢和生物免疫系統(tǒng)等活動(dòng)啟發(fā)而來(lái)。其中,生物免疫系統(tǒng)能夠有效地區(qū)分有害抗原和自身組織,進(jìn)而去除抗原保證生物體的健康,是一個(gè)復(fù)雜而高級(jí)的系統(tǒng)。將其運(yùn)作原理數(shù)字化處理后針對(duì)特定應(yīng)用而產(chǎn)生的計(jì)算模型就是我們俗稱的AIS,從一定程度上具備了很強(qiáng)的學(xué)習(xí)、識(shí)別、記憶和特征提取能力。
AIS中免疫算法是其核心算法,其基本架構(gòu)如圖2所示。
圖2 免疫算法基本架構(gòu)
其中克隆選擇是整個(gè)免疫系統(tǒng)運(yùn)作的關(guān)鍵,它描述了免疫系統(tǒng)對(duì)抗原做出免疫響應(yīng)的基本特征,抗體的產(chǎn)生、變異及消亡分別對(duì)應(yīng)問(wèn)題的解、優(yōu)化及解的刪除。整個(gè)過(guò)程依據(jù)復(fù)雜的生物免疫系統(tǒng)原理產(chǎn)生,因此也具備了其自適應(yīng)、自學(xué)習(xí)及魯棒性等優(yōu)良特點(diǎn)。
對(duì)于我們要研究的DDoS攻擊檢測(cè)而言,AIS的運(yùn)作原理給了我們很大啟示,在以往眾多的研究中我們發(fā)現(xiàn)許多技術(shù)在智能化、自適應(yīng)、自學(xué)習(xí)方面的能力有所欠缺,一些核心的參數(shù)需要有經(jīng)驗(yàn)的專家給予指導(dǎo)、修正,否則很難達(dá)到預(yù)期效果,這就如同一個(gè)自身免疫缺乏的生物體一樣,必須得依靠外部給予的抗生素才能對(duì)抗隨時(shí)隨地的病菌,這樣是很危險(xiǎn)的。同理,對(duì)DDoS攻擊乃至更多花樣層出的網(wǎng)絡(luò)入侵,去研究如何提高檢測(cè)系統(tǒng)的自適應(yīng)、自學(xué)習(xí)能力顯得意義重大。
圖3是基于AIS的DDoS攻擊檢測(cè)體系結(jié)構(gòu)圖。
圖3 基于AIS的DDoS檢測(cè)體系
當(dāng)外網(wǎng)數(shù)據(jù)包到達(dá)時(shí),提取數(shù)據(jù)包的特征向量,生成待定抗原,然后和抗體庫(kù)中的細(xì)胞進(jìn)行匹配,抗體庫(kù)中有記憶細(xì)胞和未成熟細(xì)胞,其中記憶細(xì)胞是根據(jù)已有DDoS攻擊數(shù)據(jù)包的特征向量產(chǎn)生的,而未成熟細(xì)胞則是已知或未知的DDoS特征向量經(jīng)歷變異后產(chǎn)生的新的抗體細(xì)胞,因此,抗原首先和記憶細(xì)胞進(jìn)行匹配,如果匹配,則可直接認(rèn)定為攻擊數(shù)據(jù),立即采取相應(yīng)措施予以阻截,如果不匹配,則再和未成熟細(xì)胞進(jìn)行匹配,因?yàn)槭俏闯墒旒?xì)胞,較之記憶細(xì)胞還有很多不確定因素,因此,給匹配程度(即親和度)設(shè)定一個(gè)閥值,超過(guò)這個(gè)閥值,則認(rèn)為該數(shù)據(jù)包高度危險(xiǎn),予以阻截,否則予以通行。其中,抗原、記憶細(xì)胞、未成熟細(xì)胞、親和度、閥值、克隆選擇算法及變異算法的設(shè)定都非常關(guān)鍵,直接影響著整個(gè)檢測(cè)系統(tǒng)的性能。
其中克隆選擇是整個(gè)AIS的核心,它反映了抗體群的隨機(jī)轉(zhuǎn)換過(guò)程[4]:
上述過(guò)程實(shí)際包含了兩個(gè)步驟,即克隆和變異,解空間中的一個(gè)點(diǎn)分裂成了qi個(gè)相同的點(diǎn), 經(jīng)過(guò)變異后獲得新的抗體群bi
定義:
一般?。?/p>
Nc>n是與克隆規(guī)模有關(guān)的設(shè)定值,Int (x)表示大于x的最小整數(shù)。克隆過(guò)后,種群變?yōu)椋?/p>
其中:
對(duì)于上述克隆后的抗體種群,再隨機(jī)選擇變異點(diǎn),以一定的變異率Pm進(jìn)行變異[5]。
按照柏松分布選擇交叉點(diǎn),即
其中,X為交叉點(diǎn)數(shù),這樣經(jīng)過(guò)點(diǎn)變異后生成新的變異個(gè)體b,從而更新抗體群。
上述檢測(cè)策略已在基金項(xiàng)目入侵防御系統(tǒng)中使用,取得了較好效果。
目前DDoS攻擊仍是網(wǎng)絡(luò)基礎(chǔ)設(shè)施的主要威脅,給網(wǎng)絡(luò)的安全運(yùn)營(yíng)帶來(lái)了極大危害,而且由于DDoS攻擊源的隱蔽性及群體性,導(dǎo)致防御的難度日益增加。AIS是基于生物免疫系統(tǒng)的運(yùn)作機(jī)理而建立的自動(dòng)化智能系統(tǒng),將其應(yīng)用于檢測(cè)DDoS攻擊與其他技術(shù)方法相比而言體現(xiàn)了更為強(qiáng)大的自適應(yīng)、自學(xué)習(xí)能力及系統(tǒng)魯棒性。但由于生物免疫系統(tǒng)本身的復(fù)雜性,還有很多技術(shù)特征未被生物學(xué)專家識(shí)別和掌握,因此,基于此建立的AIS就有更多的技術(shù)難點(diǎn)有待改進(jìn)和突破,這也將是本研究工作今后的研究重點(diǎn)。
[1] 肖人彬, 王磊. 人工免疫系統(tǒng)-原理、模型、分析及展望[J]. 計(jì)算機(jī)學(xué)報(bào) 2002.12: 1281-1293.
[2] D. Koller, M. Sahami, Hierarchically Classifying Documents Using Very Few Words In Machine Learning[C]: Proceeding of the Fourteenth International Conference, Morgan Kaufmanm,1997, On page(s): 284-292.
[3] 周濟(jì), 查建中, 肖人彬. 智能設(shè)計(jì)[M]. 北京: 高等教育出版社, 1998.
[4] 焦李成, 杜海峰. 人工免疫系統(tǒng)進(jìn)展與展望[J]. 電子學(xué)報(bào)2003. 10: 1540-1548.
[5] 楊進(jìn), 劉曉潔, 李濤. 人工免疫系統(tǒng)中變異算法研究[J].計(jì)算機(jī)工程, 2007.9: 37-39.