專利名稱:基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法
技術(shù)領(lǐng)域:
本技術(shù)涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,特別是一種基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法。
背景技術(shù):
僵尸網(wǎng)絡(luò)(Botnet)是目前網(wǎng)絡(luò)安全領(lǐng)域面臨的重點問題,僵尸網(wǎng)絡(luò)采用多種傳播手段,通過感染大量主機(jī)的僵尸程序,從而在控制者和僵尸主機(jī)之間所形成的一個控制的網(wǎng)絡(luò)結(jié)構(gòu),僵尸控制者通過各種傳播方式將僵尸程序感染主機(jī),被感染的僵尸主機(jī)采用控制信道接收僵尸控制者的指令,形成一個僵尸網(wǎng)絡(luò),進(jìn)行DoS、掃描、發(fā)送垃圾郵件等。它具有蠕蟲的傳播特征、木馬似的后門特征、以及R00TKIT等病毒技術(shù)等多種惡意代碼技術(shù)的綜合。正是由于僵尸網(wǎng)絡(luò)對互聯(lián)網(wǎng)的危害嚴(yán)重,對其相關(guān)技術(shù)研究也因此發(fā)展為近年來的國內(nèi)外重要研究熱點問題。僵尸網(wǎng)絡(luò)檢測方法主要是通過各種途徑獲取可能存在僵尸網(wǎng)絡(luò)活動的相關(guān)信息,然后根據(jù)僵尸網(wǎng)絡(luò)在這些信息中表征出來的內(nèi)在特性,應(yīng)用統(tǒng)計分析、 機(jī)器學(xué)習(xí)、信息理論等多種分析技術(shù)識別并判斷出僵尸網(wǎng)絡(luò)的存在,甚至確定攻擊者、命令與控制服務(wù)器以及僵尸主機(jī)的位置。目前主要的僵尸網(wǎng)絡(luò)檢測技術(shù)主要有(1)基于蜜罐的檢測技術(shù)通過部署包含蜜罐主機(jī)捕獲互聯(lián)網(wǎng)上實際傳播的大量僵尸程序。( 基于報文深度檢測技術(shù)使用正則表達(dá)式查找受懷疑的IRC匿名名字,評估匿名名字以確定某個特定的對話是否屬于受到bot污染的主機(jī)。(3)基于攻擊行為檢測技術(shù)認(rèn)為僵尸網(wǎng)絡(luò)短時間內(nèi)發(fā)送了大量垃圾,通過檢測垃圾郵件的方法檢測僵尸網(wǎng)絡(luò)。傳統(tǒng)的僵尸檢測方法難以適應(yīng)高速主干網(wǎng)絡(luò)測量資源的限制,同時還會受到部分僵尸網(wǎng)絡(luò)會話加密和流量隱蔽性等影響。本發(fā)明采用比特向量和IP地址存儲結(jié)構(gòu)雙過濾機(jī)制,能夠?qū)崿F(xiàn)從高速主干網(wǎng)絡(luò)中實時檢測出僵尸主機(jī)。
發(fā)明內(nèi)容
本發(fā)明實施的目的提供一種基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,能夠?qū)崟r地對高速主干網(wǎng)絡(luò)流量中的僵尸主機(jī)進(jìn)行檢測,并得到僵尸網(wǎng)絡(luò)的規(guī)模范圍。本發(fā)明的技術(shù)方案是提供了一種基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于步驟一、設(shè)置一個比特向量B、一個IP地址存儲結(jié)構(gòu)、一個僵尸主機(jī)庫和一個僵尸網(wǎng)絡(luò)控制器IP庫,比特向量B是由2m個比特構(gòu)成的向量,其中m是2的上標(biāo),2-是2的m次冪,m是大于1的正整數(shù),2-個比特初始值為0,進(jìn)入步驟二 ;步驟二、在比特向量B和IP地址存儲結(jié)構(gòu)中分別記錄僵尸網(wǎng)絡(luò)控制器IP庫內(nèi)所有的僵尸網(wǎng)絡(luò)控制器IP,進(jìn)入步驟三;步驟三、當(dāng)測量器測量到一個報文,測量器從報文頭中提取所測量報文的源IP地址、宿IP地址,在比特向量B中快速近視查找所測量報文的源IP地址,如果在比特向量B中查找成功,則進(jìn)入步驟四,否則進(jìn)入步驟六;步驟四、在IP地址存儲結(jié)構(gòu)中精確查找所測量報文的源IP地址,如果在IP地址存儲結(jié)構(gòu)中成功查找到的所測量報文的源IP地址,進(jìn)入步驟五,否則進(jìn)入步驟六;步驟五、將所測量報文的宿IP地址作為僵尸主機(jī)加入到僵尸主機(jī)庫,進(jìn)入步驟六;步驟六、如果處理完所有報文后,對僵尸主機(jī)庫的僵尸主機(jī)進(jìn)行分類匯總生成僵尸網(wǎng)絡(luò)規(guī)模報告,否則回到步驟三。與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點及有效效果(1)本發(fā)明提出的雙過濾機(jī)制檢測僵尸報文能夠根據(jù)已知的僵尸網(wǎng)絡(luò)控制器IP 集合,從高速主干網(wǎng)絡(luò)中實時檢測出被管理網(wǎng)絡(luò)中被僵尸控制器所控制的僵尸主機(jī)規(guī)模;(2)本發(fā)明是采用一個比特向量對所有網(wǎng)絡(luò)流量報文進(jìn)行快速近似地第一次過濾,對于通過第一次過濾的報文然后采用IP地址存儲結(jié)構(gòu)進(jìn)行第二次精確過濾,比特向量第一次近似過濾方法只會存在誤報不會存在漏報,第二次精確過濾將誤報刪除;(3)由于直接進(jìn)行精確匹配的方法難以適應(yīng)高速網(wǎng)絡(luò)流量需求,本發(fā)明所提出的雙過濾機(jī)制方法能夠應(yīng)用在大規(guī)模高速主干網(wǎng)絡(luò)的環(huán)境中進(jìn)行僵尸檢測過濾。
為了更清楚地說明本發(fā)明實施實例的技術(shù)方案,下面將對實施實例或現(xiàn)有技術(shù)描述中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施實例。圖1 基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法流程圖。圖2 基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法過程示意圖。圖3 比特向量B的初始狀態(tài)示意圖,其中比特向量B由23 = 8個比特構(gòu)成的向量,8個比特初始值為0。圖4:比特向量B的一個結(jié)果狀態(tài)示意圖,其中設(shè)已知僵尸網(wǎng)絡(luò)控制器IP庫中的 IP地址為IPp IP2和IP3,設(shè)置一個哈希函數(shù)H1,該函數(shù)的輸入是IP地址,輸出是一個3個比特的比特串,設(shè) Hl (IP1) = 3、Hl (IP2) = 7、Hl (IP3) = 2。圖5 IP地址存儲結(jié)構(gòu)初始狀態(tài)示意圖,其中IP地址存儲結(jié)構(gòu)是由22 = 4個32比特正整數(shù)構(gòu)成的向量,初始的時候這4個正整數(shù)均設(shè)置為0。圖6 IP地址存儲結(jié)構(gòu)一個結(jié)果狀態(tài)示意圖,設(shè)置一個哈希函數(shù)H2的輸入是一個 IP地址,輸出是有一個2比特的比特串,設(shè)IE(IP1) = U H2 (IP2) = 3, H2 (IP3) = 1。
具體實施例方式下面將結(jié)合本發(fā)明實施實例中的附圖,對本發(fā)明實施實例中的技術(shù)方案進(jìn)行清楚、完整地描述,當(dāng)然所描述的實施實例僅僅是本發(fā)明一部分實施實例,而不是全部的實施實例。實施實例1本發(fā)明實施例提供了一種基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,圖1 為本發(fā)明基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法流程示意圖,如圖1所示,該方法包括如下步驟步驟一、設(shè)置一個比特向量B、一個IP地址存儲結(jié)構(gòu)、一個僵尸主機(jī)庫和一個僵尸網(wǎng)絡(luò)控制器IP庫,比特向量B是由2m個比特構(gòu)成的向量,其中m是2的上標(biāo),2-是2的m次冪,m是大于1的正整數(shù),2-個比特初始值為0,IP地址存儲結(jié)構(gòu)是由2"個32比特正整數(shù)構(gòu)成的向量,其中η是2的上標(biāo),2η是2的η次冪,2η大于所要檢測僵尸網(wǎng)絡(luò)控制器IP數(shù)量, 初始的時候這2η個正整數(shù)均設(shè)置為0,進(jìn)入步驟二 ;步驟二、在比特向量B和IP地址存儲結(jié)構(gòu)中分別記錄僵尸網(wǎng)絡(luò)控制器IP庫內(nèi)所有的僵尸網(wǎng)絡(luò)控制器ΙΡ,所述的比特向量B記錄僵尸網(wǎng)絡(luò)控制器IP庫內(nèi)所有的僵尸網(wǎng)絡(luò)控制器IP的步驟包括設(shè)置一個哈希函數(shù)Η1,哈希函數(shù)Hl的輸入是IP地址,輸出是有一個 m個比特的比特串的步驟,將每個僵尸網(wǎng)絡(luò)控制器IP地址作為哈希函數(shù)Hl的輸入,并由哈希函數(shù)Hl輸出一個正整數(shù),并以在這個正整數(shù)為比特向量B的指針,同時將指針指向的比特向量B的比特值設(shè)置為1的步驟,IP地址存儲結(jié)構(gòu)記錄僵尸網(wǎng)絡(luò)控制器IP庫內(nèi)所有的僵尸網(wǎng)絡(luò)控制器IP包括設(shè)置一個哈希函數(shù)H2的輸入是一個IP地址,輸出是由一個η比特構(gòu)成的比特串,將每個僵尸網(wǎng)絡(luò)控制器IP作為哈希函數(shù)Η2的輸入生成一個正整數(shù),并以在這個正整數(shù)為IP地址存儲結(jié)構(gòu)的指針,查找指針對應(yīng)的IP地址存儲結(jié)構(gòu)中的值,如果所對應(yīng)值為0,則將該僵尸網(wǎng)絡(luò)控制器IP地址記錄在指針指向的IP地址存儲結(jié)構(gòu)中的相應(yīng)位置上;如果所對應(yīng)值不為0, 則從IP地址存儲結(jié)構(gòu)中查找下一個值,直到找到一個為0的值,并在與這個0值所對應(yīng)的 IP地址存儲結(jié)構(gòu)的位置上記錄所述僵尸網(wǎng)絡(luò)控制器IP地址。步驟三、當(dāng)測量器測量到一個報文,測量器從報文頭中提取所測量報文的源IP地址、宿IP地址,在比特向量B中快速近視查找所測量報文的源IP地址,將所測量報文的源 IP地址作為哈希函數(shù)Hl的輸入,查找比特向量B中哈希函數(shù)Hl輸出值所對應(yīng)位置的比特值,如果其比特值為1,返回查找成功,如果在比特向量B中查找成功,則進(jìn)入步驟四,否則進(jìn)入步驟六;步驟四、在IP地址存儲結(jié)構(gòu)中精確查找所測量報文的源IP地址,對于在IP地址存儲結(jié)構(gòu)中精確查找所測量報文的源IP地址包括首先將所測量報文的源IP地址作為哈希函數(shù)Η2的輸入,查找IP地址存儲結(jié)構(gòu)中輸出值對應(yīng)位置的正整數(shù),從IP地址存儲結(jié)構(gòu)中查找下一個正整數(shù)方法如果查找到IP地址存儲結(jié)構(gòu)中的最后一個正整數(shù)后還需要查找下一個正整數(shù),則從IP地址存儲結(jié)構(gòu)中的第一個正整數(shù)開始查找,如果所對應(yīng)正整數(shù)等于所測量報文的源IP地址,則返回成功查找,否則如果所對應(yīng)正整數(shù)不等于所測量報文的源IP地址,且所對應(yīng)位置的正整數(shù)值為0,則返回失敗查找,否則進(jìn)入查找IP地址存儲結(jié)構(gòu)中下一個正整數(shù)繼續(xù)查找,如果在IP地址存儲結(jié)構(gòu)中成功查找到的所測量報文的源IP地址,進(jìn)入步驟五,否則進(jìn)入步驟六;步驟五、將所測量報文的宿IP地址作為僵尸主機(jī)加入到僵尸主機(jī)庫,將所測量報文的源IP地址和宿IP地址作為一條記錄寫在僵尸主機(jī)庫中,其中所測量報文的源IP地址為僵尸控制器IP地址,所測量報文的宿IP地址為受僵尸控制器IP地址所控制的僵尸主機(jī),進(jìn)入步驟六;步驟六、如果處理完所有報文后,對僵尸主機(jī)庫的僵尸主機(jī)進(jìn)行分類匯總生成僵尸網(wǎng)絡(luò)規(guī)模報告,將僵尸主機(jī)庫中所有記錄按照源IP地址進(jìn)行聚類,統(tǒng)計每個源IP地址所對應(yīng)不同宿IP地址的數(shù)量作為以源IP地址為僵尸網(wǎng)絡(luò)控制器所控制的僵尸網(wǎng)絡(luò)的規(guī)模, 否則回到步驟三。實施實例2步驟一(1)設(shè)置一個比特向量B、一個IP地址存儲結(jié)構(gòu)和給定一個僵尸網(wǎng)絡(luò)控制器IP集合,設(shè)已知僵尸網(wǎng)絡(luò)控制器IP集合中的IP地址為IPi、IP2和IP3,其中比特向量B 由23 = 8個比特構(gòu)成的向量,8個比特初始值為0 ;IP地址存儲結(jié)構(gòu)是由22 = 4個32比特正整數(shù)構(gòu)成的向量,初始的時候這4個正整數(shù)均設(shè)置為0,進(jìn)入步驟二 O);步驟二 O)在比特向量B和IP地址存儲結(jié)構(gòu)中分別記錄僵尸網(wǎng)絡(luò)控制器IP集合,其中比特向量B記錄僵尸網(wǎng)絡(luò)控制器IP集合的步驟包括(1)設(shè)置一個哈希函數(shù)H1,該函數(shù)的輸入是IP地址,輸出是一個3個比特的比特串,設(shè) Hl (IP1) = 3, Hl (IP2) = 7, Hl (IP3) = 2 ;(2)將僵尸網(wǎng)絡(luò)控制器IP地址IP1作為哈希函數(shù)Hl的輸入,對應(yīng)一個輸出值 Hl(IP1) =3,將比特向量B中輸出值對應(yīng)位置第3個比特的比特值設(shè)置為1 ;將僵尸網(wǎng)絡(luò)控制器IP地址IP2作為哈希函數(shù)Hl的輸入,對應(yīng)一個輸出值Hl (IP2) = 7,將比特向量B中輸出值對應(yīng)位置第7個比特的比特值設(shè)置為1 ;將僵尸網(wǎng)絡(luò)控制器IP地址IP3作為哈希函數(shù)Hl的輸入,對應(yīng)一個輸出值Hl (IP3) = 2,將比特向量B中輸出值對應(yīng)位置第2個比特的比特值設(shè)置為1 ;IP地址存儲結(jié)構(gòu)記錄僵尸網(wǎng)絡(luò)控制器IP集合的步驟包括(1)設(shè)置一個哈希函數(shù)H2的輸入是一個IP地址,輸出是有一個2比特的比特串, 設(shè)!E(IP1) = 1、H2 (IP2) = 3、H2 (IP3) = 1 ;(2)將僵尸網(wǎng)絡(luò)控制器IP地址IP1作為哈希函數(shù)H2的輸入生成一個輸出值 H2 (IP1) = 1,查找輸出值對應(yīng)位置1的IP地址存儲結(jié)構(gòu)中的正整數(shù);(3) IP地址存儲結(jié)構(gòu)中位置1所對應(yīng)正整數(shù)為0,將該僵尸網(wǎng)絡(luò)控制器IP地址IP1 記錄在位置1所對應(yīng)正整數(shù)中;(4)將僵尸網(wǎng)絡(luò)控制器IP地址IP2作為哈希函數(shù)H2的輸入生成一個輸出值 H2 (IP2) = 3,查找輸出值對應(yīng)位置3的IP地址存儲結(jié)構(gòu)中的正整數(shù);(5) IP地址存儲結(jié)構(gòu)中位置3所對應(yīng)正整數(shù)為0,將該僵尸網(wǎng)絡(luò)控制器IP地址IP2 記錄在位置1所對應(yīng)正整數(shù)中;(6)將僵尸網(wǎng)絡(luò)控制器IP地址IP3作為哈希函數(shù)H2的輸入生成一個輸出值 H2 (IP3) = 1,查找輸出值對應(yīng)位置1的IP地址存儲結(jié)構(gòu)中的正整數(shù);(7)對應(yīng)位置1正整數(shù)不為0,則從IP地址存儲結(jié)構(gòu)中查找下一個位置2的正整數(shù),位置2的正整數(shù)為0,將該僵尸網(wǎng)絡(luò)控制器IP地址IP3記錄在該正整數(shù)中;進(jìn)入步驟三(3)步驟三(3)設(shè)一共測量到4個報文,第一個報文的源IP地址為SIP1和宿IP地址為DIP1,第二個報文的源IP地址為SIP2和宿IP地址為DIP2,第三個報文的源IP地址為 SIP3和宿IP地址為DIP3,第4個報文的源IP地址為SIP4和宿IP地址為DIP4,其中SIP1 = IP1^SIP3 = IP3 ;Hl (SIP1) = Hl (IP1) = 3,Hl (SIP2) = 5,Hl (SIP3) = Hl (IP3) = 2,Hl (SIP4) =7 ;H2 (SIP1) = H2 (IP1) = 1、H2 (SIP2) = 2、H2 (SIP3) = H2 (IP3) = 1、H2 (SIP4) = 0 ;對于第一個被測量到的報文,在比特向量B中匹配其源IP地址SIP1,具體方法是將網(wǎng)絡(luò)報文的源IP地址SIP1作為哈希函數(shù)Hl的輸入,查找比特向量B中哈希函數(shù)Hl輸
出值Hl (SIP1) =Hl(IP1) =3所對應(yīng)位置的比特值,其比特值為1,返回成功,進(jìn)入步驟四 ⑷;步驟四⑷對于在比特向量B中成功匹配的報文源IP地址SIP1,在IP地址存儲結(jié)構(gòu)中查找報文源IP地址SIP1,對于在IP地址存儲結(jié)構(gòu)中查找IP地址的具體方法是首先將報文的源IP地址SIP1作為哈希函數(shù)H2的輸入,查找IP地址存儲結(jié)構(gòu)中輸出值對應(yīng)位置H2 (SIP1) =H2 (IP1) = 1的正整數(shù),所對應(yīng)正整數(shù)為IP1等于報文源IP地址SIP1,則返回成功查找,進(jìn)入步驟五(5);步驟五(5)對于在IP地址存儲結(jié)構(gòu)中成功查找到的報文源IP地址,將該報文的宿IP地址作為僵尸主機(jī)加入到僵尸主機(jī)庫,具體方法是將報文的源IP地址和宿IP地址作為一條記錄寫在僵尸主機(jī)庫中,其中報文的源IP地址為僵尸控制器IP地址,報文的宿IP 地址為受僵尸控制器IP地址所控制的僵尸主機(jī),進(jìn)入步驟六(6);步驟六(6)處理下一個被測量報文,回到步驟三(7);步驟三(7)對于第二個被測量到的報文,在比特向量B中匹配其源IP地址SIP2, 具體方法是將網(wǎng)絡(luò)報文的源IP地址SIP2作為哈希函數(shù)Hl的輸入,查找比特向量B中哈希函數(shù)Hl輸出值Hl (SIP2) =5所對應(yīng)位置的比特值,其比特值為0,返回失敗匹配,進(jìn)入步驟六⑶;步驟六(8)處理下一個被測量報文,回到步驟三(9);步驟三(9)對于第三個被測量到的報文,在比特向量B中匹配其源IP地址SIP3, 具體方法是將網(wǎng)絡(luò)報文的源IP地址SIP3作為哈希函數(shù)Hl的輸入,查找比特向量B中哈希函數(shù)Hl輸出值Hl (SIP3) =Hl(IP3) = 2所對應(yīng)位置的比特值,其比特值為1,返回成功, 進(jìn)入步驟四(10);步驟四(10)對于在比特向量B中成功匹配的報文源IP地址SIP3,在IP地址存儲結(jié)構(gòu)中查找報文源IP地址SIP3,對于在IP地址存儲結(jié)構(gòu)中查找IP地址的具體方法是首先將報文的源IP地址SIP3作為哈希函數(shù)H2的輸入,查找IP地址存儲結(jié)構(gòu)中輸出值對應(yīng)位置H2 (SIP3) = H2 (IP3) = 1的正整數(shù),所對應(yīng)正整數(shù)為IP1不等于報文源IP地址SIP3,查找 IP地址存儲結(jié)構(gòu)中第二個位置正整數(shù),找IP地址存儲結(jié)構(gòu)中輸出值對應(yīng)位置H2 (SIP3)= H2 (IP3) = 1的正整數(shù),所對應(yīng)正整數(shù)為IP3不等于報文源IP地址SIP3,進(jìn)入步驟五(11);步驟五(11)對于在IP地址存儲結(jié)構(gòu)中成功查找到的報文源IP地址SIP3,將該報文的宿IP地址作為僵尸主機(jī)加入到僵尸主機(jī)庫,具體方法是將報文的源IP地址和宿IP 地址作為一條記錄寫在僵尸主機(jī)庫中,其中報文的源IP地址為僵尸控制器IP地址,報文的宿IP地址為受僵尸控制器IP地址所控制的僵尸主機(jī),進(jìn)入步驟六(12);步驟六(1 處理下一個被測量報文,回到步驟三(13);步驟三(1 當(dāng)?shù)谒膫€報文到達(dá)測量器,測量器從報文頭中提取其源IP地址、宿 IP地址,在比特向量B中匹配其源IP地址,具體方法是將網(wǎng)絡(luò)報文的源IP地址SIP4作為哈希函數(shù)Hl的輸入,查找比特向量B中哈希函數(shù)Hl輸出值Hl (SIP4) = 7所對應(yīng)位置的比特值,其比特值為1,返回成功匹配,則進(jìn)入步驟四(14);步驟四(14)對于在比特向量B中成功匹配的報文源IP地址SIP4,在IP地址存儲結(jié)構(gòu)中查找報文源IP地址SIP4,對于在IP地址存儲結(jié)構(gòu)中查找IP地址的具體方法是首先將報文的源IP地址SIP4作為哈希函數(shù)H2的輸入,查找IP地址存儲結(jié)構(gòu)中輸出值對應(yīng)位置H2 (SIP4) = 0的正整數(shù),所對應(yīng)位置的正整數(shù)值為0,則返回失敗查找,進(jìn)入步驟六 (15);步驟六(15)處理完所有的被測量報文后,對僵尸主機(jī)庫的僵尸主機(jī)進(jìn)行分類匯總生成僵尸網(wǎng)絡(luò)規(guī)模報告,具體方法是將僵尸主機(jī)庫中所有記錄按照源IP地址進(jìn)行聚類,統(tǒng)計每個源IP地址相同而不同宿IP地址的數(shù)量作為源IP地址僵尸網(wǎng)絡(luò)控制器所控制的僵尸網(wǎng)絡(luò)的規(guī)模,輸出結(jié)果為僵尸控制器IP地址IP1,控制僵尸主機(jī)1個;僵尸控制器IP地址IP2,控制僵尸主機(jī)0個;僵尸控制器IP地址IP3,控制僵尸主機(jī)1個;方法結(jié)束。
權(quán)利要求
1.一種基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于步驟一、設(shè)置一個比特向量B、一個IP地址存儲結(jié)構(gòu)、一個僵尸主機(jī)庫和一個僵尸網(wǎng)絡(luò)控制器IP庫,比特向量B是由2m個比特構(gòu)成的向量,其中m是2的上標(biāo),2m是2的m次冪, m是大于1的正整數(shù),2-個比特初始值為0,進(jìn)入步驟二 ;步驟二、在比特向量B和IP地址存儲結(jié)構(gòu)中分別記錄僵尸網(wǎng)絡(luò)控制器IP庫內(nèi)所有的僵尸網(wǎng)絡(luò)控制器IP,進(jìn)入步驟三;步驟三、當(dāng)測量器測量到一個報文,測量器從報文頭中提取所測量報文的源IP地址、 宿IP地址,在比特向量B中快速近視查找所測量報文的源IP地址,如果在比特向量B中查找成功,則進(jìn)入步驟四,否則進(jìn)入步驟六;步驟四、在IP地址存儲結(jié)構(gòu)中精確查找所測量報文的源IP地址,如果在IP地址存儲結(jié)構(gòu)中成功查找到的所測量報文的源IP地址,進(jìn)入步驟五,否則進(jìn)入步驟六;步驟五、將所測量報文的宿IP地址作為僵尸主機(jī)加入到僵尸主機(jī)庫,進(jìn)入步驟六;步驟六、如果處理完所有報文后,對僵尸主機(jī)庫的僵尸主機(jī)進(jìn)行分類匯總生成僵尸網(wǎng)絡(luò)規(guī)模報告,否則回到步驟三。
2.根據(jù)權(quán)利要求1所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,所述的比特向量B記錄僵尸網(wǎng)絡(luò)控制器IP庫內(nèi)所有的僵尸網(wǎng)絡(luò)控制器IP的步驟包括設(shè)置一個哈希函數(shù)H1,哈希函數(shù)Hl的輸入是IP地址,輸出是有一個m個比特的比特串的步驟;將每個僵尸網(wǎng)絡(luò)控制器IP地址作為哈希函數(shù)Hl的輸入,并由哈希函數(shù)Hl輸出一個正整數(shù),并以在這個正整數(shù)為比特向量B的指針,同時將指針指向的比特向量B的比特值設(shè)置為1的步驟。
3.根據(jù)權(quán)利要求1所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,所述的IP地址存儲結(jié)構(gòu)是由2"個32比特正整數(shù)構(gòu)成的向量,其中η是2的上標(biāo),2"是 2的η次冪,2η大于所要檢測僵尸網(wǎng)絡(luò)控制器IP數(shù)量,初始的時候這2η個正整數(shù)均設(shè)置為 O0
4.根據(jù)權(quán)利要求1所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,所述的IP地址存儲結(jié)構(gòu)記錄僵尸網(wǎng)絡(luò)控制器IP庫內(nèi)所有的僵尸網(wǎng)絡(luò)控制器IP的步驟包括設(shè)置一個哈希函數(shù)Η2的輸入是一個IP地址,輸出是由一個η比特構(gòu)成的比特串的步驟;將每個僵尸網(wǎng)絡(luò)控制器IP作為哈希函數(shù)Η2的輸入生成一個正整數(shù),并以在這個正整數(shù)為IP地址存儲結(jié)構(gòu)的指針,查找指針對應(yīng)的IP地址存儲結(jié)構(gòu)中的值,如果所對應(yīng)值為0, 則將該僵尸網(wǎng)絡(luò)控制器IP地址記錄在指針指向的IP地址存儲結(jié)構(gòu)中的相應(yīng)位置上;如果所對應(yīng)值不為0,則從IP地址存儲結(jié)構(gòu)中查找下一個值,直到找到一個為0的值,并在與這個0值所對應(yīng)的IP地址存儲結(jié)構(gòu)的位置上記錄所述僵尸網(wǎng)絡(luò)控制器IP地址。
5.根據(jù)權(quán)利要求1所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,所述的在比特向量B中快速近視查找所測量報文的源IP地址是將所測量報文的源IP 地址作為哈希函數(shù)Hl的輸入,查找比特向量B中哈希函數(shù)Hl輸出值所對應(yīng)位置的比特值, 如果其比特值為1,返回查找成功的步驟。
6.根據(jù)權(quán)利要求1所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,對于在IP地址存儲結(jié)構(gòu)中精確查找所測量報文的源IP地址包括步驟6. 1、將所測量報文的源IP地址作為哈希函數(shù)H2的輸入,查找IP地址存儲結(jié)構(gòu)中輸出值對應(yīng)位置的正整數(shù),進(jìn)入步驟6. 2 ;步驟6. 2、如果所對應(yīng)正整數(shù)等于所測量報文的源IP地址,則返回成功查找,否則進(jìn)入步驟6. 3 ;步驟6. 3、如果所對應(yīng)正整數(shù)不等于所測量報文的源IP地址,且所對應(yīng)位置的正整數(shù)值為0,則返回失敗查找,否則進(jìn)入步驟6. 4 ;步驟6. 4、查找IP地址存儲結(jié)構(gòu)中下一個正整數(shù),回到上一步驟6. 3。
7.根據(jù)權(quán)利要求4或6所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,所述的從IP地址存儲結(jié)構(gòu)中查找下一個正整數(shù)方法如果查找到IP地址存儲結(jié)構(gòu)中的最后一個正整數(shù)后還需要查找下一個正整數(shù),則從IP地址存儲結(jié)構(gòu)中的第一個正整數(shù)開始查找。
8.根據(jù)權(quán)利要求1所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,所述的將所測量報文的宿IP地址作為僵尸主機(jī)加入到僵尸主機(jī)庫的方法是將所測量報文的源IP地址和宿IP地址作為一條記錄寫在僵尸主機(jī)庫中,其中所測量報文的源IP地址為僵尸控制器IP地址,所測量報文的宿IP地址為受僵尸控制器IP地址所控制的僵尸主機(jī)。
9.根據(jù)權(quán)利要求1所述的基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,其特征在于,所述的分類匯總僵尸網(wǎng)絡(luò)規(guī)模報告的方法為將僵尸主機(jī)庫中所有記錄按照源IP地址進(jìn)行聚類,統(tǒng)計每個源IP地址所對應(yīng)不同宿IP地址的數(shù)量作為以源IP地址為僵尸網(wǎng)絡(luò)控制器所控制的僵尸網(wǎng)絡(luò)的規(guī)模。
全文摘要
一種基于雙過濾機(jī)制的高速網(wǎng)絡(luò)僵尸報文的檢測方法,設(shè)置比特向量、IP地址存儲結(jié)構(gòu)和僵尸網(wǎng)絡(luò)控制器庫,在比特向量和IP地址存儲結(jié)構(gòu)中分別記錄僵尸網(wǎng)絡(luò)控制器IP集合,對于測量器獲取的報文,測量器提取源IP、宿IP,在比特向量中快速近似查找源IP,如果在比特向量中成功匹配的報文源IP,則在IP地址存儲結(jié)構(gòu)中精確查找報文源IP,如果在IP地址存儲結(jié)構(gòu)中成功查找到的報文源IP,將該報文的宿IP作為僵尸主機(jī)加入到僵尸主機(jī)庫,如果處理完所有的被測量報文后,對僵尸主機(jī)庫的僵尸主機(jī)進(jìn)行分類匯總生成僵尸網(wǎng)絡(luò)規(guī)模報告,本發(fā)明能夠根據(jù)僵尸網(wǎng)絡(luò)控制器庫,從高速主干網(wǎng)絡(luò)中實時檢測出被僵尸控制器所控制的僵尸主機(jī)及其規(guī)模。
文檔編號H04L12/56GK102437936SQ20111042885
公開日2012年5月2日 申請日期2011年12月20日 優(yōu)先權(quán)日2011年12月20日
發(fā)明者程光 申請人:東南大學(xué)