薛開平,柳 彬,李 威,洪佩琳
(中國科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系, 合肥 230026) (2017年4月17日收稿; 2017年5月27日收修改稿)
經(jīng)過多年的研究和發(fā)展,面向已知協(xié)議的識(shí)別分析技術(shù)不斷進(jìn)步,并且有現(xiàn)成的協(xié)議識(shí)別解析工具,如Wireshark、Tcpdump等,能有效完成已知協(xié)議的識(shí)別和分析工作。然而隨著通信網(wǎng)絡(luò)的發(fā)展,為保障通信的安全性,在軍事、商業(yè)以及部分民用的場(chǎng)景中,越來越多的網(wǎng)絡(luò)通信基于非公開的私有協(xié)議進(jìn)行。面對(duì)私有協(xié)議數(shù)據(jù),由于缺乏必要的先驗(yàn)信息,現(xiàn)有的協(xié)議分析工具無法識(shí)別私有協(xié)議數(shù)據(jù)所屬的協(xié)議類型,更無從進(jìn)一步獲取數(shù)據(jù)承載的有用信息。針對(duì)這種情況,研究人員越來越多地采用協(xié)議規(guī)范逆向挖掘[1]的手段實(shí)現(xiàn)私有協(xié)議信息的獲取。面向未知鏈路幀的格式解析與分類旨在尋找一種可行的協(xié)議格式逆向分析方法,從缺乏先驗(yàn)信息的未知二進(jìn)制鏈路幀數(shù)據(jù)中提取鏈路幀的格式特征,基于格式特征對(duì)二進(jìn)制鏈路幀進(jìn)行分類,為后續(xù)協(xié)議信息的進(jìn)一步詳細(xì)解析提供支撐。
針對(duì)協(xié)議格式逆向解析問題,2004年啟動(dòng)的協(xié)議信息工程(protocol informatics project)[2]將生物信息學(xué)中用于基因搜尋的多序列比對(duì)算法引入到報(bào)文格式信息挖掘中,通過序列比對(duì)識(shí)別報(bào)文中的固定字段與可變字段,在此基礎(chǔ)上獲得目標(biāo)報(bào)文的結(jié)構(gòu)信息,其不足在于需要大量報(bào)文樣本,且對(duì)于結(jié)構(gòu)復(fù)雜的報(bào)文其格式挖掘的效率與準(zhǔn)確率較低。考慮到特定條件下能獲取的報(bào)文樣本數(shù)量有限,在降低對(duì)樣本數(shù)量要求的前提下,文獻(xiàn)[3]提出基于一定量先驗(yàn)信息識(shí)別報(bào)文結(jié)構(gòu)中的特殊字段,如用戶參數(shù)、狀態(tài)標(biāo)志、長度字段等動(dòng)態(tài)字段的協(xié)議逆向分析方法,其局限性主要在于字段識(shí)別效果受限于先驗(yàn)知識(shí)的豐富程度。文獻(xiàn)[4]提出一種以遞歸聚類為基礎(chǔ)的格式與語義挖掘方案,采用基于類型的多序列比對(duì)算法對(duì)報(bào)文進(jìn)行聚類,再根據(jù)識(shí)別出的各個(gè)字段進(jìn)行語義推斷并基于此進(jìn)行后續(xù)報(bào)文內(nèi)容的進(jìn)一步挖掘。文獻(xiàn)[5]利用協(xié)議報(bào)文中不同字段取值變化范圍的區(qū)別,提出一種基于協(xié)議報(bào)文字段的內(nèi)容變化分布特征的協(xié)議格式挖掘方案。文獻(xiàn)[6]基于序列模式挖掘提取協(xié)議關(guān)鍵詞序列,發(fā)現(xiàn)具有時(shí)序關(guān)系的關(guān)鍵詞序列集合,識(shí)別協(xié)議的固定域和可變域,并結(jié)合密文隨機(jī)性特征解析安全協(xié)議格式。文獻(xiàn)[7]提出一種語義層次的協(xié)議格式提取方法,將基于中間語言的動(dòng)態(tài)污點(diǎn)分析思想應(yīng)用于協(xié)議逆向分析領(lǐng)域,依據(jù)字段語義的不可分割性,在語義層次實(shí)現(xiàn)協(xié)議字段識(shí)別。文獻(xiàn)[8]針對(duì)現(xiàn)有協(xié)議格式逆向方法在現(xiàn)實(shí)中復(fù)雜語義環(huán)境下存在的逆向準(zhǔn)確度不高的問題,利用“協(xié)議結(jié)構(gòu)與代碼數(shù)據(jù)結(jié)構(gòu)之間的協(xié)同映射”這一規(guī)律,提出識(shí)別數(shù)據(jù)結(jié)構(gòu)的協(xié)議格式逆向方法。文獻(xiàn)[9]將隱式馬爾科夫模型用于應(yīng)用層網(wǎng)絡(luò)協(xié)議報(bào)文建模,刻畫報(bào)文的字段跳轉(zhuǎn)規(guī)律和字段內(nèi)的馬爾科夫性質(zhì),基于最大似然概率準(zhǔn)則確定協(xié)議關(guān)鍵詞的長度,自動(dòng)重構(gòu)協(xié)議的報(bào)文格式。文獻(xiàn)[10]通過報(bào)文分類、多序列對(duì)比和特定域識(shí)別等多個(gè)階段,實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議報(bào)文結(jié)構(gòu)的自動(dòng)識(shí)別。
在未知協(xié)議數(shù)據(jù)分類方面:文獻(xiàn)[11]提出一種基于多模式匹配思想的網(wǎng)絡(luò)視頻流發(fā)現(xiàn)與分類算法;文獻(xiàn)[12]基于載荷部分字節(jié)的編碼,實(shí)現(xiàn)對(duì)混合流量按應(yīng)用類型進(jìn)行有效分類;文獻(xiàn)[13]利用載荷大小、分組的信息熵等網(wǎng)絡(luò)流量特征,利用最短劃分距離的方法構(gòu)建分類模型,實(shí)現(xiàn)在線網(wǎng)絡(luò)流量分類;文獻(xiàn)[14]基于隱式馬爾科夫模型,分別結(jié)合報(bào)文長度和到達(dá)時(shí)間間隔兩種行為模式對(duì)應(yīng)用協(xié)議進(jìn)行分類;文獻(xiàn)[15]在文獻(xiàn)[14]的基礎(chǔ)上利用k均值聚類方法建立一種混合模型,能準(zhǔn)確地識(shí)別同時(shí)具有多種行為模式的應(yīng)用協(xié)議,分類準(zhǔn)確率較文獻(xiàn)[14]提升超過30%。然而文獻(xiàn)[11-15]都只適用于對(duì)網(wǎng)絡(luò)層以上的協(xié)議進(jìn)行識(shí)別分類,無法處理未知的鏈路層比特流數(shù)據(jù)。
本文基于協(xié)議格式特征的一般規(guī)律,通過鏈路幀預(yù)編碼、固定域挖掘從幀樣本集合中提取協(xié)議格式特征并計(jì)算格式特征向量,在此基礎(chǔ)上計(jì)算鏈路幀與格式特征的特征向量之間的加權(quán)歐氏距離,基于歐氏距離實(shí)現(xiàn)對(duì)未知鏈路幀的有效分類。本文的創(chuàng)新點(diǎn)包括:1)提供一種通過預(yù)編碼與固定域挖掘提取幀格式特征的方法,保證幀格式特征提取的完整性;2)提出一種基于特征向量加權(quán)歐氏距離的鏈路幀分類方式,確保鏈路幀分類的準(zhǔn)確性。
通常情況下,對(duì)一種鏈路幀而言,當(dāng)其承載的上層負(fù)載類型確定之后,其格式特征可抽象概括成如圖1所示的固定域與可變域間隔出現(xiàn)的形式。
圖1 協(xié)議格式特征Fig.1 Protocol format feature
其中,固定域是指在鏈路幀中出現(xiàn)位置固定,且長度和比特內(nèi)容均固定的比特字段。這些固定域一般以幀頭同步序列、協(xié)議版本號(hào)、長度字段和端口號(hào)等形式出現(xiàn)。以以太網(wǎng)中傳輸http數(shù)據(jù)的以太幀為例(假設(shè)網(wǎng)絡(luò)層為IPv4協(xié)議,TCP的源端口號(hào)為http默認(rèn)端口80端口),其固定域與可變域間隔的格式特征如表1所示。
表1中7*0xAA+0xAB為以太幀頭部的同步序列,用于標(biāo)識(shí)一個(gè)以太幀的開始,在所有以太幀中都相同。固定域0x0800為以太幀頭部標(biāo)識(shí)負(fù)載類型為IPv4數(shù)據(jù)包的類型碼,0x45為IPv4頭部的版本號(hào)和長度字段。1 byte長的固定域0x06為IPv4頭部標(biāo)識(shí)傳輸層協(xié)議類型為TCP協(xié)議的協(xié)議字段,最后一個(gè)固定域?yàn)闃?biāo)識(shí)http協(xié)議的TCP端口號(hào)80(0x0050,表1中假設(shè)為源端口號(hào))。通常情況下,在以太網(wǎng)中傳輸http數(shù)據(jù)的以太幀均具有表1所示的固定域與變化域相間的格式特征。
表1 傳輸http數(shù)據(jù)的以太幀格式特征
基于以上分析我們認(rèn)為,如果幀的鏈路協(xié)議類型確定,同時(shí)傳輸?shù)纳蠈迂?fù)載確定,那么其對(duì)應(yīng)的固定域和變化域相間的格式特征是唯一確定的。未知鏈路幀格式特征提取與分類的目標(biāo)是在缺乏先驗(yàn)知識(shí)的情況下,提取鏈路幀的格式特征,按格式特征對(duì)鏈路幀進(jìn)行分類。格式特征提取的核心是幀格式中固定域的挖掘,即幀內(nèi)位置固定、比特內(nèi)容固定的序列的挖掘。
提取協(xié)議格式特征時(shí),為降低特征提取的時(shí)間開銷,首先對(duì)待分析的協(xié)議數(shù)據(jù)集按一定的比例進(jìn)行抽樣,從抽取的數(shù)據(jù)樣本集合中提取協(xié)議格式特征。
為提取協(xié)議格式特征,必須挖掘格式特征中的固定域。固定域在鏈路幀中出現(xiàn)位置固定,且長度和比特內(nèi)容均固定,因此挖掘固定域必須同時(shí)考慮比特序列在鏈路幀中的“位置”和“比特內(nèi)容”兩個(gè)因素,排除其他位置隨機(jī)出現(xiàn)的內(nèi)容相同的比特序列的干擾。
為便于在固定域挖掘時(shí)同時(shí)考慮序列的“位置”和“比特內(nèi)容”,在挖掘之前需要對(duì)鏈路幀原始比特序列進(jìn)行預(yù)編碼處理。預(yù)編碼以字節(jié)為基本單位進(jìn)行,每個(gè)字節(jié)經(jīng)編碼映射為5個(gè)字符。前3個(gè)字符為該字節(jié)偏移的16進(jìn)制表示,從零開始計(jì)數(shù),其中字節(jié)偏移是指該字節(jié)在所屬鏈路幀的位置序號(hào),第4、5個(gè)字符為該字節(jié)的16進(jìn)制表示值[6]。表2給出對(duì)一條鏈路幀的原始比特序列按此方式進(jìn)行預(yù)編碼的示例。
表2 鏈路幀預(yù)編碼示例
對(duì)鏈路幀樣本編碼完成之后,如果統(tǒng)計(jì)發(fā)現(xiàn)一個(gè)5字符元素(即對(duì)一字節(jié)編碼所得值)在編碼后的樣本集合中出現(xiàn)m次,即表明特定8比特序列在原始樣本集的鏈路幀的特定位置出現(xiàn)m次。后續(xù)的固定域挖掘?qū)⒁粋€(gè)字節(jié)編碼后所得的5個(gè)字符作為一個(gè)整體,以5字符為基本單位進(jìn)行。
鏈路幀樣本的預(yù)編碼完成之后,即可設(shè)定閾值參數(shù)在樣本集合中進(jìn)行固定域的提取。
由于樣本集合中的鏈路幀負(fù)載類型不盡相同,對(duì)于負(fù)載類型不同的鏈路幀,其固定域與可變域間隔出現(xiàn)的格式特征也不相同,具體體現(xiàn)在負(fù)載類型不同的鏈路幀,其格式特征中的固定域數(shù)量、固定域位置以及固定域比特內(nèi)容之間的差別。表3所示為承載的負(fù)載類型分別為ARP數(shù)據(jù)包和IPv4數(shù)據(jù)包(假設(shè)應(yīng)用層協(xié)議為http)的以太幀格式特征(為便于表示,表中僅按序以預(yù)編碼之后的形式列出兩種幀格式中的固定域)。
表3 以太幀格式特征
假設(shè)我們的鏈路幀樣本中只存在表3中兩種類型的鏈路幀,與幀格式中的可變域相比,樣本集合中鏈路幀的固定域會(huì)呈現(xiàn)出固定不變(如固定域1的同步序列)或低頻變化(如固定域4和5)的特征。固定域的低頻變化特性指的是,在幀樣本集合中,在鏈路幀的某一位置(如固定域4的位置00E)處出現(xiàn)的固定域種類較少(表3中僅00E00與00E45兩種)且特定固定域出現(xiàn)頻率較高的特性(在樣本容量n一定時(shí),固定域種類數(shù)k較少必然使得其中至少一種固定域出現(xiàn)頻率較高)。
基于以上分析,我們?cè)趶念A(yù)編碼后的鏈路幀樣本集合中挖掘固定域時(shí)設(shè)定如下兩個(gè)閾值參數(shù):
1)支持度閾值sup
設(shè)某個(gè)元素(即編碼后的5字符基本單位)在幀樣本集合中出現(xiàn)次數(shù)為m,樣本容量為n,當(dāng)m/n不低于sup時(shí)認(rèn)為該元素為可能的固定域(頻繁元素)。
2)種類數(shù)閾值k
在鏈路幀樣本集合中,某頻繁元素所處位置處的元素種類數(shù)k0不超過k時(shí),認(rèn)為該頻繁元素為幀格式中的固定域。
幀格式中的固定域在包含多種類型負(fù)載的幀樣本集合中除呈現(xiàn)低頻變化特性,不同位置的固定域出現(xiàn)的頻率也不完全相同,一般幀格式中位置靠后的固定域在樣本集合中出現(xiàn)頻率會(huì)低于位置靠前的固定域。以表4的樣本集合為例,假設(shè)樣本容量為1 000,上層協(xié)議類型及數(shù)量如表4所示。
表4 鏈路幀樣本集合示例
對(duì)Ethernet-IPv4-UDP類型來說,位置靠前的固定域1~4為3種類型所共有,在幀集合中出現(xiàn)的頻率均為1 000,而固定域01717為Ethernet-IPv4-UDP類型特有,只出現(xiàn)300次。在設(shè)定的支持度閾值參數(shù)較高時(shí),這種在格式特征中出現(xiàn)位置靠后且頻率較低的固定域往往會(huì)因?yàn)檫_(dá)不到閾值要求而不能被挖掘出來,導(dǎo)致最終提取出的格式特征不完整。
為解決上述問題,提取出盡可能完整的幀格式特征,將第一次挖掘出的固定域緩存在一個(gè)固定域集合中,同時(shí)記錄各固定域所屬的幀,將包含同一固定域的幀作為一個(gè)樣本子集,將原始幀樣本集合按包含固定域的不同劃分為若干子集,幀集合的一個(gè)子集即對(duì)應(yīng)一個(gè)固定域。將樣本分集之后,按設(shè)定的閾值參數(shù)(sup,k)在各子集中分別繼續(xù)進(jìn)行固定域挖掘,將挖掘出的固定域繼續(xù)緩存在固定域集合中,同時(shí)記錄各固定域所屬的幀,并依此將各幀集合再次分為若干個(gè)子集。重復(fù)此過程,直到不能再挖掘出滿足閾值(sup,k)的固定域?yàn)橹埂?/p>
按2.2節(jié)所述方式挖掘固定域,所得的是若干固定域組成的無序集合,為了從挖掘出的固定域中獲得完整的協(xié)議格式特征,在從鏈路幀樣本集合中挖掘出固定域之后,需要按照一定的方式將固定域組織成樹結(jié)構(gòu)。
假設(shè)存在如圖2所示的固定域挖掘過程,在此過程中,第一次從鏈路幀樣本集合(記為set1)提取出固定域000AA、010AB和010AC,其中000AA為所有鏈路幀樣本共有,包含固定域010AB與010AC的幀分別構(gòu)成子集set2、set3。在set2中繼續(xù)挖掘固定域得到020EF(對(duì)應(yīng)的幀子集為set4)與020AF(對(duì)應(yīng)的幀子集為set5),在set3中繼續(xù)挖掘固定域得到03156(對(duì)應(yīng)的幀子集為set6)與031EF(對(duì)應(yīng)的幀子集為set7)。
圖2 固定域挖掘與鏈路幀分集Fig.2 Fixed-field mining and link frame separation
可根據(jù)挖掘的先后順序與固定域所屬幀集合之間的包含關(guān)系,將所有固定域組織成如圖3所示的樹結(jié)構(gòu)。圖3樹結(jié)構(gòu)中的一條路徑即對(duì)應(yīng)一種類型的格式特征。
圖3 固定域樹結(jié)構(gòu)Fig.3 Tree structure of fixed-field
獲得固定域的樹結(jié)構(gòu)之后,可為每種格式特征(formati,即樹結(jié)構(gòu)中的路徑)建立特征向量,formati的特征向量定義為k維向量:Vi=(vi1,vi2,vi3,…,vik),其中k為樹結(jié)構(gòu)中的固定域總數(shù),
(1)
式中:patternj表示樹結(jié)構(gòu)中的一個(gè)節(jié)點(diǎn)(即一個(gè)固定域);vij與樹結(jié)構(gòu)中的固定域一一對(duì)應(yīng),當(dāng)formati包含固定域patternj時(shí)vij取1,否則取0。按此定義,圖3中的4種format對(duì)應(yīng)的特征向量計(jì)算結(jié)果如表5所示。
表5 特征向量計(jì)算結(jié)果
至此,完成鏈路幀樣本集合中幀格式特征的提取,每種結(jié)構(gòu)特征均以特征向量形式表示,后續(xù)的幀分類即可基于幀格式的特征向量進(jìn)行。
為了描述一條鏈路幀在多大程度上符合從幀樣本集合中提取出的一種格式特征,與格式特征的特征向量類似,為鏈路幀framei定義特征向量:
Frai=(fi1,fi2,fi3,…,fik).
(2)
式中:k為樹結(jié)構(gòu)中的固定域總數(shù);與vij類似,fij(j=1,2,…,k)與樹結(jié)構(gòu)中的固定域一一對(duì)應(yīng),當(dāng)framei包含固定域patternj時(shí)fij取1,否則取0。
在計(jì)算出鏈路幀framei的特征向量之后,為將鏈路幀framei劃分到與之格式最接近的格式類型,定義framei與格式formatj之間的距離為Frai與Vj之間的加權(quán)歐氏距離:
(3)
式中:n為固定域樹結(jié)構(gòu)深度;m為fik(或vik)對(duì)應(yīng)固定域(節(jié)點(diǎn))在樹結(jié)構(gòu)中所處的層次;α為大于1的常數(shù)。由于提取固定域時(shí)采取的是對(duì)樣本不斷分集分步挖掘的方式,因此位置越靠后(對(duì)應(yīng)樹結(jié)構(gòu)中層次越深)的固定域提取時(shí)所用樣本數(shù)越少,其可信度逐層降低,αn-m的作用是使得位置靠前的固定域在計(jì)算距離時(shí)所占權(quán)重增大,位置越靠后所占權(quán)重減小以提高分類準(zhǔn)確率。
計(jì)算出鏈路幀framei與各個(gè)format之間的距離之后,比較距離大小,將鏈路幀framei劃分到與其距離最小的format類。
本文采用實(shí)際數(shù)據(jù)對(duì)算法進(jìn)行測(cè)試,使用Qt Creator 3.1.0平臺(tái)實(shí)現(xiàn)所提出的算法,硬件配置為:Intel i5-2 450 M,2.5 GHz,雙核CPU,RAM 4 GB。
為驗(yàn)證算法的有效性,實(shí)驗(yàn)采用Wireshark實(shí)際抓獲的Ethernet數(shù)據(jù)集,大小為35.6 MB,共包含12 040個(gè)Ethernet幀,數(shù)據(jù)集中的各層協(xié)議組成如圖4所示。
圖4 數(shù)據(jù)集的組成Fig.4 Composition of the data set
4.1.1 格式特征提取
從數(shù)據(jù)集中抽取1 200個(gè)Ethernet幀作為樣本,分別設(shè)定支持度閾值參數(shù)sup=0.45,種類數(shù)閾值參數(shù)k=2在幀樣本集合中進(jìn)行固定域提取,所得固定域樹結(jié)構(gòu)如圖5所示。
圖5 從樣本集合中提取的固定域樹結(jié)構(gòu)Fig.5 Fixed-field tree structure extracted from the sample set
為方便表示,圖中將位置連續(xù)的固定域合并后表示,如固定域p1:(00C)08004500,是由位置連續(xù)的4個(gè)固定域00C08,00D00,00E45以及00F00合并而成,合并后保留第一個(gè)固定域的位置信息00C;尾部帶*的固定域,如p0(幀頭同步序列),p1(IPv4類型碼及頭部版本號(hào)字段),p2(ARP類型碼及頭部固定字段),表示正確提取出的固定域,這些固定域存在于相應(yīng)類型鏈路幀格式特征中,尾部不含*的固定域是由于樣本集的選取與參數(shù)設(shè)置原因?qū)е碌摹皞喂潭ㄓ颉保溌穾袷教卣髦胁缓@些固定域。自根節(jié)點(diǎn)p0到每個(gè)葉子節(jié)點(diǎn)有且僅有一條路徑,圖5中將所有路徑按在樹結(jié)構(gòu)中從左到右的順序依次記為路徑1,…,路徑13。
圖5中,重點(diǎn)關(guān)注將正確提取出來的固定域按序組織后可表征的幀格式類型,如表6所示。從表6可以看出,在提取出的圖5所示的樹結(jié)構(gòu)中,提取正確的固定域可按序組織成5種有效的幀類型格式特征。
4.1.2 鏈路幀分類
基于4.1.1提取的固定域樹結(jié)構(gòu),按第3節(jié)中的方式計(jì)算格式特征與鏈路幀的特征向量,取α=1.2,根據(jù)特征向量間的加權(quán)歐氏距離確定鏈路幀所屬的路徑,對(duì)鏈路幀進(jìn)行分類,分類結(jié)果如表7所示。
表6 固定域組合與幀類型的對(duì)應(yīng)關(guān)系
從表7可以看出,基于加權(quán)歐氏距離對(duì)鏈路幀進(jìn)行分類時(shí),雖然樹結(jié)構(gòu)中存在部分“偽固定域”,但由于其出現(xiàn)位置靠后且分類時(shí)取α=1.2,“偽固定域”在分類時(shí)所占權(quán)重較小,不影響分類的準(zhǔn)確性,所有類型的幀均能被正確劃分到對(duì)應(yīng)的路徑(即幀格式類型)。
4.2.1 閾值參數(shù)對(duì)算法的影響
在算法設(shè)計(jì)中,固定域的挖掘涉及閾值參數(shù)(sup,k)的設(shè)置,為分析參數(shù)(sup,k)對(duì)算法的影響,實(shí)驗(yàn)采用4.1節(jié)相同的數(shù)據(jù)集,調(diào)整參數(shù)取值觀察實(shí)驗(yàn)結(jié)果。為簡(jiǎn)化輸出結(jié)果,未列出設(shè)置不同參數(shù)時(shí)提取出的具體固定域樹結(jié)構(gòu),而是以表格形式給出樹結(jié)構(gòu)中的固定域數(shù)目、路徑數(shù)和格式特征類型等信息,具體實(shí)驗(yàn)結(jié)果如表8所示(在統(tǒng)計(jì)樹結(jié)構(gòu)中固定域數(shù)目時(shí),挖掘出的一個(gè)固定5字符元素即作為一個(gè)固定域,不對(duì)固定域進(jìn)行合并)。由表8可知,隨著閾值的降低(支持度參數(shù)sup降低,種類數(shù)參數(shù)k增大),算法提取出的固定域總數(shù)增多,其中包含的正確固定域數(shù)目增多,相應(yīng)的樹結(jié)構(gòu)中的路徑總數(shù)和包含的格式特征類型數(shù)也隨之增多。通過降低閾值參數(shù)可從樣本集提取出更豐富的協(xié)議格式信息,實(shí)現(xiàn)對(duì)鏈路幀更細(xì)粒度的分類。
表7 分類結(jié)果
對(duì)比sup=0.45時(shí)k取值分別為2、3、4的情形可以發(fā)現(xiàn),降低閾值參數(shù)雖然使得正確挖掘出的固定域數(shù)增多,但方案提取出的有效特征類型數(shù)相同。這是由于因?yàn)閯澐肿蛹瘜?dǎo)致樣本集容量不斷減小,使得應(yīng)用類型特征相關(guān)的固定域不能完整挖掘出來,方案未能獲得完整的自鏈路層至應(yīng)用層的協(xié)議格式特征。在這3種情形下,方案正確提取出的幀格式特征數(shù)以及分類粒度相同。
表8 閾值參數(shù)對(duì)算法的影響
降低閾值參數(shù)在獲取更豐富的協(xié)議格式信息的同時(shí),由于固定域數(shù)量的增多,使得特征向量長度增大,鏈路幀特征向量以及基于加權(quán)歐氏距離的分類所需計(jì)算量增大,使得方案耗時(shí)增多。
4.2.2 權(quán)重參數(shù)α對(duì)算法的影響
在算法設(shè)計(jì)中,固定域的挖掘涉及權(quán)重參數(shù)α的設(shè)置,為分析參數(shù)α對(duì)算法分類準(zhǔn)確率的影響,實(shí)驗(yàn)采用4.1節(jié)相同的數(shù)據(jù)集,設(shè)置sup=0.45,k=2,分別取α=1.1、1.0和0.9進(jìn)行鏈路幀分類并計(jì)算準(zhǔn)確率,結(jié)果如表9所示。
表9 α對(duì)分類準(zhǔn)確率的影響
從表9可以看出,當(dāng)α≥1時(shí),由于固定域樹結(jié)構(gòu)中的“偽固定域”在分類時(shí)所占權(quán)重不高于正確提取的固定域,方案可以實(shí)現(xiàn)對(duì)鏈路幀所屬類型的正確劃分;當(dāng)α<1時(shí),由于固定域樹結(jié)構(gòu)中的部分“偽固定域”在分類時(shí)所占權(quán)重超過正確提取的固定域,“偽固定域”對(duì)鏈路幀的分類造成干擾,使得部分類型的鏈路幀的分類準(zhǔn)確率降低。因此,方案在對(duì)鏈路幀進(jìn)行分類時(shí),一般取α≥1。
以上實(shí)驗(yàn)結(jié)果表明,對(duì)結(jié)構(gòu)中存在固定域與變化域間隔出現(xiàn)的格式特征的鏈路幀數(shù)據(jù)集,方案可正確提取出其中的格式特征并基于格式特征實(shí)現(xiàn)對(duì)鏈路幀的有效分類。
在私有協(xié)議廣泛應(yīng)用的背景下,對(duì)采用私有協(xié)議傳輸?shù)臄?shù)據(jù),如何在缺乏先驗(yàn)知識(shí)的情況下獲取數(shù)據(jù)承載的有用信息是一項(xiàng)重要的研究課題。本文分析協(xié)議格式的一般特征,根據(jù)協(xié)議格式的一般特征設(shè)定門限參數(shù)從未知鏈路幀樣本集合中提取協(xié)議格式特征并計(jì)算特征向量,在此基礎(chǔ)上利用特征向量之間的加權(quán)歐氏距離實(shí)現(xiàn)對(duì)未知鏈路幀的有效分類。最后利用實(shí)際數(shù)據(jù)實(shí)驗(yàn)驗(yàn)證方案的有效性,實(shí)驗(yàn)結(jié)果表明方案能實(shí)現(xiàn)缺乏先驗(yàn)知識(shí)情形下的未知協(xié)議格式解析與數(shù)據(jù)分類,為后續(xù)協(xié)議詳細(xì)信息的進(jìn)一步分析奠定了基礎(chǔ)。