亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于網(wǎng)絡(luò)流量分析的二進制協(xié)議逆向方法

        2016-06-08 06:48:54陳佳瑩
        現(xiàn)代計算機 2016年13期
        關(guān)鍵詞:關(guān)聯(lián)

        陳佳瑩

        (西南交通大學(xué)電氣工程學(xué)院,成都 610031)

        ?

        基于網(wǎng)絡(luò)流量分析的二進制協(xié)議逆向方法

        陳佳瑩

        (西南交通大學(xué)電氣工程學(xué)院,成都610031)

        摘要:

        關(guān)鍵詞:

        0 引言

        隨著以通信網(wǎng)絡(luò)技術(shù)為主導(dǎo)的新軍事革命的興起,信息網(wǎng)絡(luò)已迅速延伸到軍事領(lǐng)域的每一個角落,網(wǎng)絡(luò)對抗作為一種新的作戰(zhàn)方式登上舞臺[1-2]。在網(wǎng)絡(luò)對抗中,從截獲的通信流比特數(shù)據(jù)中識別出對方的協(xié)議類型,挖掘其協(xié)議規(guī)范是獲取對方網(wǎng)絡(luò)結(jié)構(gòu)情況甚至于高層信息的基礎(chǔ)?,F(xiàn)有的網(wǎng)絡(luò)安全檢測手段和協(xié)議識別方法都需要完整的協(xié)議規(guī)范作為先驗知識,所以,自動的未知協(xié)議逆向工程成為當(dāng)今研究的熱點。

        現(xiàn)有的協(xié)議逆向方法大致分為兩類[3]:基于網(wǎng)絡(luò)流量分析的方法和基于執(zhí)行軌跡分析方法。前者依據(jù)報文字節(jié)取值的變化頻率和特征來提取協(xié)議報文格式。后者是在二進制代碼層跟蹤服務(wù)器程序處理報文各個字段所調(diào)用的不同指令,從而推導(dǎo)各個字段的語法語義。相對于執(zhí)行軌跡分析,網(wǎng)絡(luò)流量分析的實現(xiàn)與協(xié)議平臺無關(guān),并且不需要二進制執(zhí)行信息,更為通用,也因此得到研究者的廣泛關(guān)注[4]。PI項目[5]最早提出基于網(wǎng)絡(luò)流量分析的協(xié)議逆向方法,該方法引入生物信息學(xué)中的漸進序列比對算法,有效地降低了大規(guī)模樣本序列比對的時間復(fù)雜度,但這種方法適用于各字段都是固定長度的報文,如果報文中存在可變長度的字段,比對結(jié)果會產(chǎn)生很大的誤差。Paxson[6]等人提出一種協(xié)議識別方案RolePlayer,該方法實現(xiàn)了對捕獲的數(shù)據(jù)流中的終端信息、長度域、Cookie等語義字段的定位,并通過關(guān)鍵字段的替換達到自動交互的效果。但這種方法沒有提取出報文格式,流量稍有變化就無法識別。此外,上述兩種方法都是針對于單一格式的數(shù)據(jù)流,不適用于網(wǎng)絡(luò)對抗中存在的混合著多種協(xié)議的數(shù)據(jù)流。

        基于上述問題,本文提出一種二進制協(xié)議逆向方法,該方法利用字節(jié)在網(wǎng)絡(luò)流中取值變化的規(guī)律,實現(xiàn)了不同類未知協(xié)議數(shù)據(jù)幀的分離和報文格式的域劃分。在此基礎(chǔ)上結(jié)合語義對報文進行字段定界,并通過多序列比對和迭代搜索挖掘變長域,達到提取報文格式的目的。

        1 系統(tǒng)框架

        基于網(wǎng)絡(luò)流量分析方法的基本思想是通過比對多個相同類型的報文來推導(dǎo)報文格式。首要解決的問題是如何將樣本集中的不同報文聚成不同的類,使得每一類中只包含一種類型的報文,才能確保后續(xù)協(xié)議逆向的準(zhǔn)確度;其次是要考慮如何在確保字節(jié)對齊的基礎(chǔ)上比對同一字段在多個報文中的取值進行字段的定界從而獲取報文格式。

        因此,本文將協(xié)議逆向分成兩個階段,即數(shù)據(jù)幀分離階段和協(xié)議格式提取階段。首先抽取網(wǎng)絡(luò)流的字節(jié)取值特性進行關(guān)聯(lián)項的挖掘,建立關(guān)聯(lián)樹,遍歷關(guān)聯(lián)樹得到的關(guān)聯(lián)規(guī)則作為聚類中心達到幀分離的目的;然后對相同格式的報文序列進行字段定界以及可變域的序列比對,最后提取協(xié)議的格式包括固定域、長度域、目的域以及一些特定語義字段如地址、標(biāo)識符等。圖1表示系統(tǒng)的整體框架與流程。

        圖1 系統(tǒng)框架與流程

        2 基于關(guān)聯(lián)樹的幀分離方法

        由OSI模型可知,網(wǎng)絡(luò)協(xié)議是一組不同層次上多種協(xié)議的組合,上層協(xié)議的格式一般通過下層協(xié)議中的格式標(biāo)識字段來決定。這種網(wǎng)絡(luò)協(xié)議嚴(yán)格分層的特點為協(xié)議聚類提供了根本依據(jù)。此外,絕大多數(shù)的網(wǎng)絡(luò)協(xié)議都會在報文格式中定義若干個控制字段用來標(biāo)識報文的類型和傳遞控制信息,這些字段通常是協(xié)議的各種命令和響應(yīng)碼,如果以控制字段為基準(zhǔn),可以對相同類型的報文作進一步的比對得到更為精準(zhǔn)的字段格式。無論是標(biāo)識字段還是控制字段都會在樣本集中頻繁的出現(xiàn)[7],可以挖掘出來作為關(guān)鍵字,本文稱之為關(guān)聯(lián)項。

        將同一位置上的所有關(guān)聯(lián)項看作同一層,根據(jù)置信度把不同層次的關(guān)聯(lián)項聯(lián)系起來就形成一棵關(guān)聯(lián)樹,遍歷該關(guān)聯(lián)樹得到的每一條路徑就對應(yīng)一條關(guān)聯(lián)規(guī)則。將關(guān)聯(lián)規(guī)則作為聚類中心,就可以把數(shù)據(jù)流中不同協(xié)議分離開。

        2.1關(guān)聯(lián)項的挖掘

        根據(jù)協(xié)議標(biāo)識字段以及控制字段的取值較為固定的特點[9],以字節(jié)為單位對樣本中所有序列進行從左往右逐一掃描,若某位置上字節(jié)的取值種類不超過類型上限閾值,則將該位置上所有的字節(jié)取值作為關(guān)聯(lián)項候選項。

        本文使用文獻[7]中的頻繁串挖掘方法,實現(xiàn)僅對樣本集的序列掃描一次,即可得到任意長度模式序列的計數(shù)。挖掘出的頻繁特征由頻繁項及其在序列中的偏移量組成,第i個頻繁項表示為(fi,pi),其中pi表示該頻繁項的起始位置。假設(shè)樣本集Q共挖掘出n個頻繁項,按照起始位置從小到大的排列順序構(gòu)成特征集F={f1,f2,…,fn}。

        為了確保后續(xù)協(xié)議逆向的準(zhǔn)確性,必須對候選項進行篩選和合并操作。首先,篩選掉對應(yīng)的序列條數(shù)少于最小類下限閾值的候選項;其次對于偏移量連續(xù)的候選項進行合并,減少后續(xù)建樹的時間復(fù)雜度。

        2.2關(guān)聯(lián)樹的建立

        為了更好的說明關(guān)聯(lián)樹建立的過程,若位置i上找出k個候選項,則定義該位置的特征向量為:

        這里假設(shè)總共在四個位置上挖掘到關(guān)聯(lián)項,對應(yīng)的特征向量分別為:

        下面分三個步驟對于上述特征向量建立關(guān)聯(lián)樹:

        (1)將同一位置上所有關(guān)聯(lián)項看作同一層,分別計算相鄰兩層中所有關(guān)聯(lián)項之間的置信度,若置信度大于0,則將兩關(guān)聯(lián)項相連,結(jié)果如圖2所示。

        圖2 關(guān)聯(lián)樹初始化

        圖3 關(guān)聯(lián)樹化簡

        (3)對關(guān)聯(lián)樹進行遍歷得到最終的關(guān)聯(lián)規(guī)則,其中每條關(guān)聯(lián)規(guī)則都與一種協(xié)議格式相對應(yīng),但由于某種協(xié)議可能具有不同的狀態(tài),因此同一協(xié)議可能對應(yīng)多條關(guān)聯(lián)規(guī)則。

        3 格式識別

        網(wǎng)絡(luò)協(xié)議報文是由若干個字段組成,其中字段為具有特定語義的最小不可分割的連續(xù)字節(jié)序列。根據(jù)各字段在網(wǎng)絡(luò)流中的取值變化情況,可以將其分成固定域與可變域兩類[10]。變長域作為可變域中的一種特定語義字段,其起始位置和內(nèi)容長度在不同報文實例中均可能不同,容易證明,一旦可變域中包含了變長域,后續(xù)則不可能出現(xiàn)對齊的固定域。

        根據(jù)上述思想,提出一種基于域劃分的格式識別方法。方法以樣本集S為輸入,主要分為以下四個階段:

        (4)對于集合中每一個alterBlock2i調(diào)用函數(shù)lengthValidate()進行長度字段匹配,達到變長域的挖掘的目的。

        3.1字段定界

        根據(jù)2.1節(jié)中的統(tǒng)計結(jié)果,計算各對齊字節(jié)的取值變化率θi:

        其中Vi表示第i個字節(jié)取值的變化次數(shù),Ni表示序列個數(shù)。

        考慮到同一字段中取值變化率相似的特點,將變化率差值不超過5%[11]的連續(xù)字節(jié)劃分為字段。此外可以通過特定語義字段的特性對劃分結(jié)果進行核實和校對,本文主要考慮以下特性:

        (1)請求報文和響應(yīng)報文中的源地址和目的地址兩個字段是相互對調(diào)的;

        (2)在(1)的基礎(chǔ)上出現(xiàn)某連續(xù)字節(jié)在請求報文和響應(yīng)報文中取值相同,但是分別在連續(xù)的請求報文和連續(xù)的響應(yīng)報文中取值不重復(fù),那么合并該字節(jié);

        (3)將序列兩兩相減取長度差值,若存在某連續(xù)字節(jié)(通常優(yōu)先取兩個字節(jié))的差值等于序列長度差值,那么合并該連續(xù)字節(jié)為長度字段。

        3.2變長域的挖掘

        變長域通常由長度字段和目的字段組成,首先解析出長度字段,然后就可以根據(jù)長度字段的取值內(nèi)容進一步確定目的字段的范圍。

        長度字段搜索是一個內(nèi)部迭代的過程,其核心思想是:從報文的首部開始假定字節(jié)(組)L為長度字段(一般為1~2個字節(jié)),根據(jù)字節(jié)L的取值截取相應(yīng)長度的字節(jié)序列S作為目的字段,當(dāng)滿足如下條件之一即可結(jié)束本次搜索:1)字節(jié)L的取值對應(yīng)的長度超出了搜索范圍;2)序列S的后續(xù)字節(jié)個數(shù)小于默認(rèn)長度,本文設(shè)置為2。每次搜索結(jié)果用長度向量(offset,count)的形式保存,其中offset表示首個長度字段的位置,count表示變長域中(L,S)組合的個數(shù)。最終迭代搜索之后得到一個長度向量集合。

        每一條序列報文都對應(yīng)這樣一個向量集合,若集合存在交集,那么該交集就是最終識別的變長域中的長度字段。

        4 實驗與結(jié)果分析

        4.1數(shù)據(jù)集的獲取

        本文對四種常見二進制協(xié)議進行實驗,分別是ICMP、ARP、DNS、OICQ協(xié)議。將數(shù)據(jù)集分成兩部分,一部分作為訓(xùn)練集,另外一部分作為測試集,其中訓(xùn)練集只包含上述四種標(biāo)準(zhǔn)協(xié)議,測試集中另外包含未出現(xiàn)的自定義協(xié)議用來測試該方法對于未知協(xié)議的識別能力。在數(shù)據(jù)獲取的過程中,盡可能多的獲取相同格式報文的不同實例,保證樣本的多樣性,避免產(chǎn)生過多冗余的關(guān)聯(lián)項,從而提高后續(xù)格式提取的準(zhǔn)確度。

        4.2聚類效果分析

        對測試集中的四種標(biāo)準(zhǔn)協(xié)議按照前面介紹的頻繁項發(fā)掘方法,設(shè)置合適的閾值構(gòu)造關(guān)聯(lián)樹如圖4所示。遍歷上述關(guān)聯(lián)樹,得到的關(guān)聯(lián)規(guī)則與協(xié)議對應(yīng)關(guān)系如下表1所示。

        由統(tǒng)計結(jié)果可以看出,以規(guī)則1,2為聚類中心的協(xié)議類型為DNS,以規(guī)則3為聚類中心的協(xié)議類型為OICQ,以規(guī)則4為聚類中心的協(xié)議類型為ICMP,以規(guī)則5,6為聚類中心的協(xié)議類型為ARP。在分離四種協(xié)議的基礎(chǔ)上根據(jù)DNS和ARP協(xié)議中的標(biāo)識符進一步劃分了子類。說明隨著挖掘的關(guān)聯(lián)項層次越深,聚類的粒度越細,格式越精確。

        圖4 關(guān)聯(lián)樹示例

        表1 關(guān)聯(lián)規(guī)則與協(xié)議對應(yīng)關(guān)系

        4.3格式識別效果分析

        為了對比結(jié)構(gòu)識別的準(zhǔn)確率,將本文方法和文獻[8]方法的識別結(jié)果相對比,其中標(biāo)準(zhǔn)協(xié)議的識別結(jié)果和Wireshark的解析結(jié)果進行對比,未知協(xié)議和預(yù)先定義的語法語義規(guī)則對比,統(tǒng)計字段邊界劃分正確的字段所占比率,如圖5所示。

        圖5 字段識別正確率對比

        由圖5中的對比數(shù)據(jù)可以看出,對于結(jié)構(gòu)固定的ICMP協(xié)議兩個方法的識別準(zhǔn)確率相差相對較小,而對于存在變長域的DNS協(xié)議和具有較長冗余負載數(shù)據(jù)的OICQ協(xié)議,本文方法的優(yōu)勢比較明顯,因為文獻[8]中的方法對字段的劃分必須通過多序列對比來判斷,而變長域和負載數(shù)據(jù)都會對序列比對的過程進行干擾,降低識別率。對于ARP協(xié)議,兩種方法的識別率都不高,文獻[8]方法的識別率更是接近于0,這是因為ARP協(xié)議產(chǎn)生的報文實例過于單一化,從字節(jié)對齊的方面考慮完全無法進行字段劃分,只有根據(jù)文中3.1節(jié)提到的語義特性才能對某些字段進行推斷。

        變長域由于其起始位置和內(nèi)容長度在不同報文實例中均可能不同,在逆向解析中識別度較低。為提高變長域的識別率,本文做了如下技術(shù)處理:(1)結(jié)合域劃分和多序列對比對待測試報文序列進行處理,縮小可變域的搜索區(qū)域,同時減少搜索算法對于取值較小字節(jié)的敏感度;(2)在相同格式的多個報文實例中進行推斷結(jié)果的驗證,減小變長域的誤報率。將DNS作為實驗數(shù)據(jù)統(tǒng)計長度字段的識別率、誤識別率和搜索時間開銷,統(tǒng)計結(jié)果如表2所示。

        表2 識別率、誤識別率和搜索時間開銷比較

        由表2可以看出,利用域劃分和多序列比對算法對報文序列進行處理之后,通過縮小可變域的搜索區(qū)域大幅度減小了時間開銷,并在此基礎(chǔ)上提高了長度字段的識別率和降低誤識別率。說明本方法對于類似DNS這種變長域結(jié)構(gòu)較集中的協(xié)議,長度字段搜索的效率和準(zhǔn)確率都有大幅度提高。

        5 結(jié)語

        針對目前基于網(wǎng)絡(luò)流量分析方法只適用于較為單一數(shù)據(jù)幀格式的逆向解析以及在序列較長情況下對變長域的逆向準(zhǔn)確率不高而且效率低下的問題。本文首先利用協(xié)議的層次結(jié)構(gòu)通過挖掘關(guān)鍵字之間的關(guān)聯(lián)規(guī)則對不同格式的協(xié)議進行聚類;然后對于同一類中的序列進行格式提取,在字段定界過程中增加語義特性的判斷,在變長域挖掘之前對序列進行域劃分并截取,大幅度縮減比對序列的長度,在提高長度字段識別準(zhǔn)確率的同時減小了算法的時間復(fù)雜度。在下一步的工作中,將研究網(wǎng)絡(luò)協(xié)議其他語義字段的逆向。

        參考文獻:

        [1]黃漢文.空間網(wǎng)絡(luò)對抗研究[J].航天電子對抗,2009,01:7-9+33.

        [2]張春瑞,劉淵,李芬,王開云.無線網(wǎng)絡(luò)對抗關(guān)鍵技術(shù)研究綜述[J].計算機工程與設(shè)計,2012,08:2906-2910+2975.

        [3]趙詠,姚秋林,張志斌,郭莉,方濱興. TPCAD:一種文本類多協(xié)議特征自動發(fā)現(xiàn)方法[J].通信學(xué)報,2009,S1:28-35.

        [4]黎敏,余順爭.抗噪的未知應(yīng)用層協(xié)議報文格式最佳分段方法[J].軟件學(xué)報,2013,03:604-617.

        [5]BEDDOE M. Protocol Information Project[EB/OL].[2012-18]. http://www.4tphi.net/~awalters/PI/pi.pdf.

        [6]Weidong Cui,et al. Protocol-Independent Adaptive Replay of Application Dialog. In The 13th Annual Network and Distributed System Security Symposium(NDSS 2006.

        [7]金凌.面向比特流的未知幀頭識別技術(shù)研究[D].上海交通大學(xué),2011.

        [8]Han J,Pei J,Yin Y,et al. Mining Frequent Patterns without Candidate Generation: A Frequent-Pattern Tree Approach[J]. Data Mining & Knowledge Discovery,2004,8(1):53-87.

        [9]Cui W,Kannan J,Wang H J. Discoverer: Automatic Protocol Reverse Engineering from Network Traces[C]. In Proceedings of the 16th USENIX Security Symposium(Security'07. 2007.

        [10]黃笑言,陳性元,祝寧,唐慧林.基于字節(jié)熵矢量加權(quán)指紋的二進制協(xié)議識別[J].計算機應(yīng)用研究,2015,02:493-497.

        [11]潘璠,洪征,杜有翔,吳禮發(fā).基于遞歸聚類的報文結(jié)構(gòu)提取方法[J].四川大學(xué)學(xué)報(工程科學(xué)版),2012,06:137-142.

        Reverse Engineering for Binary Protocol Based on Network Traces

        CHEN Jia-ying
        (College of Electrical Engineer,Southwest Jiaotong University,Chengdu 610031)

        Abstract:

        Keywords:

        對未知網(wǎng)絡(luò)協(xié)議進行逆向解析在網(wǎng)絡(luò)對抗應(yīng)用中具有重要意義。提出一種基于關(guān)聯(lián)樹構(gòu)造的聚類方法,通過挖掘網(wǎng)絡(luò)協(xié)議不同層次上關(guān)鍵字之間的聯(lián)系構(gòu)造關(guān)聯(lián)樹,將遍歷樹得到的關(guān)聯(lián)規(guī)則作為聚類的中心,從而達到對不同協(xié)議數(shù)據(jù)幀分離的效果;此外在字段定界過程中增加語義特性的判斷,在域劃分的基礎(chǔ)上利用多序列比對和迭代搜索實現(xiàn)變長域的挖掘。實驗表明,該方法在二進制協(xié)議聚類上效果顯著,同時提高字段識別準(zhǔn)確度,在協(xié)議逆向領(lǐng)域具有較高應(yīng)用價值。

        二進制協(xié)議;數(shù)據(jù)幀分離;關(guān)聯(lián)樹;協(xié)議逆向

        文章編號:1007-1423(2016)13-0011-05

        DOI:10.3969/j.issn.1007-1423.2016.13.003

        作者簡介:

        陳佳瑩(1991-),女,江西撫州人,研究生,研究方向為計算機網(wǎng)絡(luò)、協(xié)議逆向

        收稿日期:2016-01-07修稿日期:2016-04-25

        Reverse engineering for unknown network protocol has played an important role in the field of network countermeasure. Proposes a cluster method based on relevance-tree construction,first excavates the relationship between keywords in each layer of network protocol,then the relevance rules obtained by traversing the tree is used as the center of clustering and finally frames in different format was separated. In addition,protocol structure is extracted by identifying field boundaries and scanning variable region using multiple sequence alignment and iterative algorithm. Experiments show that the proposed method produces a remarkable effect in cluster and improves the accuracy of field identification,which is of important application value.

        Binary Protocol;Data Frame Separation;Relevance-Tree;Reverse Engineer

        猜你喜歡
        關(guān)聯(lián)
        不懼于新,不困于形——一道函數(shù)“關(guān)聯(lián)”題的剖析與拓展
        “苦”的關(guān)聯(lián)
        船山與宋學(xué)關(guān)聯(lián)的再探討
        原道(2020年2期)2020-12-21 05:47:06
        “一帶一路”遞進,關(guān)聯(lián)民生更緊
        新制度關(guān)聯(lián)、組織控制與社會組織的倡導(dǎo)行為
        奇趣搭配
        基于廣義關(guān)聯(lián)聚類圖的分層關(guān)聯(lián)多目標(biāo)跟蹤
        智趣
        讀者(2017年5期)2017-02-15 18:04:18
        探討藏醫(yī)學(xué)與因明學(xué)之間的關(guān)聯(lián)
        西藏科技(2016年5期)2016-09-26 12:16:39
        GPS異常監(jiān)測數(shù)據(jù)的關(guān)聯(lián)負選擇分步識別算法
        亚洲欧美成人在线免费| 女人被男人躁得好爽免费视频| 成人国产精品免费视频| 欧美日韩亚洲综合久久久| 亚洲天堂av在线免费播放| 亚洲成在人线视av| 台湾无码av一区二区三区| 亚洲阿v天堂网2021| av天堂在线免费播放| 老女老肥熟女一区二区| 国产麻豆md传媒视频| 精品无码久久久久久久久粉色| 国产91大片在线观看| 欧美成人家庭影院| 国产精品久久久久久影视| 正在播放淫亚洲| 日本视频一区二区三区| 五月综合激情婷婷六月| 国产精品天天狠天天看| 国产男女乱婬真视频免费| 大香蕉国产av一区二区三区| 国产精品兄妹在线观看麻豆| 欧美成人三级一区二区在线观看| 久久久亚洲女精品aa| 极品粉嫩小仙女高潮喷水网站| 欧美极品色午夜在线视频| 视频一区精品自拍| 日本国产精品高清在线| 国产丝袜美女| 国产精品亚洲日韩欧美色窝窝色欲| 自拍视频国产在线观看| 国产麻豆精品传媒av在线| 日本国产一区二区在线| 国产三级久久精品三级91| 欧美精品v国产精品v日韩精品| 欧美国产亚洲精品成人a v| 国产情侣自拍偷拍精品| 免费观看a级片| 996久久国产精品线观看| 日韩久久久黄色一级av| 久久精品国产在热亚洲不卡 |