欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

蠕蟲特征提取方法和裝置的制作方法

文檔序號:7701276閱讀:352來源:國知局
專利名稱:蠕蟲特征提取方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明實施例涉及蠕蟲特征提取技術(shù),尤其涉及一種蠕蟲特征提取方法 和裝置。
背景技術(shù)
網(wǎng)絡(luò)上流行著大量相同或者相似的應(yīng)用軟件,蠕蟲利用這些應(yīng)用軟件的 漏洞進行自動傳播,其傳播速度和危害驚人。目前,蠕蟲檢測和防御領(lǐng)域存 在著兩大研究方向, 一個是誤用檢測,另一個是異常檢測。
誤用檢測的思想是利用已獲知的蠕蟲特征與網(wǎng)絡(luò)數(shù)據(jù)包進行比對,如果 網(wǎng)絡(luò)數(shù)據(jù)包中包含了蠕蟲特征則視為檢測到蠕蟲。所謂蠕蟲特征即蠕蟲樣本 中的一段或者幾段字節(jié)序列組成的一個特征,通常一個準確的蠕蟲特征應(yīng)該 在所有的蠕蟲副本中都出現(xiàn),而在其他蠕蟲和正常網(wǎng)絡(luò)數(shù)據(jù)包中不會出現(xiàn)。 變形蠕蟲通常會產(chǎn)生功能相同但是從字節(jié)角度看不同的樣本,每一個這樣的 蠕蟲樣本都是這個蠕蟲的 一個副本。異常檢測的思想是對正常情況下的網(wǎng)絡(luò) 狀況進行建模,檢測時如果發(fā)現(xiàn)網(wǎng)絡(luò)狀況和正常情況不符合則視為檢測到蠕 蟲。
但發(fā)明人在進行本發(fā)明的研究過程中發(fā)現(xiàn)上述方案存在準確性差的缺 陷,尤其是在高度變形的蠕蟲中提取蠕蟲特征的準確性不高。

發(fā)明內(nèi)容
本發(fā)明實施例提供一種蠕蟲特征提取方法和裝置,以提高實時提取的蠕 蟲特征的準確性。本發(fā)明實施例提供了一種蠕蟲特征提取方法,包括 獲取網(wǎng)絡(luò)數(shù)據(jù)包;
從獲取的網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列;
在預(yù)先獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各所述字節(jié)序列的誤報率,并 將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征,其中,所述誤 報率為包含所述字節(jié)序列的正常網(wǎng)絡(luò)數(shù)據(jù)包在全部正常網(wǎng)絡(luò)數(shù)據(jù)包中出現(xiàn)的 概率。
本發(fā)明實施例還提供了一種蠕蟲特征提取裝置,包括 網(wǎng)絡(luò)數(shù)據(jù)包獲取漠塊,用于獲取網(wǎng)絡(luò)數(shù)據(jù)包; 字節(jié)序列提取模塊,用于從獲取的網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列; 蠕蟲特征組裝模塊,用于在預(yù)先獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各所 述字節(jié)序列的誤報率,并將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成 蠕蟲特征,其中,所述誤報率為包含所述字節(jié)序列的正常網(wǎng)絡(luò)數(shù)據(jù)包在全部 正常網(wǎng)絡(luò)數(shù)據(jù)包中出現(xiàn)的概率。
由以上技術(shù)方案可知,本發(fā)明實施例在字節(jié)序列組裝蠕蟲特征的過程中 引入了誤報率的計算,根據(jù)誤報率來組裝蠕蟲特征,使蠕蟲特征能夠滿足誤 報率要求,從而能夠提高實時組裝蠕蟲特征的準確性。由于可以自動完成字 節(jié)序列提取、誤報率計算和蠕蟲特征組裝的操作,所以可以減少人力資源投 入,降低成本,還可以在出現(xiàn)新蠕蟲時立即提取蠕蟲特征,實時性得到有力 保證。


圖l為本發(fā)明第一實施例所提供的蠕蟲特征提取方法的流程圖; 圖2為本發(fā)明第二實施例所提供的蠕蟲特征提取方法中提取字節(jié)序列的 流程圖3為本發(fā)明第三實施例所提供的蠕蟲特征提取方法中捕捉網(wǎng)絡(luò)數(shù)據(jù)包 的流程圖4為本發(fā)明第五實施例所提供的蠕蟲特征提取方法中一種去除無用字節(jié)序列優(yōu)選實施方式的流程圖5為本發(fā)明第六實施例所提供的蠕蟲特征提取方法中組裝蠕蟲特征的 流程圖6為本發(fā)明第七實施例所提供的蠕蟲特征提取方法中組裝蠕蟲特征一 種優(yōu)選實施方式的流程圖7為本發(fā)明第八實施例所提供的蠕蟲特征提取方法的流程圖8為本發(fā)明第九實施例所提供的蠕蟲特征提取裝置的結(jié)構(gòu)示意圖9為本發(fā)明第十實施例所提供的蠕蟲特征提取裝置中字節(jié)序列提iM莫 塊的結(jié)構(gòu)示意圖10為本發(fā)明第十一實施例所提供的蠕蟲特征提取裝置中網(wǎng)絡(luò)數(shù)據(jù)包 獲取^莫塊的結(jié)構(gòu)示意圖11為本發(fā)明第十二實施例所提供的蠕蟲特征提取裝置中字節(jié)序列提 取子單元的結(jié)構(gòu)示意圖12為本發(fā)明第十三實施例所提供的蠕蟲特征提取裝置中無用字節(jié)序 列去除模塊的結(jié)構(gòu)示意圖13為本發(fā)明第十四實施例所提供的蠕蟲特征提取裝置中蠕蟲特征組 裝模塊的結(jié)構(gòu)示意圖14為本發(fā)明第十五實施例所提供的蠕蟲特征提取裝置中蠕蟲特征組 裝子單元的結(jié)構(gòu)示意圖15為本發(fā)明第十六實施例所提供的蠕蟲特征提取裝置的結(jié)構(gòu)示意圖。
具體實施例方式
下面通過具體實施例并結(jié)合附圖對本發(fā)明做進一步的詳細描述。 第一實施例
圖1為本發(fā)明第一實施例所提供的蠕蟲特征提取方法的流程圖。該方法 可以由蠕蟲特征提取裝置來實現(xiàn),蠕蟲特征提取裝置可以采用硬件或軟件,
8或軟硬件結(jié)合的方式構(gòu)成。本實施例的方法具體包括如下步驟 步驟IOO、獲取網(wǎng)絡(luò)數(shù)據(jù)包;
步驟200、從獲取的網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列(token); 步驟300、在預(yù)先獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各字節(jié)序列的誤報 率,并將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征,其中,率。
本實施例中,首先要獲取網(wǎng)絡(luò)數(shù)據(jù)包,具體可以在網(wǎng)絡(luò)數(shù)據(jù)包的進出端 口處捕捉網(wǎng)絡(luò)數(shù)據(jù)包,例如采用嗅探方式對網(wǎng)絡(luò)數(shù)據(jù)包進行捕捉,或者可以 借助現(xiàn)有工具來獲取網(wǎng)絡(luò)數(shù)據(jù)包,例如采用入侵檢測系統(tǒng)"Snort"完成網(wǎng)絡(luò) 數(shù)據(jù)包的捕捉。獲取的網(wǎng)絡(luò)數(shù)據(jù)包應(yīng)達到一定數(shù)量,實際應(yīng)用中,可以設(shè)定 應(yīng)獲取的網(wǎng)絡(luò)數(shù)據(jù)包數(shù)量值或者設(shè)定捕捉的時間,例如可以設(shè)定將5分鐘內(nèi) 的網(wǎng)絡(luò)數(shù)據(jù)包進行捕捉來提取蠕蟲特征。
在本實施例中,當(dāng)提取字節(jié)序列之后,引入了誤報率的計算和比較。本 實施例所提出的 一種優(yōu)選地誤報率計算方法是在正常網(wǎng)絡(luò)數(shù)據(jù)包中計算字節(jié) 序列的誤報率,即計算字節(jié)序列在正常網(wǎng)絡(luò)數(shù)據(jù)包中的出現(xiàn)概率,再將計算 出的誤報率與預(yù)先設(shè)定值進行比較,設(shè)定值可以為根據(jù)經(jīng)驗制定的標準誤報 率值。經(jīng)誤報率篩選后,將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列放入接
受字節(jié)序列池中用于組裝蠕蟲特征。
所謂正常網(wǎng)絡(luò)數(shù)據(jù)包,即不包含已知蠕蟲特征以及沒有受到其他網(wǎng)絡(luò)攻 擊的網(wǎng)絡(luò)數(shù)據(jù)包??梢酝ㄟ^已有的入侵檢測系統(tǒng)或誤用檢測系統(tǒng)來預(yù)先獲取 一定數(shù)量的正常網(wǎng)絡(luò)數(shù)據(jù)包。獲取正常網(wǎng)絡(luò)數(shù)據(jù)包的途徑很多,可以采用步 驟100中捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包中的正常網(wǎng)絡(luò)數(shù)據(jù)包,也可以另行采用入侵檢 測系統(tǒng)來捕捉獲取。由于入侵檢測系統(tǒng)中的數(shù)據(jù)集是通用的,里面的攻擊網(wǎng) 絡(luò)數(shù)據(jù)包也是已知的,因此可以去掉其中的攻擊網(wǎng)絡(luò)數(shù)據(jù)包,只保留正常網(wǎng) 絡(luò)數(shù)據(jù)包。
每個正常網(wǎng)絡(luò)數(shù)據(jù)包或是網(wǎng)絡(luò)數(shù)據(jù)包組裝而成的網(wǎng)絡(luò)數(shù)據(jù)流均可以看作一個比較單元,則本實施例所提出的一種優(yōu)選地誤^=艮率Fp計算方法是按照下 式進行計算
Fp = m/nxl00%
其中,n為所有比較單元的總數(shù),m為包含字節(jié)序列的比較單元的個數(shù), 如果計算一個字節(jié)序列的誤報率,則m為包含該字節(jié)序列的比較單元的個數(shù), 如果計算多個字節(jié)序列的誤報率,則m為包含所有這些字節(jié)序列的比較單元 的個數(shù)。
可以根據(jù)誤報率的計算結(jié)果選擇滿足誤報率要求的字節(jié)序列來組裝蠕蟲 特征,例如選擇誤報率較低的字節(jié)序列集合組裝蠕蟲特征,從而提高蠕蟲特 征的準確性。并且,上述技術(shù)方案可以實現(xiàn)實時地從網(wǎng)絡(luò)數(shù)據(jù)包中自動提取 蠕蟲特征,人力資源成本低、實時性高、能及時獲取未知蠕蟲的蠕蟲特征。
第二實施例
圖2為本發(fā)明第二實施例所提供的蠕蟲特征提取方法中提取字節(jié)序列的 流程圖。本實施例可以上述第一實施例為基礎(chǔ),在本實施例中,步驟200具 體包括下述步驟
步驟201、將獲取到的網(wǎng)絡(luò)數(shù)據(jù)包組裝成網(wǎng)絡(luò)數(shù)據(jù)流;
步驟202、從各網(wǎng)絡(luò)數(shù)據(jù)流中提取字節(jié)序列。
組裝網(wǎng)絡(luò)數(shù)據(jù)流,即對網(wǎng)絡(luò)數(shù)據(jù)包按照設(shè)定整形規(guī)則進行整形。蠕蟲在 傳播時往往不是發(fā)出單個網(wǎng)絡(luò)數(shù)據(jù)包,而是多個網(wǎng)絡(luò)數(shù)據(jù)包,準確的蠕蟲特 征或字節(jié)序列可能分散在多個網(wǎng)絡(luò)數(shù)據(jù)包中,因此需要將多個網(wǎng)絡(luò)數(shù)據(jù)包連 接起來作為 一個網(wǎng)絡(luò)數(shù)據(jù)流進行分析才能提高提取蠕蟲特征的準確性。
組裝網(wǎng)絡(luò)數(shù)據(jù)流的設(shè)定整形規(guī)則可以有多種形式,根據(jù)蠕蟲傳播特點, 優(yōu)選的設(shè)定整形規(guī)則之一是步驟201具體為從各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲 取源IP地址、目的IP地址和目的端口號,將源IP地址、目的IP地址和目 的端口號相同的網(wǎng)絡(luò)凝:據(jù)包組裝成一個網(wǎng)絡(luò)數(shù)據(jù)流。
按照上述設(shè)定整形規(guī)則組裝之后,在一個網(wǎng)絡(luò)數(shù)據(jù)流中包含一個蠕蟲副 本所有網(wǎng)絡(luò)數(shù)據(jù)包的可能性顯著增加,同時不同網(wǎng)絡(luò)數(shù)據(jù)流的網(wǎng)絡(luò)數(shù)據(jù)包屬
10于一個蠕蟲不同副本或者屬于不同蠕蟲的可能性也劇增。因此,將網(wǎng)絡(luò)數(shù)據(jù) 包組裝成網(wǎng)絡(luò)數(shù)據(jù)流再提取字節(jié)序列,有助于提高蠕蟲特征的準確性。 第三實施例
圖3為本發(fā)明第三實施例所提供的蠕蟲特征提取方法中捕捉網(wǎng)絡(luò)數(shù)據(jù)包 的流程圖,本實施例可以上述各實施例為基礎(chǔ),步驟100獲取網(wǎng)絡(luò)數(shù)據(jù)包的 操作可以具體為
步驟IOI、捕捉網(wǎng)絡(luò)數(shù)據(jù)包;
步驟102、對捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包進行篩選操作,保留異常網(wǎng)絡(luò)數(shù)據(jù)包。
可以是在設(shè)定周期內(nèi)捕捉網(wǎng)絡(luò)數(shù)據(jù)包,捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包通常包括了 正常網(wǎng)絡(luò)數(shù)據(jù)包和異常網(wǎng)絡(luò)數(shù)據(jù)包。正常網(wǎng)絡(luò)數(shù)據(jù)包的概念如前所述,其余 的網(wǎng)絡(luò)數(shù)據(jù)包可以看作為異常網(wǎng)絡(luò)數(shù)據(jù)包。
對網(wǎng)絡(luò)數(shù)據(jù)包進行上述篩選工作不是必須步驟,但是其優(yōu)點顯著,可以 減少網(wǎng)絡(luò)數(shù)據(jù)包的數(shù)量,減少提取字節(jié)序列的工作量,提取的字節(jié)序列中能 夠用于組裝蠕蟲特征的概率也較高,因此執(zhí)行篩選操作可以顯著提高蠕蟲特 征的提取速度,提高實時性。正常網(wǎng)絡(luò)數(shù)據(jù)包中包含蠕蟲特征的概率一般較 低,將正常網(wǎng)絡(luò)數(shù)據(jù)包篩選下去對蠕蟲特征的準確性不會有較大影響。
對捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包進行篩選操作,保留異常網(wǎng)絡(luò)數(shù)據(jù)包的操作可以 歸結(jié)為異常檢測操作,具體實現(xiàn)方式有多種,下面為一種優(yōu)選的實現(xiàn)方式
從捕捉到的各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取失敗連接次數(shù),當(dāng)識別到失敗 連接次數(shù)大于或等于設(shè)定失敗門限值時,將對應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)包作為異常網(wǎng)絡(luò) 數(shù)據(jù)包。
由于正常網(wǎng)絡(luò)通信的目標通常是明確的,因此產(chǎn)生的失敗連接很少,但 蠕蟲在傳播前通常會進行掃描,掃描過程就會產(chǎn)生大量的失敗連接,通iW 失敗連接的監(jiān)控與分析就可以得到異常網(wǎng)絡(luò)數(shù)據(jù)包。上述方法可以筒單有效 的篩選出異常網(wǎng)絡(luò)數(shù)據(jù)包,提高蠕蟲特征提取速度。
第四實施例
本發(fā)明第礎(chǔ)。從網(wǎng)絡(luò)數(shù)據(jù)包中提取的字節(jié)序列是組裝蠕蟲特征的基礎(chǔ),字節(jié)序列的提 取影響著組裝的蠕蟲特征的準確性。字節(jié)序列的提取是按照設(shè)定提取規(guī)則來 進行的,可以是設(shè)定長度的字節(jié)序列,本實施例中較佳的是提取非固定長度 的字節(jié)序列,從而提高字節(jié)序列包含蠕蟲特征的概率。
具體的,提取字節(jié)序列設(shè)定提取規(guī)則可以有多種,較佳的是提取長度大
于或等于預(yù)先設(shè)定的最小長度值MIN-LEN,且被包含次數(shù)大于或等于預(yù)先設(shè) 定的最小次數(shù)值MIN-STREAM的字節(jié)序列。
所謂被包含次數(shù)即包含有該字節(jié)序列的網(wǎng)絡(luò)數(shù)據(jù)包或網(wǎng)絡(luò)數(shù)據(jù)流的個 數(shù)。最小長度值MIN丄EN和最小次數(shù)值MIN-STREAM—般是大于1的整數(shù),可 以由專家進行設(shè)定。
下面舉例說明,可以設(shè)定MIN—LEN和MIN-STREAM均為2,采用后綴數(shù)組 改進算法提取符合上述條件的字節(jié)序列。首先字節(jié)序列的長度必須大于或等 于2,且字節(jié)序列須至少在2個網(wǎng)絡(luò)數(shù)據(jù)流中出現(xiàn)。以下述網(wǎng)絡(luò)數(shù)據(jù)流為例 來說明
第一網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù)abcdefghp 第二網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù)abcdefghk 第三網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù)abcdefghi 第四網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù)abcdefu
符合MIN-LEN和MIN-STREAM均為2的條件的字節(jié)序列為abcdefgh、 abcdefg、 abcdef、 abcde、 abcd、 abc、 ab、 bcdefgh、 bcdefg、 bcdef、 bcde、 bcd、 bc、 cdefgh、 cdefg、 cdef、 cde、 cd、 defgh、 defg、 def、 de、 efgh、 efg、 ef、 fgh、 fg和gh。
提取非定長字節(jié)序列可以使字節(jié)序列包含蠕蟲特征的概率提高,尤其適 用于高變形蠕蟲。由于高變形蠕蟲從字節(jié)序列來看相似度很低,同一個蠕蟲 的兩個副本中相同序列片段的長度很d、,因此固定長度提取方法無法提取高 度變形的蠕蟲特征。另外,由于不同蠕蟲的蠕蟲特征差別很大,固定長度可 能適合某些蠕蟲而不適合其他的蠕蟲。因此,非定長字節(jié)序列的提取更能適應(yīng)提取大規(guī)模多種蠕蟲的蠕蟲特征,從而提高蠕蟲特征提取的準確性。 第五實施例
本發(fā)明第五實施例所提供的蠕蟲特征提取方法可以上述第四實施例為基 礎(chǔ),進一步在提取字節(jié)序列之后,從提取的各字節(jié)序列中去除無用字節(jié)序列。 所謂無用字節(jié)序列是成為蠕蟲特征的概率幾乎為零或概率小于一定程度的字 節(jié)序列。
由第四實施例中所舉實例中可以看出,僅四個網(wǎng)絡(luò)數(shù)據(jù)流所包含的字節(jié)
序列就達28個,實際中網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)量將是巨大的,如果都進行計算則計 算量過大,并且大部分字節(jié)序列在后續(xù)組裝蠕蟲特征的操作中是貢獻極小的。 因此可以在計算誤報率之前首先去除無用字節(jié)序列來提高蠕蟲特征組裝效率。
優(yōu)選是選擇長度較長的字節(jié)序列來組裝蠕蟲特征,但是參考上述實例來 看,如果僅保留最長的字節(jié)序列abcdefgh會使包含蠕蟲特征的概率下降,則 組裝的蠕蟲特征準確性也會下降。如果再保留字節(jié)序列abcdef,則abcdef 可以會覆蓋更多的網(wǎng)絡(luò)數(shù)據(jù)流,包含蠕蟲特征的概率優(yōu)于abcdef gh。從字節(jié) 序列中去除無用字節(jié)序列的方法應(yīng)兼顧包含蠕蟲特征的概率以及計算效率。 具體可以在各字節(jié)序刮中進行篩選,識別具有子串和母串關(guān)系的成對字節(jié)序 列,且當(dāng)包含子串字節(jié)序列的網(wǎng)絡(luò)數(shù)據(jù)流也包含該子串的母串字節(jié)序列時, 將作為子串的字節(jié)序列確定為無用字節(jié)序列去除。所謂母串和子串,即母串 的字節(jié)序列包含子串的字節(jié)序列。由于包含子串的網(wǎng)絡(luò)數(shù)據(jù)流也包^#串, 即不存在只包含子串不包含母串的網(wǎng)絡(luò)數(shù)據(jù)流,所以已經(jīng)可以用母串來過濾 網(wǎng)絡(luò)數(shù)據(jù)流,子串對網(wǎng)絡(luò)數(shù)據(jù)流的過濾將是重復(fù)的,所以該子串為無用字節(jié) 序列,應(yīng)該去除。
圖4為本發(fā)明第五實施例所提供的蠕蟲特征提取方法中一種去除無用字 節(jié)序列優(yōu)選實施方式的流程圖,即在提取字節(jié)序列之后,組裝蠕蟲特征之前, 從提取的各字節(jié)序列中去除無用字節(jié)序列具體包括如下步驟
步驟A1、將提取的各字節(jié)序列按照長度從小到大的順序排列成篩選隊列;說明書第9/21頁
步驟A2、取出位于篩選隊列頭的字節(jié)序列作為待選字節(jié)序列,取出后則 該待選字節(jié)序列不包含在篩選隊列中,若篩選隊列中已無字節(jié)序列,則去除 無用字節(jié)序列的操作結(jié)束;
步驟A3、判斷篩選隊列中是否還存在字節(jié)序列,若是則執(zhí)行步驟A4,若 否,則去除無用字節(jié)序列的操:作結(jié)束;
步驟A4、自第一個字節(jié)序列開始,逐個選取篩選隊列中的一個字節(jié)序列 作為標準字節(jié)序列;
步驟A5、判斷待選字節(jié)序列是否為標準字節(jié)序列的子串,若是,則執(zhí)行 步驟A6,否則執(zhí)行步驟A7;
步驟A6、判斷包含待選字節(jié)序列的網(wǎng)絡(luò)數(shù)據(jù)流是否包含標準字節(jié)序列, 若是,則說明待選字節(jié)序列和標準字節(jié)序列是同時包含在某些網(wǎng)絡(luò)數(shù)據(jù)流中 的,且同時在其他網(wǎng)絡(luò)數(shù)據(jù)流中不存在,該待選字節(jié)序列是無用字節(jié)序列, 繼續(xù)執(zhí)行步驟A8,否則說明待選字節(jié)序列不是無用字節(jié)序列,繼續(xù)執(zhí)行步驟 A7;
步驟A7、判斷篩選隊列中在標準字節(jié)序列之后是否還有字節(jié)序列,若有, 則返回執(zhí)行步驟A4,以標準字節(jié)序列之后的下一個字節(jié)序列代替作為標準字 節(jié)序列,若沒有,則返回執(zhí)行步驟A2;
步驟A8、將待選字節(jié)序列作為無用字節(jié)序列去除,并返回執(zhí)行步驟A2。 上述過程將篩選隊列中的每一個字節(jié)序列逐一與篩選隊列中的其他字節(jié) 序列進行判斷篩選,直至判斷出該待選字節(jié)序列為無用字節(jié)序列而去除,或 判斷出該待選字節(jié)序列應(yīng)保留。判斷過后的待選字節(jié)序列不再參與篩選隊列 的下一輪篩選。
采用上述篩選流程,可以優(yōu)選篩選出無用字節(jié)序列,提高后續(xù)計算速度。 仍以上述實例來i兌明,經(jīng)篩選后,abcdef和abcdefgh保留,超過90%的字 節(jié)序列被去除,能夠顯著提高后續(xù)計算速度,蠕蟲特征組裝時間是不經(jīng)過篩 選的2/28。這個差異在實際應(yīng)用中會更大,可能會達到成百上千倍,因為實 際應(yīng)用中的字節(jié)序列個數(shù)和長度可能比上述實例大4艮多。
14第六實施例
圖5為本發(fā)明第六實施例所提供的蠕蟲特征提取方法中組裝蠕蟲特征的 流程圖,本實施例可以上述各實施例為基礎(chǔ),步驟300在正常網(wǎng)絡(luò)數(shù)據(jù)包中, 計算各字節(jié)序列的誤報率,并根據(jù)誤報率將字節(jié)序列組裝成蠕蟲特征具體包 括下述步驟
步驟301、將預(yù)先獲取到的各正常網(wǎng)絡(luò)數(shù)據(jù)包組裝成正常網(wǎng)絡(luò)數(shù)據(jù)流, 具體的組裝過程可以參考前述實施例,可以從預(yù)先獲取到的各正常網(wǎng)絡(luò)ft據(jù) 包中分別解析獲取源IP地址、目的IP地址和目的端口號,將源IP地址、目 的IP地址和目的端口號相同的正常網(wǎng)絡(luò)數(shù)據(jù)包組裝成一個正常網(wǎng)絡(luò)數(shù)據(jù)流;
步驟302、在正常網(wǎng)絡(luò)數(shù)據(jù)流中,計算各字節(jié)序列的誤報率,將誤報率 小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征。其中,計算誤報率仍可 采用前述公式,此時以正常網(wǎng)絡(luò)數(shù)據(jù)流作為比較單元,在正常網(wǎng)絡(luò)數(shù)據(jù)流中 計算各字節(jié)序列的誤報率,即計算同時包含各字節(jié)序列的正常網(wǎng)絡(luò)數(shù)據(jù)流 的數(shù)量占全部正常網(wǎng)絡(luò)數(shù)據(jù)流的百分比。
為了計算蠕蟲特征的誤報率,正常網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)量需綜合考慮計算速
度和誤報率準確性。正常網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)量越大,計算出的蠕蟲特征的誤報 率越準確。實際上正常網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)量優(yōu)選是達到百兆級別。
在本實施例的技術(shù)方案中,將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列 組裝成蠕蟲特征,即根據(jù)誤報率對字節(jié)序列進行篩選,可以有效控制蠕蟲特 征的誤報率,提高蠕蟲特征的準確性。
本實施例是根據(jù)誤報率判斷字節(jié)序列是否適合于組裝蠕蟲隊列的一種具 體方式,字節(jié)序列適于組裝蠕蟲隊列的目標即是該字節(jié)序列放入接受字節(jié)序 列池中之后,接受字節(jié)序列池中所有字節(jié)序列的整體誤報率盡量低,且整個 接受字節(jié)序列池中的所有字節(jié)序列覆蓋盡量多的網(wǎng)絡(luò)數(shù)據(jù)流,即覆蓋率高。 所謂覆蓋率是指在異常網(wǎng)絡(luò)數(shù)據(jù)流或可^^網(wǎng)絡(luò)數(shù)據(jù)流中,同時含有各字節(jié)序 列或者蠕蟲特征的網(wǎng)絡(luò)數(shù)據(jù)流占總數(shù)的百分比。例如,當(dāng)接受字節(jié)序列池中 有兩個字節(jié)序列ab和cd,可疑的網(wǎng)絡(luò)數(shù)據(jù)流有三個,分別為abeeee、 cdeeee和abeecd,則ab和cd ^f又在一個網(wǎng)絡(luò)數(shù)據(jù)流中同時出現(xiàn),所以覆蓋率為1/3 x畫。
在本實施例技術(shù)方案的基礎(chǔ)上,還可以進一步基于下述原則來判斷字節(jié) 序列是否適于組裝蠕蟲特征,即當(dāng)數(shù)個字節(jié)序列的誤報率和覆蓋率都滿足 要求時,優(yōu)先選擇長度值較大的字節(jié)序列。在將誤報率小于或等于預(yù)先設(shè)定 值的字節(jié)序列組裝成蠕蟲特征之前,還包括根據(jù)在正常網(wǎng)絡(luò)數(shù)據(jù)流中分別 計算出的各字節(jié)序列的誤報率,各個字節(jié)序列獨立計算所得的誤報率可能相 等也可能不等,分別將誤報率相等的字節(jié)序列進行長度比較,保留其中長度 最大的字節(jié)序列用于組裝蠕蟲特征。如果在誤報率相等的字節(jié)序列中,長度 最大的字節(jié)序列有多個,則可以任意選擇一個。
第七實施例
圖6為本發(fā)明第七實施例所提供的蠕蟲特征提取方法中組裝蠕蟲特征一 種優(yōu)選實施方式的流程圖,本實施例可以上述第六實施例為基礎(chǔ),在正常網(wǎng) 絡(luò)數(shù)據(jù)流中,計算各字節(jié)序列的誤報率Fp,將誤報率Fp小于或等于預(yù)先設(shè) 定值的字節(jié)序列組裝成蠕蟲特征。組裝蠕蟲特征可以基于下述思路進行
形成初始時不包括字節(jié)序列的接受字節(jié)序列池;
按照設(shè)定順序逐個取出字節(jié)序列,在正常網(wǎng)絡(luò)數(shù)據(jù)流中計算取出的字節(jié)
序列和接受字節(jié)序列池中字節(jié)序列的誤報率,隨著取出過程的進行,接受字
節(jié)序列池中的字節(jié)序列數(shù)量在逐漸增加;
判斷誤報率是否小于或等于預(yù)先設(shè)定值,若是,則將取出的字節(jié)序列放
入接受字節(jié)序列池中,將接受字節(jié)序列池中的字節(jié)序列組裝成蠕蟲特征,若
否,且不存在能取出的字節(jié)序列時,蠕蟲特征組裝失敗。 上述組裝過程的 一種具體實現(xiàn)形式可以為下述流程 步驟Bl、將各字節(jié)序列按照長度從大到小的順序排列成組裝隊列; 步驟B2、取出位于組裝隊列頭的字節(jié)序列作為待審字節(jié)序列,取出后則
組裝隊列中不再包括待審字節(jié)序列;
步驟B3、在正常網(wǎng)絡(luò)數(shù)據(jù)流中,計算接受字節(jié)序列池中的字節(jié)序列和待審字節(jié)序列的誤報率Fp,在初始狀態(tài)時,接受字節(jié)序列池中沒有字節(jié)序列;
步驟B4、識別接受字節(jié)序列池中字節(jié)序列的個數(shù),當(dāng)個數(shù)等于0時,執(zhí) 行步驟B5,當(dāng)個數(shù)等于l時,執(zhí)行步驟B6,當(dāng)個數(shù)大于l時,執(zhí)行步驟B7;
步驟B5、識別誤報率Fp的數(shù)值大小,當(dāng)誤報率Fp小于或等于第一設(shè)定 值p i且大于第三設(shè)定值p ^時,將該待審字節(jié)序列》文入接受字節(jié)序列池中, 并執(zhí)行步驟B8,當(dāng)誤報率Fp大于第一設(shè)定值p,時,執(zhí)行步驟B8,當(dāng)誤報率 Fp小于或等于第三設(shè)定值p ^時,將該待審字節(jié)序列放入接受字節(jié)序列池中, 并執(zhí)行步驟B9;
步驟B6、識別誤報率Fp的數(shù)值大小,當(dāng)誤報率Fp小于或等于第二設(shè)定 值p 2且大于第三設(shè)定值p ^時,將該待審字節(jié)序列;^A接受字節(jié)序列池中, 并執(zhí)行步驟B8,其中第二設(shè)定值P2小于第一設(shè)定值p"當(dāng)誤報率Fp大于第 二設(shè)定值p 2時,執(zhí)行步驟B8,當(dāng)誤報率Fp小于或等于第三設(shè)定值p ^時, 將該待審字節(jié)序列放入接受字節(jié)序列池中,并執(zhí)行步驟B9;
步驟B7、識別誤報率Fp的數(shù)值大小,當(dāng)誤報率Fp小于或等于第三設(shè)定 值P^時,將該待審字節(jié)序列》丈入接受字節(jié)序列池中,并執(zhí)行步驟B9,當(dāng)誤 報率Fp大于第三設(shè)定值Prev時,執(zhí)行步驟B8;
步驟B8、判斷組裝隊列中是否還存在有字節(jié)序列,若是,則返回執(zhí)行步 驟B2,以便開始審核下一個待審字節(jié)序列,否則,由于接受字節(jié)序列池中的 字節(jié)序列的誤報率仍然未達到小于或等于第三設(shè)定值p kv的條件,且組裝隊 列中也沒有其他字節(jié)序列可以使誤報率進一步降低,所以組裝蠕蟲特征失敗, 操作結(jié)束,可以將接受字節(jié)序列池清空;
步驟B9、將接受字節(jié)序列池中的字節(jié)序列組裝成蠕蟲特征,組裝隊列中 剩余的字節(jié)序列可以不再參與蠕蟲特征的組裝,直接丟棄即可。
為加快計算速度,本實施例采用了一種AC算法,所謂AC算法是由Aho 和Corasick提出的多模式匹配算法,即一次搜索查找可以判定多個字符串匹 配問題。上述組裝過程區(qū)分了接受字節(jié)序列池中包括0個、1個和1個以上 字節(jié)序列的情況。當(dāng)接受字節(jié)序列池中包括0個或1個字節(jié)序列時,即使未
17達到誤報率小于或等于第三設(shè)定值的條件,只要小于等于第一設(shè)定值或第二 設(shè)定值,即可以先將字節(jié)序列放入接受字節(jié)序列池中,待后續(xù)再添加字節(jié)序 列,可以隨著字節(jié)序列的增加,使計算出的誤報率進一步減小。當(dāng)誤報率隨 著接受字節(jié)序列池中字節(jié)序列數(shù)量的增加減小至小于或等于第三設(shè)定值時, 則蠕蟲特征組裝成功。若組裝隊列中已不存在字節(jié)序列,但*接受字節(jié)序列池 中的字節(jié)序列集合仍不滿足誤報率小于或等于第三設(shè)定值時,則蠕蟲特征組 裝失敗。上述第一設(shè)定值、第二設(shè)定值和第三設(shè)定值可以由專家來設(shè)定,通 常為正的小數(shù)。在前述實施例中去掉無用字節(jié)序列將對本實施例中提高蠕蟲 特征的組裝效率有很大幫助。 第八實施例
圖7為本發(fā)明第八實施例所提供的蠕蟲特征提取方法的流程圖,本實施 例可以上述實施例為基礎(chǔ),在組裝成蠕蟲特征之后,還包括在各網(wǎng)絡(luò)數(shù)據(jù)包 中,去除包含該蠕蟲特征的網(wǎng)絡(luò)數(shù)據(jù)包,并返回執(zhí)行提取字節(jié)序列,組裝蠕 蟲特征的操作,直至提取的字節(jié)序列數(shù)量為0或網(wǎng)絡(luò)數(shù)據(jù)包被完全去除。本 實施例重復(fù)執(zhí)行蠕蟲特征組裝、去除包含新組裝的蠕蟲特征的異常網(wǎng)絡(luò)數(shù)據(jù) 包、而后再進行蠕蟲特征組裝的流程,適用于提取多個蠕蟲特征。具體流程 包括如下步驟
步驟IOO、捕捉獲取網(wǎng)絡(luò)數(shù)據(jù)包;
步驟200、從獲取的網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列,并判斷是否能提取到 字節(jié)序列,若無法提取字節(jié)序列則執(zhí)行步驟500,如能提取到則繼續(xù)執(zhí)行步 驟300;
步驟300、在預(yù)先獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各字節(jié)序列的誤報 率,并根據(jù)誤報率,將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲 特征;
步驟400、保存新組裝的蠕蟲特征,在各網(wǎng)絡(luò)數(shù)據(jù)包中,去除包含新組 裝的蠕蟲特征的網(wǎng)絡(luò)數(shù)據(jù)包,并執(zhí)行步驟200;
步驟500、蠕蟲特征提取完畢,可以清除網(wǎng)絡(luò)數(shù)據(jù)包和接受字節(jié)序列池等不再使用的資源。
采用本實施例的技術(shù)方案,可以通過循環(huán)提取字節(jié)序列、組裝蠕蟲特征 的操作,全自動的對多個蠕蟲特征進行實時提取,因此適用于大規(guī)模蠕蟲特 征提取場合。
第九實施例
圖8為本發(fā)明第九實施例所提供的蠕蟲特征提取裝置的結(jié)構(gòu)示意圖。該 蠕蟲特征提取裝置具體包括:網(wǎng)絡(luò)數(shù)據(jù)包獲取才莫塊801、字節(jié)序列提取模塊 802和蠕蟲特征組裝模塊803。其中,網(wǎng)絡(luò)數(shù)據(jù)包獲取模塊801用于獲取網(wǎng)絡(luò) 數(shù)據(jù)包;字節(jié)序列提^Mi塊802用于從獲取的網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列; 蠕蟲特征組裝模塊803用于在預(yù)先獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各字節(jié) 序列的誤報率,并將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特 征,其中,誤報率為包含字節(jié)序列的正常網(wǎng)絡(luò)數(shù)據(jù)包在全部正常網(wǎng)絡(luò)數(shù)據(jù)包 中出現(xiàn)的概率。
本實施例的蠕蟲特征提取裝置可以執(zhí)行本發(fā)明第 一實施例的技術(shù)方案, 引入誤報率的計算和比較,使蠕蟲特征滿足誤報率要求,從而提高蠕蟲特征 的準確性。并且,上述技術(shù)方案可以實現(xiàn)實時地從網(wǎng)絡(luò)數(shù)據(jù)包中自動提取蠕 蟲特征,人力資源成本低、實時性高、能及時獲取未知蠕蟲的蠕蟲特征。
第十實施例
圖9為本發(fā)明第十實施例所提供的蠕蟲特征提取裝置中字節(jié)序列提fMt 塊的結(jié)構(gòu)示意圖。在第九實施例的&出上,字節(jié)序列提^Mt塊802可以具體 包括第一參數(shù)解析單元901、第一數(shù)據(jù)流組裝單元902和字節(jié)序列提取子單 元903。其中,第一參數(shù)解析單元901用于從各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取 源IP地址、目的IP地址和目的端口號;第一數(shù)據(jù)流組裝單元902用于將源 IP地址、目的IP地址和目的端口號相同的網(wǎng)絡(luò)凝:據(jù)包組裝成一個網(wǎng)絡(luò)ii:據(jù) 流;字節(jié)序列提取子單元903用于從各網(wǎng)絡(luò)數(shù)據(jù)流中提取字節(jié)序列。
本實施例可以執(zhí)行本發(fā)明第二實施例的技術(shù)方案,對網(wǎng)絡(luò)數(shù)據(jù)包進行整 形組裝為網(wǎng)絡(luò)數(shù)據(jù)流。實現(xiàn)整形組裝的方式多樣,并不限于以源IP地址、目
19的IP地址和目的端口號為標準來組裝。
按照上述設(shè)定整形規(guī)則組裝之后,在一個網(wǎng)絡(luò)數(shù)據(jù)流中包含一個蠕蟲副 本所有網(wǎng)絡(luò)數(shù)據(jù)包的可能性顯著增加,同時不同網(wǎng)絡(luò)數(shù)據(jù)流的網(wǎng)絡(luò)數(shù)據(jù)包屬
于一個蠕蟲不同副本或者屬于不同蠕蟲的可能性也劇增。因此,將網(wǎng)絡(luò)凝:據(jù) 包組裝成網(wǎng)絡(luò)數(shù)據(jù)流再提取字節(jié)序列,有助于提高蠕蟲特征的準確性。 第十一實施例
圖10為本發(fā)明第十一實施例所提供的蠕蟲特征提取裝置中網(wǎng)絡(luò)數(shù)據(jù)包 獲取模塊的結(jié)構(gòu)示意圖。本實施例可以上述第九、第十實施例為基礎(chǔ),網(wǎng)絡(luò) 數(shù)據(jù)包獲取模塊801具體包括網(wǎng)絡(luò)數(shù)據(jù)包捕捉單元1001和網(wǎng)絡(luò)數(shù)據(jù)包篩選 單元1002。網(wǎng)絡(luò)數(shù)據(jù)包捕捉單元1001用于捕捉網(wǎng)絡(luò)數(shù)據(jù)包;網(wǎng)絡(luò)數(shù)據(jù)包篩 選單元1002用于對捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包進行篩選操作,保留異常網(wǎng)絡(luò)數(shù)據(jù) 包。
篩選異常數(shù)據(jù)包的形式多樣,例如,網(wǎng)絡(luò)數(shù)據(jù)包篩選單元1002的具體結(jié) 構(gòu)可以為包括失敗次數(shù)解析子單元10021和數(shù)據(jù)包篩選子單元10022。其中, 失敗次數(shù)解析子單元10021用于從捕捉到的各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取失 敗連接次數(shù);數(shù)據(jù)包篩選子單元10022用于當(dāng)識別到失敗連接次數(shù)大于或等 于設(shè)定失敗門限值時,將對應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)包作為異常網(wǎng)絡(luò)數(shù)據(jù)包。
本實施例可以執(zhí)行本發(fā)明第三實施例的技術(shù)方案,對網(wǎng)絡(luò)數(shù)據(jù)包進行上
述篩選工作可以減少網(wǎng)絡(luò)數(shù)據(jù)包的數(shù)量,減少提取字節(jié)序列的工作量,可以
顯著提高蠕蟲特征的提取速度,提高實時性。 第十二實施例
圖11為本發(fā)明第十二實施例所提供的蠕蟲特征提取裝置中字節(jié)序列提 取子單元的結(jié)構(gòu)示意圖。本實施例可以上述第十實施例為基礎(chǔ),字節(jié)序列提 取子單元903具體包括長度值設(shè)定子單元1101、次數(shù)值設(shè)定子單元1102 和提取子單元1103。其中,長度值設(shè)定子單元1101用于存儲預(yù)先設(shè)定的待 提取字節(jié)序列的最小長度值;次數(shù)值設(shè)定子單元1102用于存儲預(yù)先設(shè)定的待 提取字節(jié)序列的最小次數(shù)值;提取子單元1103用于提取長度大于或等于預(yù)先設(shè)定的最小長度值,且在網(wǎng)絡(luò)數(shù)據(jù)流中的被包含次數(shù)大于或等于預(yù)先設(shè)定的 最小次數(shù)值的字節(jié)序列。
本實施例可以執(zhí)行本發(fā)明第四實施例的技術(shù)方案,提取非定長字節(jié)序列 可以使字節(jié)序列包含蠕蟲特征的概率提高,尤其適用于高變形蠕蟲。非定長 字節(jié)序列的提取更能適應(yīng)提取大規(guī)模多種蠕蟲的蠕蟲特征,從而提高蠕蟲特 征提取的準確性。
第十三實施例
圖12為本發(fā)明第十三實施例所提供的蠕蟲特征提取裝置中無用字節(jié)序 列去除才莫塊的結(jié)構(gòu)示意圖。本實施例可以上述第十二實施例為基礎(chǔ),在蠕蟲 特征提取裝置中還包括無用字節(jié)序列去除模塊。無用字節(jié)序列去除模塊用于 從提取的各字節(jié)序列中去除無用字節(jié)序列。
具體的,無用字節(jié)序列去除模塊的一種具體結(jié)構(gòu)可以包括識別單元、 判斷單元和去除單元。識別單元用于在各字節(jié)序列中識別具有子串和母串關(guān) 系的成對字節(jié)序列;判斷單元用于當(dāng)判斷出包含子串字節(jié)序列的網(wǎng)絡(luò)數(shù)據(jù)流 也包含子串的母串字節(jié)序列時,將作為子串的字節(jié)序列確定為無用字節(jié)序列; 去除單元用于將無用字節(jié)序列去除。
具體的,去除模塊的一種實現(xiàn)結(jié)構(gòu)為包括篩選隊列排列單元1201、待選 字節(jié)序列獲取單元1202、第一判斷單元1203、標準字節(jié)序列選取單元1204、 第二判斷單元1205、第三判斷單元1206、第四判斷單元1207和去除單元1208。 其中,篩選隊列排列單元1201用于將提取的各字節(jié)序列按照長度從小到大的 順序排列成篩選隊列;待選字節(jié)序列獲取單元1202用于取出位于篩選隊列頭 的字節(jié)序列作為待選字節(jié)序列;第一判斷單元1203用于判斷篩選隊列中是否 存在字節(jié)序列,若是,則觸發(fā)標準字節(jié)序列選取單元1204動作,若否,則去 除無用字節(jié)序列的l喿作結(jié)束;標準字節(jié)序列選取單元1204用于自第一個字節(jié) 序列開始,逐個選取篩選隊列中的一個字節(jié)序列作為標準字節(jié)序列;第二判 斷單元1205用于判斷待選字節(jié)序列是否為標準字節(jié)序列的子串,若是,則觸 發(fā)第三判斷單元1206動作,若否,則觸發(fā)第四判斷單元1207動作;第三判斷單元1206用于判斷包含待選字節(jié)序列的網(wǎng)絡(luò)數(shù)據(jù)流是否包含標準字節(jié)序 列,若是,則觸發(fā)去除單元1208動作,若否,則觸發(fā)第四判斷單元1207動 作;第四判斷單元1207用于判斷篩選隊列中在標準字節(jié)序列之后是否還有字 節(jié)序列,若有,則觸發(fā)標準字節(jié)序列選取單元1204動作以選取標準字節(jié)序列 之后的下一個字節(jié)序列代替作為標準字節(jié)序列,若沒有,則觸發(fā)待選字節(jié)序 列獲取單元1202動作;去除單元1208用于將待選字節(jié)序列作為無用字節(jié)序 列去除,并可以觸發(fā)待選字節(jié)序列獲取單元1202開始執(zhí)行下一輪去除操作。
本實施例可以執(zhí)行本發(fā)明第五實施例的技術(shù)方案,從字節(jié)序列中去除無 用字節(jié)序列可以提高后續(xù)計算速度。
第十四實施例
圖13為本發(fā)明第十四實施例所提供的蠕蟲特征提取裝置中蠕蟲特征組 裝模塊的結(jié)構(gòu)示意圖。本實施例可以上述各裝置實施例為基礎(chǔ),蠕蟲特征組 裝模塊803可以具體包括正常網(wǎng)絡(luò)數(shù)據(jù)包獲取單元1301、第二參數(shù)解析單 元1302、第二數(shù)據(jù)流組裝單元1304和蠕蟲特征組裝子單元1303。其中,正 常網(wǎng)絡(luò)數(shù)據(jù)包獲取單元1301用于獲取正常網(wǎng)絡(luò)數(shù)據(jù)包;第二參數(shù)解析單元 1302用于從各正常網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取源IP地址、目的IP地址和目 的端口號;第二數(shù)據(jù)流組裝單元1304用于將源IP地址、目的IP地址和目的 端口號相同的正常網(wǎng)絡(luò)數(shù)據(jù)包組裝成一個正常網(wǎng)絡(luò)數(shù)據(jù)流;蠕蟲特征組裝子 單元1303用于在正常網(wǎng)絡(luò)數(shù)據(jù)流中,計算各節(jié)序列的誤報率,將誤報率小于 或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征。
本實施例可以執(zhí)行本發(fā)明第六實施例的技術(shù)方案,將誤報率小于或等于 預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征,即根據(jù)誤報率對字節(jié)序列進行篩選, 可以有效控制蠕蟲特征的誤報率,提高蠕蟲特征的準確性。
在蠕蟲特征組裝子單元1303中還可以包括長度比較去除子單元13031。 長度比較去除子單元13031用于根據(jù)在正常網(wǎng)絡(luò)數(shù)據(jù)流中分別計算出的各字 節(jié)序列的誤報率,分別將誤報率相等的字節(jié)序列進行長度比較,保留其中長 度最大的字節(jié)序列用于組裝蠕蟲特征。上述技術(shù)方案可以滿足誤^1率的基礎(chǔ)上進一步選擇較長的字節(jié)序列,從 而優(yōu)化蠕蟲特征,減少蠕蟲特征中字節(jié)序列的個數(shù),使蠕蟲特征的規(guī)模減小, 能夠提高使用蠕蟲特征去除異常網(wǎng)絡(luò)數(shù)據(jù)包的計算速度。
第十五實施例
圖14為本發(fā)明第十五實施例所提供的蠕蟲特征提取裝置中蠕蟲特征組 裝子單元的結(jié)構(gòu)示意圖。本實施例可以上述裝置實施例為基礎(chǔ),蠕蟲特征組 裝子單元1303具體包括組裝隊列排列子單元1401、待審字節(jié)序列獲取子 單元1402、第二誤報率計算子單元1403、個數(shù)識別子單元1404、第一處理 子單元1405、第二處理子單元1406、第三處理子單元1407、剩余字節(jié)序列 判斷子單元1408和第二蠕蟲特征組裝子單元1409。其中,組裝隊列排列子 單元1401用于將各字節(jié)序列按照長度從大到小的順序排列成組裝隊列;待審 字節(jié)序列獲取子單元1402用于取出位于組裝隊列頭的字節(jié)序列作為待審字 節(jié)序列;第二誤報率計算子單元1403用于在正常網(wǎng)絡(luò)數(shù)據(jù)流中,計算接受字 節(jié)序列池中的各字節(jié)序列和待審字節(jié)序列的誤報率;個數(shù)識別子單元1404用 于識別接受字節(jié)序列池中字節(jié)序列的個數(shù),當(dāng)個數(shù)等于0時,觸發(fā)第一處理 子單元1405動作,當(dāng)個數(shù)等于l時,觸發(fā)第二處理子單元1406動作,當(dāng)個 數(shù)大于l時,觸發(fā)第三處理子單元1407動作;第一處理子單元1405用于識 別誤報率的數(shù)值大小,當(dāng)誤報率小于或等于第一設(shè)定值且大于第三設(shè)定值時, 將待審字節(jié)序列放入接受字節(jié)序列池中,并觸發(fā)剩余字節(jié)序列判斷子單元 1408動作,當(dāng)誤報率大于第一設(shè)定值時,觸發(fā)剩余字節(jié)序列判斷子單元1408 動作,當(dāng)誤報率小于或等于第三設(shè)定值時,將待審字節(jié)序列放入接受字節(jié)序 列池中,并觸發(fā)第二蠕蟲特征組裝子單元1409動作;第二處理子單元1406 用于識別誤報率的數(shù)值大小,當(dāng)誤報率小于或等于第二設(shè)定值且大于第三設(shè) 定值時,將待審字節(jié)序列放入接受字節(jié)序列池中,并觸發(fā)剩余字節(jié)序列判斷 子單元1408動作,其中第二設(shè)定值小于第一設(shè)定值,當(dāng)誤報率大于第二設(shè)定 值時,并觸發(fā)剩余字節(jié)序列判斷子單元1408動作,當(dāng)誤報率小于或等于第三 設(shè)定值時,將待審字節(jié)序列放入接受字節(jié)序列池中,并觸發(fā)第二蠕蟲特征組裝子單元1409動作;第三處理子單元1407用于識別誤^t艮率的數(shù)值大小,當(dāng) 誤報率小于或等于第三設(shè)定值時,將待審字節(jié)序列放入接受字節(jié)序列池中, 并觸發(fā)第二蠕蟲特征組裝子單元1409動作,當(dāng)誤報率大于第三設(shè)定值時,觸 發(fā)剩余字節(jié)序列判斷子單元1408動作;剩余字節(jié)序列判斷子單元1408用于 判斷組裝隊列中是否存在字節(jié)序列,若是,則觸發(fā)待審字節(jié)序列獲取子單元 1402動作,否則組裝蠕蟲特征操作結(jié)束;第二蠕蟲特征組裝子單元1409用 于將接受字節(jié)序列池中的字節(jié)序列組裝成蠕蟲特征。
本實施例可以執(zhí)行本發(fā)明第七實施例的技術(shù)方案,采用AC算法加快篩選 字節(jié)序列,組裝蠕蟲特征的計算速度。
第十六實施例
圖15為本發(fā)明第十六實施例所提供的蠕蟲特征提取裝置的結(jié)構(gòu)示意圖。 本實施例可以上述各裝置實施例為基礎(chǔ),蠕蟲特征提取裝置進一步還包括去 除模塊1501。去除模塊1501用于在各網(wǎng)絡(luò)數(shù)據(jù)包中,去除包含蠕蟲特征的 網(wǎng)絡(luò)數(shù)據(jù)包,并觸發(fā)字節(jié)序列提f^莫塊802動作,直至字節(jié)序列提^Mt塊802 提取的字節(jié)序列數(shù)量為O或網(wǎng)絡(luò)數(shù)據(jù)包被完全去除。
本實施例可以執(zhí)行本發(fā)明第八實施例的技術(shù)方案,循環(huán)執(zhí)行蠕蟲特征的 提取操作,可提取多個蠕蟲特征,適用于大M^莫蠕蟲爆發(fā)的情況。
本發(fā)明上述各實施例的技術(shù)方案可以組合實施,具有如下優(yōu)勢
1) 引入誤報率計算、比較方法,可以提高提取的蠕蟲特征的準確性和可 靠性,降低誤報率;
2) 采用多個長度不固定的字節(jié)序列組成一個蠕蟲特征,這種靈活的結(jié)構(gòu) 適用于各種不同蠕蟲,尤其是高度變形蠕蟲,進一步提高了蠕蟲特征提取的 準確性;
3) 對網(wǎng)絡(luò)數(shù)據(jù)包進行整形,組裝成網(wǎng)絡(luò)數(shù)據(jù)流,也可以提高蠕蟲特征提 取的準確性和可靠性;
4) 對網(wǎng)絡(luò)數(shù)據(jù)包進行篩選,采用后綴數(shù)組算法篩選去除無用字節(jié)序列, 在誤報率計算過程中采用AC算法,可以提高計算速度,提高提取效率;5) 能夠進行大規(guī)模多蠕蟲特征提??;
6) 可以實時的自動提取,減少人力資源耗費,提取速度高,速度快,時 間耗費成本低。
本發(fā)明各實施例的技術(shù)方案解決了人工提取蠕蟲特征的成本問題。本發(fā) 明各實施例的技術(shù)方案提取蠕蟲特征不依賴于各個專家的經(jīng)驗,避免出現(xiàn)提 取出的蠕蟲特征不完全相同,準確性也各不相同的問題;蠕蟲特征提取M^莫 不會受到專家數(shù)量和專家個人提取速度的限制,當(dāng)發(fā)生大規(guī)模數(shù)量比較多的 蠕蟲爆發(fā)時,實時提取蠕蟲特征可以及時作出響應(yīng);人工提取的蠕蟲特征都 是從已經(jīng)出現(xiàn)一段時間的蠕蟲中提取的,從蠕蟲爆發(fā)到提取出蠕蟲特征的滯 后時間長,無法對新出現(xiàn)的蠕蟲立即進行蠕蟲特征提取,而本發(fā)明的技術(shù)方 案可以對新出現(xiàn)的蠕蟲特征立即進行提取操作,反應(yīng)迅速。由于蠕蟲特征手 動提取依賴于少數(shù)專家,因此時間、資金、人力的耗費高,蠕蟲特征提取成 本高,本發(fā)明的技術(shù)方案克服了這個缺陷,大副P爭低了提取蠕蟲特征的成本。 本發(fā)明各實施例的技術(shù)方案還解決了現(xiàn)有技術(shù)中蠕蟲特征實時自動提取存在 著的難題,即提取出的蠕蟲特征的準確性和實用性;能否提取出高度變形 的蠕蟲特征;如何對大規(guī)模蠕蟲進行特征提取。本發(fā)明實施例的技術(shù)方案可 以直接應(yīng)用于蠕蟲檢測或蠕蟲防御領(lǐng)域。
本發(fā)明實施例技術(shù)方案中各步驟的具體實現(xiàn)方式并不限于上述實施例所 述,其中,還可以采用其他任何方式進行網(wǎng)絡(luò)數(shù)據(jù)包的捕獲;可以采用其他 任何方式進行網(wǎng)絡(luò)數(shù)據(jù)包的篩選;可以采用其他網(wǎng)絡(luò)數(shù)據(jù)流的整形規(guī)則;可 以采用其他算法的字節(jié)序列提取算法進行字節(jié)序列提取;可以采用其他算法 進行誤"f艮率的計算;可以采用其他方法去掉無用字節(jié)序列;可以采用其他算 法基于誤報率來從接受字節(jié)序列池中組裝蠕蟲特征。
本發(fā)明實施例還提供了 一種采用本發(fā)明蠕蟲特征提取裝置任一實施例的 蠕蟲防御系統(tǒng),該蠕蟲防御系統(tǒng)還包括去除裝置,用于去除包括本發(fā)明蠕 蟲特征提取裝置組裝的蠕蟲特征的網(wǎng)絡(luò)數(shù)據(jù)包。
本發(fā)明實施例還提供了 一種采用本發(fā)明蠕蟲特征提取裝置任一 實施例的蠕蟲檢測系統(tǒng),該蠕蟲檢測系統(tǒng)還包括提取裝置,用于提取包括本發(fā)明蠕 蟲特征提取裝置組裝的蠕蟲特征的網(wǎng)絡(luò)數(shù)據(jù)包。
本發(fā)明的蠕蟲特征提取方法和裝置可以廣泛應(yīng)用于蠕蟲特征防御和檢測 領(lǐng)域,其蠕蟲特征提取的準確性高、實時性好、適用于大規(guī)模蠕蟲爆發(fā)的情 況,且成本投入小,易于實現(xiàn)。
本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述方法實施例的全部或部分步驟 可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計算機可讀 取存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述 的存儲介質(zhì)包括R0M、 RAM、 i茲碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
最后應(yīng)說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其 限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù) 人員應(yīng)當(dāng)理解其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或 者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技
術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。
權(quán)利要求
1、一種蠕蟲特征提取方法,其特征在于,包括獲取網(wǎng)絡(luò)數(shù)據(jù)包;從獲取的網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列;在預(yù)先獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各所述字節(jié)序列的誤報率,并將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征,其中,所述誤報率為包含所述字節(jié)序列的正常網(wǎng)絡(luò)數(shù)據(jù)包在全部正常網(wǎng)絡(luò)數(shù)據(jù)包中出現(xiàn)的概率。
2、 根據(jù)權(quán)利要求1所述的蠕蟲特征提取方法,其特征在于,從獲取的網(wǎng) 絡(luò)數(shù)據(jù)包中提取字節(jié)序列包括從各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取源IP地址、目的IP地址和目的端口號, 將源IP地址、目的IP地址和目的端口號相同的網(wǎng)絡(luò)數(shù)據(jù)包組裝成一個網(wǎng)絡(luò) 數(shù)據(jù)流;從各網(wǎng)絡(luò)數(shù)據(jù)流中提取字節(jié)序列。
3、 根據(jù)權(quán)利要求1或2所述的蠕蟲特征提取方法,其特征在于,獲取網(wǎng) 絡(luò)數(shù)據(jù)包包括捕捉網(wǎng)絡(luò)數(shù)據(jù)包;對捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包進行篩選操作,保留異常網(wǎng)絡(luò)數(shù)據(jù)包。
4 、根據(jù)權(quán)利要求3所述的蠕蟲特征提取方法,其特征在于,對捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包進行篩選操作,保留異常網(wǎng)絡(luò)數(shù)據(jù)包包括從捕捉到的各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取失敗連接次數(shù),當(dāng)識別到所述失敗連接次數(shù)大于或等于設(shè)定失敗門限值時,將對應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)包作為異常網(wǎng)絡(luò)數(shù)據(jù)包。
5、根據(jù)權(quán)利要求1或2所述的蠕蟲特征提取方法,其特征在于,所述提 取字節(jié)序列包括提取長度大于或等于預(yù)先設(shè)定的最小長度值,且被包含次 數(shù)大于或等于預(yù)先設(shè)定的最小次數(shù)值的字節(jié)序列。
6、 根據(jù)權(quán)利要求5所述的蠕蟲特征提取方法,其特征在于,在提取字節(jié) 序列之后,還包括從提取的各字節(jié)序列中去除無用字節(jié)序列。
7、 根據(jù)權(quán)利要求6所述的蠕蟲特征提取方法,其特征在于,從提取的各字節(jié)序列中去除無用字節(jié)序列包括在各字節(jié)序列中識別具有子串和母串關(guān)系的成對字節(jié)序列,當(dāng)包含所述子串字節(jié)序列的網(wǎng)絡(luò)數(shù)據(jù)流也包含所述子串的母串字節(jié)序列時,將作為所述子串的字節(jié)序列確定為無用字節(jié)序列去除。
8、 根據(jù)權(quán)利要求1或2所述的蠕蟲特征提取方法,其特征在于,在預(yù)先 獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各所述字節(jié)序列的誤報率,并將誤報率小 于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征包括從預(yù)先獲取到的各正常網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取源IP地址、目的IP 地址和目的端口號,將源IP地址、目的IP地址和目的端口號相同的正常網(wǎng) 絡(luò)數(shù)據(jù)包組裝成一個正常網(wǎng)絡(luò)數(shù)據(jù)流;在所述正常網(wǎng)絡(luò)數(shù)據(jù)流中,計算各所述字節(jié)序列的誤報率,將誤報率小 于或等于預(yù)先i殳定值的字節(jié)序列組裝成蠕蟲特征。
9、 根據(jù)權(quán)利要求8所述的蠕蟲特征提取方法,其特征在于,在將誤報率 小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征之前,還包括根據(jù)在正常網(wǎng)絡(luò)數(shù)據(jù)流中分別計算出的各字節(jié)序列的誤報率,分別將誤 報率相等的字節(jié)序列進行長度比較,保留其中長度最大的字節(jié)序列用于組裝 蠕蟲特征。
10、 一種蠕蟲特征提取裝置,其特征在于,包括 網(wǎng)絡(luò)數(shù)據(jù)包獲^a莫塊,用于獲取網(wǎng)絡(luò)數(shù)據(jù)包;字節(jié)序列提^i塊,用于從獲取的網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列; 蠕蟲特征組裝模塊,用于在預(yù)先獲取到的正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各所 述字節(jié)序列的誤報率,并將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成 蠕蟲特征,其中,所述誤報率為包含所述字節(jié)序列的正常網(wǎng)絡(luò)數(shù)據(jù)包在全部正常網(wǎng)絡(luò)數(shù)據(jù)包中出現(xiàn)的概率。
11、 根據(jù)權(quán)利要求10所述的蠕蟲特征提取裝置,其特征在于,所述字 節(jié)序列提取模塊包括第一參數(shù)解析單元,用于從各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取源IP地址、目 的IP:l也址和目的端口號;第一數(shù)據(jù)流組裝單元,用于將源IP地址、目的IP地址和目的端口號相 同的網(wǎng)絡(luò)數(shù)據(jù)包組裝成一個網(wǎng)絡(luò)數(shù)據(jù)流;字節(jié)序列提取子單元,用于從各網(wǎng)絡(luò)數(shù)據(jù)流中提取字節(jié)序列。
12、 根據(jù)權(quán)利要求10或11所述的蠕蟲特征提取裝置,其特征在于,所 述網(wǎng)絡(luò)數(shù)據(jù)包獲取模塊包括網(wǎng)絡(luò)數(shù)據(jù)包捕捉單元,用于捕捉網(wǎng)絡(luò)數(shù)據(jù)包;網(wǎng)絡(luò)數(shù)據(jù)包篩選單元,用于對捕捉到的網(wǎng)絡(luò)數(shù)據(jù)包進行篩選操作,保留 異常網(wǎng)絡(luò)數(shù)據(jù)包。
13、 根據(jù)權(quán)利要求12所述的蠕蟲特征提取裝置,其特征在于,所述網(wǎng) 絡(luò)數(shù)據(jù)包篩選單元包括失敗次數(shù)解析子單元,用于從捕捉到的各網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取失 敗連接次數(shù);數(shù)據(jù)包篩選子單元,用于當(dāng)識別到所述失敗連接次數(shù)大于或等于設(shè)定失 敗門限值時,將對應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)包作為異常網(wǎng)絡(luò)數(shù)據(jù)包。
14、 根據(jù)權(quán)利要求11所述的蠕蟲特征提取裝置,其特征在于,所述字 節(jié)序列提取子單元包括長度值設(shè)定子單元,用于存儲預(yù)先設(shè)定的待提取字節(jié)序列的最小長度值; 次數(shù)值設(shè)定子單元,用于存儲預(yù)先設(shè)定的待提取字節(jié)序列的最小次數(shù)值; 提取子單元,用于提取長度大于或等于預(yù)先設(shè)定的所述最小長度值,且在網(wǎng)絡(luò)數(shù)據(jù)流中的被包含次數(shù)大于或等于預(yù)先設(shè)定的所述最小次數(shù)值的字節(jié)序列。
15、 才艮據(jù)權(quán)利要求14所述的蠕蟲特征提取裝置,其特征在于,還包括 無用字節(jié)序列去除模塊,用于從提取的各字節(jié)序列中去除無用字節(jié)序列。
16、 根據(jù)權(quán)利要求15所述的蠕蟲特征提取裝置,其特征在于,所述無 用字節(jié)序列去除模塊包括識別單元,用于在各字節(jié)序列中識別具有子串和母串關(guān)系的成對字節(jié)序列;判斷單元,用于當(dāng)判斷出包含子串字節(jié)序列的網(wǎng)絡(luò)數(shù)據(jù)流也包含子串的 母串字節(jié)序列時,將作為所述子串的字節(jié)序列確定為無用字節(jié)序列; 去除單元,用于將所述無用字節(jié)序列去除。
17、 根據(jù)權(quán)利要求10或11所述的蠕蟲特征提取裝置,其特征在于,所 述蠕蟲特征組裝模塊包括正常網(wǎng)絡(luò)數(shù)據(jù)包獲取單元,用于獲取正常網(wǎng)絡(luò)數(shù)據(jù)包;第二參數(shù)解析單元,用于從各正常網(wǎng)絡(luò)數(shù)據(jù)包中分別解析獲取源IP地址、 目的IP地址和目的端口號;第二數(shù)據(jù)流組裝單元,用于將源IP地址、目的IP地址和目的端口號相 同的正常網(wǎng)絡(luò)數(shù)據(jù)包組裝成一個正常網(wǎng)絡(luò)數(shù)據(jù)流;蠕蟲特征組裝子單元,用于在所述正常網(wǎng)絡(luò)數(shù)據(jù)流中,計算各所述字節(jié) 序列的誤報率,將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征。
18、 根據(jù)權(quán)利要求17所述的蠕蟲特征提取裝置,其特征在于,所述蠕 蟲特征組裝子單元還包括長度比較去除子單元,用于根據(jù)在正常網(wǎng)絡(luò)數(shù)據(jù)流中分別計算出的各字 節(jié)序列的誤報率,分別將誤報率相等的字節(jié)序列進行長度比較,保留其中長 度最大的字節(jié)序列用于組裝蠕蟲特征。
全文摘要
本發(fā)明實施例涉及一種蠕蟲特征提取方法和裝置。該提取方法包括獲取網(wǎng)絡(luò)數(shù)據(jù)包;從網(wǎng)絡(luò)數(shù)據(jù)包中提取字節(jié)序列;在正常網(wǎng)絡(luò)數(shù)據(jù)包中,計算各字節(jié)序列的誤報率,并將誤報率小于或等于預(yù)先設(shè)定值的字節(jié)序列組裝成蠕蟲特征。該提取裝置包括執(zhí)行本發(fā)明方法的功能模塊。本發(fā)明實施例在字節(jié)序列組裝蠕蟲特征的過程中引入了誤報率的計算,根據(jù)誤報率來組裝蠕蟲特征,使蠕蟲特征能夠滿足誤報率要求,從而能夠提高實時組裝蠕蟲特征的準確性。
文檔編號H04L29/06GK101599969SQ200910088358
公開日2009年12月9日 申請日期2009年6月26日 優(yōu)先權(quán)日2009年6月26日
發(fā)明者孫志敏, 張小松, 廳 陳 申請人:成都市華為賽門鐵克科技有限公司;電子科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
东乌珠穆沁旗| 定州市| 盐源县| 乌审旗| 鹤庆县| 湟源县| 定边县| 临泽县| 酒泉市| 黑河市| 绥阳县| 宁波市| 元朗区| 虎林市| 革吉县| 精河县| 左云县| 韶山市| 望奎县| 博乐市| 治多县| 鄂尔多斯市| 乐亭县| 南昌市| 山阴县| 湘潭县| 东乌| 闽清县| 宜兰市| 汤阴县| 伊吾县| 寻甸| 法库县| 长岭县| 锦州市| 郑州市| 化德县| 湟源县| 广东省| 唐山市| 宕昌县|