胡星高 鄭榮鋒 周安民 劉 亮
1(四川大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 成都 610065) 2(四川大學(xué)電子信息學(xué)院 成都 610065)
(842429313@qq.com)
隨著互聯(lián)網(wǎng)的發(fā)展,針對(duì)網(wǎng)絡(luò)行為的分析已經(jīng)成為網(wǎng)絡(luò)安全的研究熱點(diǎn).許多研究者分別從網(wǎng)絡(luò)數(shù)據(jù)包、網(wǎng)絡(luò)數(shù)據(jù)流出發(fā)分析正常和惡意的網(wǎng)絡(luò)行為特征[1-2].然而,根據(jù)Radware發(fā)布的2018—2019年全球應(yīng)用和網(wǎng)絡(luò)安全報(bào)告顯示,在隨機(jī)抽查的網(wǎng)絡(luò)用戶中,有93%的網(wǎng)絡(luò)用戶都曾遭受了惡意網(wǎng)絡(luò)行為的攻擊,而這其中在沒(méi)有預(yù)警的情況下受到網(wǎng)絡(luò)攻擊的人數(shù)達(dá)到了57%[3].惡意網(wǎng)絡(luò)行為識(shí)別不能完全識(shí)別所有的惡意網(wǎng)絡(luò)行為,這給網(wǎng)絡(luò)安全防御帶來(lái)了巨大的挑戰(zhàn).
訪問(wèn)控制策略是一種常見(jiàn)的網(wǎng)絡(luò)安全防御機(jī)制,而其中的白名單是一種常見(jiàn)的訪問(wèn)控制策略.白名單的定義是一種明確允許某些標(biāo)識(shí)的實(shí)體訪問(wèn)特定特權(quán)、服務(wù)的成員名單[4].通過(guò)設(shè)置白名單可以抵御惡意軟件和有針對(duì)性的攻擊,因?yàn)樵谀J(rèn)情況下,任何不屬于白名單列表里的網(wǎng)絡(luò)流量都不能到達(dá)主機(jī).其工作流程如圖1所示,網(wǎng)絡(luò)流量在經(jīng)過(guò)防火墻中的白名單后,能夠通過(guò)的流量被視作正常流量,而不能通過(guò)的流量被視作未知流量.白名單作為一個(gè)權(quán)限名單,存在于白名單里的用戶的可靠性一直是研究白名單生成的關(guān)鍵問(wèn)題.
圖1 白名單工作流程示意圖
針對(duì)生成白名單方法的研究,許多研究者都提出了自己的方案.文獻(xiàn)[5]提出了基于質(zhì)詢-響應(yīng)測(cè)試的生成白名單方法,根據(jù)CAPTCHA(completely automated public turing test to tell computers and humans apart)表單測(cè)試結(jié)果判斷該服務(wù)器的請(qǐng)求是否來(lái)自于人工,并當(dāng)一定數(shù)量的用戶在這臺(tái)服務(wù)器通過(guò)CAPTCHA表單測(cè)試時(shí),將該服務(wù)器加入白名單,上述方法的關(guān)鍵在于CAPTCHA表單測(cè)試的可靠性,但是目前文獻(xiàn)[6]中的結(jié)果表明已經(jīng)可以采用人工智能的方式進(jìn)行CAPTCHA表單測(cè)試,并且準(zhǔn)確率達(dá)到50%.文獻(xiàn)[7]提出基于來(lái)自網(wǎng)站源碼的超鏈接特征的白名單生成方法,通過(guò)檢測(cè)超鏈接特性的方式來(lái)判斷一個(gè)網(wǎng)站是否屬于釣魚(yú)網(wǎng)站,如果不屬于釣魚(yú)網(wǎng)站,則將IP與當(dāng)前域名進(jìn)行綁定放入白名單.該方法需要實(shí)時(shí)地進(jìn)行檢測(cè),且由于動(dòng)態(tài)域名的產(chǎn)生,會(huì)導(dǎo)致極高的誤報(bào)率.Han等人[8]提出了驗(yàn)證“合法”登錄性來(lái)生成白名單的方法,其原理是通過(guò)樸素貝葉斯分類器驗(yàn)證一個(gè)網(wǎng)站登錄過(guò)程是否“合法”,來(lái)判斷該網(wǎng)站是否屬于正常的.
目前,構(gòu)建白名單的思想大多數(shù)是依靠檢測(cè)系統(tǒng)來(lái)識(shí)別惡意流量攻擊,并將通過(guò)檢測(cè)的訪問(wèn)者放入白名單中,避免重復(fù)檢測(cè).檢測(cè)系統(tǒng)的可靠性直接決定了白名單的可靠性.然而,一旦發(fā)生0-day攻擊,白名單就有可能被污染.
構(gòu)建一個(gè)可靠的白名單其本質(zhì)是一個(gè)關(guān)于網(wǎng)絡(luò)行為的二分類問(wèn)題,但是,構(gòu)建白名單問(wèn)題不同于常規(guī)的網(wǎng)絡(luò)行為的二分類問(wèn)題.它的重點(diǎn)在于確保生成的白名單中不存在惡意樣本.目前,針對(duì)二分類問(wèn)題常見(jiàn)的方法有2種:1)基于原始特征的分類方法;2)基于統(tǒng)計(jì)特征的分類方法.
基于原始特征的分類方法,主要是通過(guò)匹配攻擊行為中本身存在的特殊符號(hào)或者特殊的行為來(lái)檢測(cè)惡意攻擊,例如,通過(guò)對(duì)網(wǎng)絡(luò)攻擊數(shù)據(jù)包中的某些特殊的屬性標(biāo)簽或者負(fù)載的檢測(cè)來(lái)發(fā)現(xiàn)網(wǎng)絡(luò)攻擊[9-11].文獻(xiàn)[12]提出了一種基于DDoS(distributed denial of service)攻擊的隨機(jī)性的特點(diǎn)來(lái)對(duì)DDoS攻擊和正常訪問(wèn)進(jìn)行分類.其遵循的原理是當(dāng)1個(gè)用戶訪問(wèn)1個(gè)頁(yè)面后,它訪問(wèn)的下一個(gè)頁(yè)面應(yīng)當(dāng)有極大可能與它訪問(wèn)的當(dāng)前頁(yè)面存在一定的關(guān)聯(lián),而DDoS攻擊的訪問(wèn)具有隨機(jī)性.基于原始特征的檢測(cè)方法,在面對(duì)已知攻擊時(shí),它的效果是顯著的.但是,已經(jīng)發(fā)現(xiàn)的基于原始特征容易被修改,一旦對(duì)應(yīng)的檢測(cè)特征被修改,基于原始特征的檢測(cè)方法立即失效.
基于統(tǒng)計(jì)特征的分類方法,主要是通過(guò)基于專家經(jīng)驗(yàn)設(shè)計(jì)的統(tǒng)計(jì)特征,來(lái)區(qū)分正常和惡意網(wǎng)絡(luò)流量[13].統(tǒng)計(jì)特征本身具有一定的隱蔽性,因此它不容易被發(fā)現(xiàn)和修改.
然而,以上2種分類方法對(duì)于構(gòu)建白名單來(lái)說(shuō)是不可靠的.這2種分類方法無(wú)法保證零誤報(bào)率.
機(jī)器學(xué)習(xí)在網(wǎng)絡(luò)流量識(shí)別領(lǐng)域已經(jīng)有了很深的應(yīng)用與研究,隨著各類的機(jī)器學(xué)習(xí)算法的出現(xiàn),它已經(jīng)成為目前解決網(wǎng)絡(luò)流量分類問(wèn)題的主要方法.然而,大多數(shù)時(shí)候,僅僅依靠機(jī)器學(xué)習(xí)算法本身進(jìn)行網(wǎng)絡(luò)流量分類與識(shí)別是困難的.龐大的特征維度會(huì)導(dǎo)致訓(xùn)練困難、識(shí)別率較低等結(jié)果.如何找到合適的特征維度,充分利用機(jī)器學(xué)習(xí)的優(yōu)點(diǎn)是當(dāng)下要解決的一個(gè)難題.
針對(duì)以上問(wèn)題,本文提出了一種基于特征分析的訪問(wèn)控制混合模型.該方法由2步構(gòu)成:1)基于IP的特征提取;2)利用提取的特征作為輸入進(jìn)行訪問(wèn)控制模型的建模和訪問(wèn)控制列表的生成.本文研究工作的貢獻(xiàn)在于提出了一種基于特征分析的訪問(wèn)控制混合模型.
本文主要關(guān)注如何利用網(wǎng)絡(luò)通信流量得到良性IP(來(lái)自該IP的流量中不存在惡意流量).由于網(wǎng)絡(luò)通信流量的復(fù)雜性以及加密流量的產(chǎn)生,目前很難通過(guò)內(nèi)容檢測(cè)來(lái)判斷1條網(wǎng)絡(luò)流量是否包含惡意行為,因此,無(wú)法判斷1個(gè)IP是否為良性IP.當(dāng)前研究領(lǐng)域的關(guān)注點(diǎn)更多地聚焦于網(wǎng)絡(luò)通信中的TCP流的統(tǒng)計(jì)性特征.通過(guò)分析惡意網(wǎng)絡(luò)行為和正常網(wǎng)絡(luò)行為的TCP流統(tǒng)計(jì)性特征的差異來(lái)識(shí)別正常的網(wǎng)絡(luò)流量.
Yang等人[14]提出了一種將近似信息熵和隨機(jī)森林分類相結(jié)合的方法.采用近似信息熵的方法降低基于TCP流的統(tǒng)計(jì)特征的數(shù)據(jù)集維數(shù),再將數(shù)據(jù)集放入隨機(jī)森林模型中進(jìn)行訓(xùn)練,最后獲得識(shí)別惡意網(wǎng)絡(luò)行為的分類器.基于有監(jiān)督學(xué)習(xí)算法的分類結(jié)果效果是顯著的.然而,有監(jiān)督學(xué)習(xí)算法最大的問(wèn)題是它需要足夠多的標(biāo)簽,而且標(biāo)簽越多分類結(jié)果越好.事實(shí)上,獲取標(biāo)簽數(shù)據(jù)的代價(jià)是昂貴的.針對(duì)標(biāo)簽數(shù)據(jù)代價(jià)昂貴的問(wèn)題,Choi等人[15]提出了一種基于自編碼的無(wú)監(jiān)督學(xué)習(xí)算法.該方法利用原始無(wú)標(biāo)記數(shù)據(jù)集訓(xùn)練無(wú)監(jiān)督自動(dòng)編碼器,獲得正常網(wǎng)絡(luò)流量數(shù)據(jù)編碼后的閾值.當(dāng)1條流量數(shù)據(jù)特征根據(jù)自編碼計(jì)算后得到的結(jié)果不在閾值范圍內(nèi)時(shí),流量被判定為異常.雖然該方法在檢測(cè)惡意網(wǎng)絡(luò)流量的同時(shí)減少了對(duì)先驗(yàn)知識(shí)的需求,但是它的精確率無(wú)法得到保證.對(duì)此,Sharma等人[16]提出一種基于kmeans聚類的樸素貝葉斯分類方法,該方法通過(guò)kmeans聚類算法獲得聚類中心簇,再使用聚類中心簇進(jìn)行有監(jiān)督學(xué)習(xí)模型的訓(xùn)練.該方法在網(wǎng)絡(luò)異常流量的分類效果是顯著的,但是仍然不能完全保證零誤報(bào).
以上方法已經(jīng)證明正常的網(wǎng)絡(luò)行為和惡意的網(wǎng)絡(luò)行為的TCP流的統(tǒng)計(jì)特征是有差異的.但是根據(jù)這種差異來(lái)生成IP白名單,仍然會(huì)存在漏報(bào)和誤報(bào).
為了解決以上問(wèn)題,獲得一個(gè)可靠的IP白名單,本文提出了根據(jù)基于IP的統(tǒng)計(jì)特征來(lái)區(qū)分正常IP和惡意IP.這里基于IP的統(tǒng)計(jì)特征是指將源IP為相同IP的TCP流量看作一個(gè)整體,與這個(gè)整體有關(guān)的一系列的統(tǒng)計(jì)特征被稱為該源IP的統(tǒng)計(jì)特征.根據(jù)正常的網(wǎng)絡(luò)行為和惡意的網(wǎng)絡(luò)行為的TCP流的統(tǒng)計(jì)特征是有差異的這一特點(diǎn),本文提出了一個(gè)假設(shè):如果來(lái)自一個(gè)IP的TCP流中存在有惡意行為,那么這些惡意行為的TCP流與良性行為的TCP流的差異會(huì)使得這個(gè)惡意IP的統(tǒng)計(jì)特征與良性IP的統(tǒng)計(jì)特征產(chǎn)生差異.
綜上,本文將基于IP的統(tǒng)計(jì)特征作為分類特征空間.
本文研究了基于流的統(tǒng)計(jì)特征的分類方法[17],發(fā)現(xiàn)用來(lái)描述1條流的統(tǒng)計(jì)特征主要可以被分為3類,分別是時(shí)間特征、空間特征、速度特征.具體定義如表1所示.
本文根據(jù)現(xiàn)有的研究成果,將他們所選取的相同的特征提取出來(lái),再按照表1中的定義進(jìn)行分類,分類結(jié)果如表2~4所示.
表1 特征類定義
表2 時(shí)間類特征定義
表3 空間類特征定義
圖2 惡意IP和正常IP的TCP流時(shí)間特征相似度
表4 速度類特征定義
前人的實(shí)驗(yàn)成果[14-16]已經(jīng)說(shuō)明,直接基于流的特征分類方法,并不能生成可靠的IP白名單,因此,本文針對(duì)這3類特征,分別根據(jù)其各自的特性,設(shè)計(jì)了對(duì)應(yīng)的方法,生成了基于IP的時(shí)間類特征、空間類特征、速度類特征.下文將會(huì)對(duì)這些方法作詳細(xì)的說(shuō)明.
1.2.1 基于IP的時(shí)間特征提取
通過(guò)觀察發(fā)現(xiàn),來(lái)自同一個(gè)惡意IP不同的TCP流的時(shí)間特征值具有較為接近的特點(diǎn).因此,本文針對(duì)惡意IP和正常IP進(jìn)行了時(shí)間特征相似度的統(tǒng)計(jì),其結(jié)果如圖2所示.
針對(duì)圖2中一些變量的定義如下所示:
定義1.IP的TCP流時(shí)間特征相似度.指的是用相同的IP地址作為源IP的TCP流的時(shí)間特征之間的差值小于差值粒度乘以比較的2個(gè)時(shí)間特征中較小的數(shù)目,占用相同的IP地址作為源IP的TCP流總數(shù)目的百分比.
定義2.差值粒度.判斷2個(gè)TCP流的時(shí)間特征是否相似的一個(gè)差值標(biāo)準(zhǔn).
圖2的橫坐標(biāo)為基于TCP流的時(shí)間特征,縱坐標(biāo)為惡意IP和正常IP的TCP流時(shí)間特征相似度.從圖2可以看出,惡意IP和正常IP在TCP流時(shí)間特征相似度上是存在差異的,且當(dāng)差值粒度等于0.01時(shí),這個(gè)差異程度達(dá)到最大.根據(jù)上述的推斷與統(tǒng)計(jì),本文依據(jù)TCP流的時(shí)間特征設(shè)計(jì)了基于IP的時(shí)間特征.具體的提取過(guò)程如圖3所示:
圖3 時(shí)間相似度計(jì)算圖
提取過(guò)程中的關(guān)鍵在于判斷2條流是否相似,具體方法如圖4所示:
圖4 TCP流時(shí)間特征相似性計(jì)算圖
時(shí)間相似性定義:如圖4中得到的所有結(jié)果(1,2,3,4)都小于待測(cè)流A對(duì)應(yīng)的特征的值的1%時(shí),這2條流具有相似性.否則,2條流不具有相似性.
當(dāng)然,僅僅采用時(shí)間相似度特征是不夠的,在實(shí)際過(guò)程中,一個(gè)IP的時(shí)間相似度往往還與來(lái)自這個(gè)IP的總流量條數(shù)相關(guān),為了消除這種影響,實(shí)驗(yàn)中增加了2個(gè)新的特征,一個(gè)是IP的總流量條數(shù),另一個(gè)是IP的時(shí)間相似率.其定義如表5所示:
表5 基于IP的時(shí)間特征的定義
1.2.2 基于IP的空間特征提取
由于TCP流的空間特征值域范圍廣,很難直觀地發(fā)現(xiàn)惡意源IP的交互的數(shù)據(jù)大小和正常源IP交互數(shù)據(jù)大小的差異,因此本文通過(guò)將流的空間特征轉(zhuǎn)化為基于流的二元空間特征,縮小空間特征的閾值范圍,并通過(guò)比值的方式體現(xiàn)正常IP的交互的數(shù)據(jù)大小和惡意IP的交互的數(shù)據(jù)大小的差異,具體轉(zhuǎn)換的公式如下所示:
(1)
(2)
(3)
(4)
上述4個(gè)特征被用來(lái)描述1條網(wǎng)絡(luò)流中2個(gè)IP在負(fù)載大小分布上的差異.本文對(duì)網(wǎng)絡(luò)流的空間特征之和按照區(qū)間的方式進(jìn)行統(tǒng)計(jì),結(jié)果如表6所示:
表6網(wǎng)絡(luò)流的空間特征之和統(tǒng)計(jì)結(jié)果 %
從表6可以發(fā)現(xiàn):對(duì)于一個(gè)正常IP所發(fā)出的流量,它的空間特征之和大多數(shù)是小于2的,而惡意IP則相反.其原因在于,來(lái)自惡意IP所發(fā)出的TCP流需要達(dá)到的目的與來(lái)自正常IP所發(fā)出的TCP流的目的有所區(qū)別,而這種區(qū)別會(huì)導(dǎo)致來(lái)自惡意IP的TCP流交互信息比例遠(yuǎn)遠(yuǎn)高于正常IP.本文根據(jù)這種特點(diǎn)設(shè)計(jì)了基于IP特征的空間特征,如表7所示:
表7 基于IP的空間特征的定義
1.2.3 基于IP的空間特征提取
不同于基于流的時(shí)間特征和空間特征,速度特征來(lái)源于空間特征與時(shí)間特征的比值.它表征的是1條流的2個(gè)IP間交互信息的平均速率.為了識(shí)別惡意IP的TCP流的速度特征之間存在的聯(lián)系,本實(shí)驗(yàn)將基于流的2端速度特征的比值分段統(tǒng)計(jì)惡意IP和正常IP的TCP流的速度差異,結(jié)果如圖5所示:
圖5 速度特征統(tǒng)計(jì)分析圖
根據(jù)圖5可以清楚看出,正常IP的TCP流的往返速度特征的比值分布在12到2之間多于其他部分,而惡意IP則與之相反.根據(jù)這種特點(diǎn),本文設(shè)計(jì)了基于IP的速度特征,具體的基于IP的速度特征的定義如表8所示:
表8 基于IP的速度特征的定義
本文提出的基于IP的混合分類模型的白名單生成方法包括特征提取和白名單生成2部分構(gòu)成,如圖6所示.
在特征提取階段,先從數(shù)據(jù)采集中提取對(duì)應(yīng)的基于流的特征集合,按照IP的總流量條數(shù)排序,將IP按照排序名單依次分為5個(gè)部分,從每個(gè)部分隨機(jī)抽取5%的IP,根據(jù)專家經(jīng)驗(yàn)進(jìn)行人工標(biāo)記流量樣本.再采用IP的特征提取方法將基于流的特征集合轉(zhuǎn)化為帶有部分標(biāo)記的基于IP的特征集合.
在白名單生成模塊中,如圖7所示,主要分為2個(gè)模塊:篩選模塊和分類模塊.
圖6 系統(tǒng)的基本結(jié)構(gòu)
圖7 白名單生成模型
篩選模塊:通過(guò)聚類算法與部分的已知標(biāo)簽,去除與惡意IP樣本具有相似特征的樣本,提高分類模塊中最后得到的分類器的精確度.算法1演示了它的過(guò)程:
算法1.篩選模塊.
輸入:init_Array[n];
輸出:result_Array[m]和malicious_Array[n].
①Cluster_set[n]←0;
②result_Array[m]←0;
③cluster_number←0;
④Cluster_set[h]←0;
⑤malicious_Array[n]←0;
⑥init_cluster←init_Array[n];
⑦classi(i=1,2)←Cluster_algorithm
(init_cluster,K=2);
⑧ forlen(classi)>2 do
⑨ ifBenign_rate_Fuc(classi)<12·
cluster_numberthen
⑩Cluster_algorithm(classi,K=2);
then
inmalicious_Array[n];
Array[n].
篩選模塊的輸入是基于IP特征的部分帶標(biāo)簽的數(shù)據(jù)集,它的輸出是帶有惡意標(biāo)簽的數(shù)據(jù)集和初篩選后的數(shù)據(jù)集合.它總共由2個(gè)步驟實(shí)現(xiàn):1)首先,采用聚類算法對(duì)基于IP特征的部分帶標(biāo)簽的數(shù)據(jù)集進(jìn)行聚類,并判斷聚類簇中帶標(biāo)簽的良性IP是否超過(guò)原始樣本的數(shù)目乘以12的聚類次數(shù)的次方.如果超過(guò),那么進(jìn)行步驟2),否則將聚類簇再次進(jìn)行聚類.2)將通過(guò)步驟1)篩選得到的數(shù)據(jù)集進(jìn)行判斷,如果該數(shù)據(jù)集中存在帶標(biāo)簽的惡意樣本,那么將該數(shù)據(jù)集中惡意樣本剔出,形成數(shù)據(jù)集malicious_Aarry[n],否則,將該數(shù)據(jù)集中的樣本放入數(shù)據(jù)集result_Array[m].
分類模塊:將從篩選模塊得到的樣本中帶標(biāo)簽的樣本作為訓(xùn)練集,剩余未知的樣本作為測(cè)試集合簇進(jìn)行白名單的生成.本實(shí)驗(yàn)中將比較不同的聚類算法和分類模型的組合表現(xiàn)效果.下面的算法2演示了它的過(guò)程:
算法2.分類模塊.
輸入:result_Array[m]和malicious_Array[n];
輸出:IP_White_List.
①No_Label_Dataset[x]←0;
②With_Label_Dataset[y]←0;
③No_Label_Dataset[x],
With_Label_Dataset[y]←
Separate_Fuc(result_Array[m],
malicious_Array[n]);
④IdentificationFramework←
TrainClassifier(Algorithm,
With_Label_Dataset[y]);
⑤IP_White_List←
IdentificationFramewok
(No_Label_Dataset[x]);
⑥ returnIP_White_List:Cluster_set[n]
←0.
分類模塊的輸入是篩選模塊的輸出結(jié)果,它的輸出是IP白名單.它總共由3個(gè)步驟實(shí)現(xiàn):1)將有標(biāo)簽的樣本和無(wú)標(biāo)簽的樣本進(jìn)行分類,形成2個(gè)數(shù)據(jù)集;2)將有標(biāo)簽的數(shù)據(jù)集作為訓(xùn)練樣本,通過(guò)有監(jiān)督學(xué)習(xí)算法訓(xùn)練,得到分類器;3)將無(wú)標(biāo)簽的數(shù)據(jù)集中的樣本放入分類器中,得到本文所需的IP白名單.
為了評(píng)估白名單生成方法的可靠性,需要在多種不同的網(wǎng)絡(luò)環(huán)境下進(jìn)行實(shí)驗(yàn).在實(shí)驗(yàn)中,結(jié)合了3個(gè)不同的公開(kāi)數(shù)據(jù)集來(lái)評(píng)估本文提出的方法,分別是UNSW-NB15數(shù)據(jù)集、CICIDS2017數(shù)據(jù)集、實(shí)驗(yàn)室環(huán)境下人工收集的數(shù)據(jù)集.本節(jié)給出了每個(gè)數(shù)據(jù)集的簡(jiǎn)要描述.
3.1.1 UNSW-NB15數(shù)據(jù)集
UNSW-NB15數(shù)據(jù)集是用于IDS測(cè)試和評(píng)估的最新的數(shù)據(jù)集[18],它由澳大利亞網(wǎng)絡(luò)安全中心(ACCS)的一個(gè)研究小組創(chuàng)建.它包含真實(shí)的現(xiàn)代正常網(wǎng)絡(luò)連接和ACCS網(wǎng)絡(luò)范圍實(shí)驗(yàn)室使用IXIA PerfectStorm工具生成的綜合攻擊流量.
3.1.2 CICIDS2017數(shù)據(jù)集
CICIDS2017[19]數(shù)據(jù)集是最近由ISCX收集,包含正常流量和最新的常見(jiàn)攻擊.這個(gè)新的入侵檢測(cè)數(shù)據(jù)集包含良性流量和14種不同的攻擊行為的流量.
3.1.3 實(shí)驗(yàn)室環(huán)境下人工收集的數(shù)據(jù)集
該數(shù)據(jù)由作者所在實(shí)驗(yàn)室在一個(gè)可控的正常網(wǎng)絡(luò)環(huán)境下收集,整個(gè)網(wǎng)絡(luò)環(huán)境下有15臺(tái)電腦,帶寬為100 Mbps.收集完成后,通過(guò)AlientVault提供的開(kāi)放式威脅情報(bào)交換平臺(tái)和微步在線威脅情報(bào)社區(qū)平臺(tái)驗(yàn)證收集的網(wǎng)絡(luò)流量中公有IP是否為良性IP,并給數(shù)據(jù)集打上標(biāo)簽.
以上所有數(shù)據(jù)集均以PCAP格式存儲(chǔ).首先從這些PCAP中提取TCP流,再?gòu)倪@些TCP流中提取基于TCP流的特征,然后從這些TCP流的特征中提取屬于IP的向量特征.將一個(gè)IP的特征向量作為一個(gè)樣本.結(jié)合了3個(gè)數(shù)據(jù)集的實(shí)驗(yàn)數(shù)據(jù)中良性和惡意IP分布情況如表9所示:
表9 良性IP和惡意IP分布情況
由于實(shí)驗(yàn)數(shù)據(jù)的良性IP和惡意IP的數(shù)目并不平衡,在二分類的任務(wù)中準(zhǔn)確率的參考價(jià)值有限.同時(shí),針對(duì)白名單生成方法設(shè)計(jì)的實(shí)驗(yàn)的關(guān)注點(diǎn)在于得到的IP白名單里的IP是否都是良性IP.因此,采用了召回率(Recall)、精確率(Precision)、良性IP占有率來(lái)評(píng)估實(shí)驗(yàn)結(jié)果.其中精確率為100%,對(duì)白名單生成方法是可行的一個(gè)重要標(biāo)準(zhǔn).
(5)
(6)
良性IP流量占有率=
(7)
其中,TP表示將良性IP正確識(shí)別為良性IP,F(xiàn)P表示將惡意IP識(shí)別為良性IP.召回率反映了白名單生成方法識(shí)別良性IP的識(shí)別效果,精確率反映了白名單生成方法生成的白名單的可靠性.良性IP流量占有率表示來(lái)自獲得的良性IP的TCP流的數(shù)量占來(lái)自數(shù)據(jù)集中的良性IP的TCP流的數(shù)量的比例,它反映了獲得的良性IP具有代表性.
3.3.1 IP白名單生成模型選擇
實(shí)驗(yàn)在3個(gè)數(shù)據(jù)集的合集上進(jìn)行驗(yàn)證,以驗(yàn)證所提出方法的適應(yīng)性.實(shí)驗(yàn)總共進(jìn)行20次,每次抽取已知的樣本信息時(shí),都將之前抽取的樣本排除,實(shí)驗(yàn)結(jié)果為20次的平均值(向下取整),如表10所示:
表10 聚類模型和分類模型組合比較結(jié)果
3.3.2 與其他分類方式的比較
通過(guò)與Sharma等人[16]提出的基于kmeans的樸素貝葉斯分類模型進(jìn)行實(shí)驗(yàn)比較.分別從分類的特征空間和分類方法的性能進(jìn)行對(duì)比分析.
Sharma等人[16]提出的基于kmeans的樸素貝葉斯分類方法,針對(duì)網(wǎng)絡(luò)中的異常行為通信,通過(guò)kmeans聚類算法獲取正常行為和異常行為的聚類中心,并將聚類中心用于樸素貝葉斯分類模型訓(xùn)練,最后形成分類器.在本實(shí)驗(yàn)中,為了進(jìn)行實(shí)驗(yàn)對(duì)比,將統(tǒng)一采用本文中3.1節(jié)中使用的實(shí)驗(yàn)數(shù)據(jù)集合.本文設(shè)計(jì)對(duì)照實(shí)驗(yàn)是按照文獻(xiàn)[16]中所提到的基于TCP流的特征,采用基于kmeans的樸素貝葉斯分類模型.白名單生成規(guī)則如下:如果1條TCP流被判斷為是惡意的網(wǎng)絡(luò)行為,那么就認(rèn)為該條網(wǎng)絡(luò)數(shù)據(jù)流的源IP為可疑IP,其余的IP為正常IP.實(shí)驗(yàn)采用的評(píng)價(jià)指標(biāo)為:良性IP流量占有率、召回率、精確率.結(jié)果如表11所示.
針對(duì)同樣的數(shù)據(jù)集,對(duì)比Sharma等人[16]提出的分類方法,本文提出基于IP的時(shí)間特征、空間特征、速度特征,采用GMM聚類算法和決策樹(shù)相結(jié)合的方式形成白名單生成器.實(shí)驗(yàn)結(jié)果顯示,本文提出的基于IP特征的混合分類模型的白名單IP生成方法的良性IP占有率提高了15.45%,召回率提高了13.29%,精確率提高了0.06%,表現(xiàn)出了更好的生成IP白名單的性能.
表11 分類方法比較結(jié)果
本文通過(guò)對(duì)目前白名單的現(xiàn)狀進(jìn)行研究總結(jié),針對(duì)生成白名單的問(wèn)題,提出基于IP特征的混合分類模型的白名單生成方法.該方法充分利用已有的基于流的特征,根據(jù)流的統(tǒng)計(jì)特征,設(shè)計(jì)了基于IP的時(shí)間特征、空間特征、速度特征,并將無(wú)監(jiān)督聚類和有監(jiān)督學(xué)習(xí)分類模型的優(yōu)點(diǎn)相互結(jié)合,形成了IP白名單生成模型.如何增加更多類別的流量集合,優(yōu)化IP白名單生成方法,將該方法應(yīng)用于實(shí)際網(wǎng)絡(luò)環(huán)境的IP白名單生成將成為下一步研究的重點(diǎn).