孟凡治,劉 淵,張春瑞,李 桐
(中國工程物理研究院計算機應(yīng)用研究所,四川綿陽621900)
隨著互聯(lián)網(wǎng)的發(fā)展,網(wǎng)絡(luò)的安全形勢變得越來越嚴(yán)峻。通信協(xié)議是網(wǎng)絡(luò)的一個重要組成部分,協(xié)議規(guī)范是安全人員理解協(xié)議的根本。而在信息對抗領(lǐng)域,從截獲的電磁信號中識別出通信協(xié)議規(guī)范是獲取信息層信息的基礎(chǔ)。針對未公開的通信協(xié)議,從通信數(shù)據(jù)中挖掘協(xié)議規(guī)范已成為協(xié)議逆向分析的一個研究熱點。
協(xié)議規(guī)范挖掘分為語義和行為挖掘兩部分,語義挖掘主要指協(xié)議格式挖掘,行為挖掘則是狀態(tài)轉(zhuǎn)移關(guān)系挖掘[1]。現(xiàn)有研究多數(shù)只關(guān)注協(xié)議格式的逆向[2-4],而沒有關(guān)注協(xié)議狀態(tài)機的逆構(gòu)。僅少量研究分析了協(xié)議狀態(tài)機逆構(gòu)問題[5-7]。
文獻[8]提出了針對文本協(xié)議通過統(tǒng)計方法提取消息關(guān)鍵字,并根據(jù)消息關(guān)鍵字構(gòu)建協(xié)議狀態(tài)轉(zhuǎn)移關(guān)系。文獻[9]提出了概率狀態(tài)機模型的概念,通過統(tǒng)計狀態(tài)對在報文序列中出現(xiàn)的次數(shù)來計算狀態(tài)間的轉(zhuǎn)移概率。對于同一協(xié)議的不同會話數(shù)據(jù),該方法構(gòu)造出的狀態(tài)轉(zhuǎn)移關(guān)系將不同。
上面的研究成果僅針對文本協(xié)議。文獻[10]提出了基于狀態(tài)相關(guān)字段的二進制協(xié)議狀態(tài)轉(zhuǎn)移關(guān)系重構(gòu)方法,但該方法存在處理協(xié)議幀中存有未對齊字段的協(xié)議數(shù)據(jù)時將失效的缺陷。文獻[11]根據(jù)協(xié)議幀中最長公共子串對協(xié)議幀進行聚類與狀態(tài)標(biāo)記,由于協(xié)議狀態(tài)的轉(zhuǎn)換是由數(shù)據(jù)幀中關(guān)鍵字段引起,而不是由最長公共子串引起,因此該方法不太有效。
在二進制協(xié)議狀態(tài)逆構(gòu)過程中,協(xié)議狀態(tài)的有效提取是整個過程的難點。本文提出了基于對應(yīng)字段對齊和狀態(tài)相關(guān)字段識別的未知二進制協(xié)議狀態(tài)機重構(gòu)方法,該方法從通信數(shù)據(jù)中識別出協(xié)議幀中的狀態(tài)相關(guān)字段,并根據(jù)狀態(tài)相關(guān)字段的變化情況構(gòu)建二進制協(xié)議狀態(tài)轉(zhuǎn)移關(guān)系。最終基于該方法設(shè)計了一個根據(jù)通信數(shù)據(jù)逆構(gòu)協(xié)議狀態(tài)轉(zhuǎn)移關(guān)系的狀態(tài)機轉(zhuǎn)移圖重構(gòu)系統(tǒng)。在整個系統(tǒng)中,基于改進的漸進多序列比對算法的相應(yīng)字段對齊方法和基于字段統(tǒng)計量分析的狀態(tài)相關(guān)字段提取方法是從協(xié)議幀中準(zhǔn)確提取協(xié)議狀態(tài)的基礎(chǔ)。使用網(wǎng)絡(luò)上真實運行協(xié)議的通信數(shù)據(jù)作為測試對象對系統(tǒng)進行測試,結(jié)果表明該系統(tǒng)能夠有效地重構(gòu)出二進制協(xié)議的狀態(tài)轉(zhuǎn)移關(guān)系。
該狀態(tài)轉(zhuǎn)移圖重構(gòu)系統(tǒng)主要包括通信數(shù)據(jù)捕獲、相應(yīng)字段對齊、狀態(tài)相關(guān)字段識別和協(xié)議狀態(tài)機重構(gòu)四部分,各模塊的關(guān)系如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)圖Fig.1 The system architecture
使用網(wǎng)絡(luò)抓包工具Wireshark捕獲原始的網(wǎng)絡(luò)通信數(shù)據(jù),并使用恰當(dāng)?shù)倪^濾器來獲取需要進行狀態(tài)重構(gòu)的協(xié)議的通信數(shù)據(jù)。
為了呈現(xiàn)并凸顯協(xié)議幀中字段的特征以便進行統(tǒng)計分析,需要對協(xié)議幀字段進行對齊處理。協(xié)議幀中有些字段的取值在通信過程中幾乎是不變的,以這些字段作為對齊基準(zhǔn)可將協(xié)議幀中的相應(yīng)字段對齊。本文采用改進的漸進多序列比對算法來對齊協(xié)議幀中相應(yīng)字段。
協(xié)議幀中僅有少量的字段與協(xié)議狀態(tài)轉(zhuǎn)換相關(guān),本文稱這些字段為狀態(tài)相關(guān)字段,如TCP協(xié)議幀中的Flags字段就是狀態(tài)相關(guān)字段。通過分析多個通信流中字段取值的分布的分布(Distribution of the Distribution of the Variances,DDV)來識別協(xié)議幀中的狀態(tài)相關(guān)字段。
協(xié)議狀態(tài)機重構(gòu)模塊負責(zé)根據(jù)狀態(tài)相關(guān)字段構(gòu)建協(xié)議狀態(tài)機,結(jié)果將以狀態(tài)轉(zhuǎn)移圖的形式輸出,以便分析人員理解協(xié)議的行為邏輯。
協(xié)議規(guī)范是協(xié)議實體進行通信時構(gòu)造數(shù)據(jù)幀以及傳輸數(shù)據(jù)幀必須遵守的約定。數(shù)據(jù)幀的構(gòu)造和傳輸嚴(yán)格受限于協(xié)議規(guī)范,因此協(xié)議規(guī)范的一些特征將在大量的通信數(shù)據(jù)中凸顯出來,這也是能從通信數(shù)據(jù)中逆向出部分或全部協(xié)議規(guī)范的理論基礎(chǔ)。
下面列出了一些適用于多數(shù)通信協(xié)議的準(zhǔn)則,這些準(zhǔn)則給予我們設(shè)計協(xié)議狀態(tài)重構(gòu)系統(tǒng)的靈感。
(1)協(xié)議幀的格式具有一定的結(jié)構(gòu),而不是隨機的;
(2)在不同時間、不同地點重復(fù)通信過程,特定版本協(xié)議的幀結(jié)構(gòu)是不變;
(3)同一個協(xié)議的多個通信過程具有相似的行為。
采用改進的漸進多序列比對算法來實現(xiàn)相應(yīng)字段的對齊。漸進多序列比對算法主要涉及到局部序列比對算法、全局序列比對算法、協(xié)議進化樹構(gòu)建和替換矩陣構(gòu)建四部分。局部序列比對算法用于計算兩個序列間的相似程度,全局序列比對算法用于兩個序列相應(yīng)字段對齊。局部序列比對和全局序列比對都是二序列比對算法,要進行漸進多序列比對,需采用局部序列比對算法構(gòu)建協(xié)議進化樹,然后以協(xié)議進化樹為指導(dǎo),迭代采用全局序列比對算法進行漸進多序列比對。在局部序列比對、全局部序列比對和漸進多序列比對過程中,得罰分參數(shù)則是由替換矩陣提供,替換矩陣的構(gòu)建方法將嚴(yán)重影響三種比對算法的比對結(jié)果,因此本文重點對替換矩陣的構(gòu)建方法進行改進,使其適用于數(shù)據(jù)幀序列的比對。
3.2.1 局部序列比對算法
局部序列比對算法能夠識別出兩個序列的最相似子序列。雖然局部序列比對算法不能識別出協(xié)議幀中的字段,但它能夠?qū)⑾嗨频男蛄芯垲愒谝黄?,以便后續(xù)使用全局比對算法將協(xié)議幀中的相應(yīng)字段對齊。本文采用典型算法Smith Waterman作為局部序列比對算法,協(xié)議幀序列P和Q比對的得分矩陣的計算方法由式(1)、(2)、(3)給出:
式中,S(i,j)表示得分矩陣中第i行第j列的元素的得分情況;P[i]和Q[j]分別表示序列P的第i個元素和序列 Q 的第 j個元素;μ(P[i],Q[j])表示序列P的第i個元素和序列Q的第j個元素比對時的得罰分函數(shù),在經(jīng)典的比對算法Needleman Wunsch中,采用了匹配得2分,不匹配得0分的條件函數(shù)。
得分矩陣計算完成后,基于得分矩陣采用動態(tài)規(guī)劃算法就能提取協(xié)議幀序列P和Q的最長相似子序列。
3.2.2 全局序列比對算法
在通信過程中,協(xié)議幀中的許多字段幾乎是不變的。與局部序列比對算法相反,全局序列比對算法能提取通信過程中協(xié)議幀中的字段。本文采用典型算法Needleman Wunsch作為全局序列比對算法。全局序列比對算法得分矩陣的構(gòu)建同局部序列比對算法得分矩陣的構(gòu)建方法基本相同,唯一不同之處在于它們采用不同的替換矩陣以及路徑回溯方法。獲取全局序列比對結(jié)果的路徑回溯過程(算法1)如下:
3.2.3 協(xié)議進化樹構(gòu)建
為了更好地理解協(xié)議幀序列的結(jié)構(gòu),需要將多個協(xié)議幀進行比較。漸進多序列比對算法是一種快速有效的多序列比對算法。為了進行協(xié)議幀漸進多序列比對,首先需要構(gòu)建協(xié)議進化樹用于指導(dǎo)協(xié)議幀序列的比對過程。協(xié)議進化樹的構(gòu)造過程(算法2)如下:
算法2中dij的計算方法由式(4)給出:
式中,dij表示聚類Ci和Cj的距離,Dpq表示由局部序列比對算法Smith Waterman計算出的協(xié)議幀序列間的距離。
3.2.4 改進的替換矩陣
序列的比對結(jié)果受替換矩陣嚴(yán)重影響。構(gòu)造合適的替換矩陣是生成合理的協(xié)議幀序列比對結(jié)果的基礎(chǔ)。全局序列比對算法Needleman Wunsch采用匹配得2分,不匹配得0分的簡單替換矩陣。但是該替換矩陣不適合于協(xié)議幀序列的比對。通過設(shè)計合適的替換矩陣,使得空位被插入到協(xié)議幀中最合適的位置,從而使協(xié)議幀中相應(yīng)字段精確對齊。改進的替換矩陣的構(gòu)造過程(算法3)如下:
根據(jù)協(xié)議幀序列的比對結(jié)果對替換矩陣進行調(diào)整,能夠使得特殊數(shù)據(jù)幀中的字段也正確對齊到相應(yīng)位置,從而提升了比對精度,更利于后續(xù)的字段統(tǒng)計特征分析工作。
協(xié)議幀中不同字段具有不同功能,協(xié)議規(guī)范對協(xié)議幀中各字段的約束限制也不相同,因此各字段數(shù)據(jù)具有不同的統(tǒng)計特征。通過對各字段的統(tǒng)計特征進行分析,進而從中發(fā)現(xiàn)符合狀態(tài)相關(guān)字段統(tǒng)計特征的狀態(tài)相關(guān)字段。本文通過計算多個通信流中字段取值的分布的分布來識別協(xié)議幀中的狀態(tài)相關(guān)字段。由于下面3條準(zhǔn)則的存在,所以該方法是有效的:
(1)同一協(xié)議的不同通信流通常具有相似的行為邏輯,這樣協(xié)議才能穩(wěn)定地完成通信過程;
(2)協(xié)議的通信邏輯由協(xié)議幀中的狀態(tài)相關(guān)字段表現(xiàn);
(3)不同通信流中,狀態(tài)相關(guān)字段總是表現(xiàn)出相同的行為。
使用字段取值的分布(Distribution of the Variances,DV)作為字段的統(tǒng)計特征量,不同的字段將具有不用的DV。由于通信協(xié)議設(shè)計時需要考慮簡單、高效、穩(wěn)定等特性,所以通信協(xié)議通常僅有少量的狀態(tài),即狀態(tài)相關(guān)字段的DV將是相對較小的值。例如,狀態(tài)相關(guān)字段的DV將明顯比校驗字段、序號字段和隨機字段的DV小很多,但狀態(tài)相關(guān)字段的DV也不會為0,因為DV值為0時表示該字段是一個不變字段,該字段是協(xié)議級特征字段而不是狀態(tài)相關(guān)字段。通信流x中字段i的計算公式為,計算方法如圖2所示。
圖2 不同字段的DVFig.2 The DV value of different fields
對字段DV的統(tǒng)計分析縮小了狀態(tài)相關(guān)字段的選取范圍。為了最終確定狀態(tài)相關(guān)字段,進一步使用多個通信流中字段取值的分布的分布作為字段的第二個統(tǒng)計特征量。由于同一協(xié)議的不同通信流通常具有相似的行為邏輯,所以狀態(tài)相關(guān)字段的DDV將是除0以外的最小值(協(xié)議級特征字段的DDV將為0)。字段的DDV的計算公式為,計算方法如圖 3 所示。
圖3 不同字段的DDVFig.3 The DDV value of different fields
協(xié)議狀態(tài)機的重構(gòu)主要基于通信數(shù)據(jù)幀中狀態(tài)相關(guān)字段的取值以及它們之間的順序關(guān)系。數(shù)據(jù)幀中不同的狀態(tài)相關(guān)字段反映了協(xié)議實體所在的不同狀態(tài),數(shù)據(jù)幀間的順序關(guān)系反映了狀態(tài)之間的轉(zhuǎn)換關(guān)系。由于通信數(shù)據(jù)來自通信實體雙方,構(gòu)建協(xié)議狀態(tài)機時將以其中一方作為主體(以另一方為主體則可構(gòu)建出對應(yīng)的協(xié)議狀態(tài)機),發(fā)送數(shù)據(jù)幀中的狀態(tài)相關(guān)字段將反映出協(xié)議的狀態(tài)變化,而接收數(shù)據(jù)幀中的狀態(tài)相關(guān)字段將作為協(xié)議狀態(tài)變化的輔助參考。在某些協(xié)議中,相同的狀態(tài)相關(guān)字段在不同時期可能導(dǎo)致協(xié)議進入不同的狀態(tài),如TCP協(xié)議,發(fā)送SYN后發(fā)送ACK表示協(xié)議連接建立,而發(fā)送FIN后發(fā)送ACK表示協(xié)議連接關(guān)閉。雖然協(xié)議發(fā)送了同樣的ACK,但卻進入了不同狀態(tài)。為解決這種情況,引入前因判斷機制,即將發(fā)送數(shù)據(jù)幀與前期接收的數(shù)據(jù)幀一同考慮。該機制充分利用了通信協(xié)議的請求-響應(yīng)設(shè)計,這樣就能避免上述情況的發(fā)生。協(xié)議狀態(tài)轉(zhuǎn)移圖的構(gòu)建過程如下:
(1)針對一個通信過程,以start狀態(tài)作為協(xié)議的開始狀態(tài);
(2)從通信數(shù)據(jù)中,順序提取發(fā)送數(shù)據(jù)幀的狀態(tài)相關(guān)字段,如果該字段首次出現(xiàn),則創(chuàng)建一個新狀態(tài),記錄下狀態(tài)相關(guān)字段與狀態(tài)的對應(yīng)關(guān)系(包括接收的前驅(qū)狀態(tài)相關(guān)字段),并從當(dāng)前狀態(tài)轉(zhuǎn)移到新狀態(tài);如果該字段已出現(xiàn)且前驅(qū)狀態(tài)相關(guān)字段也相同,則從當(dāng)前狀態(tài)轉(zhuǎn)移到與該狀態(tài)相關(guān)字段對應(yīng)的狀態(tài),否則創(chuàng)建一個新狀態(tài),記錄下狀態(tài)相關(guān)字段與狀態(tài)的對應(yīng)關(guān)系(包括接收的前驅(qū)狀態(tài)相關(guān)字段),并從當(dāng)前狀態(tài)轉(zhuǎn)移到新狀態(tài);
(3)重復(fù)步驟2直到通信過程結(jié)束,協(xié)議最后進入end狀態(tài),該通信過程的協(xié)議狀態(tài)轉(zhuǎn)移圖就構(gòu)建完成;
(4)將不同通信過程的協(xié)議狀態(tài)圖進行合并、化簡,生成完整的協(xié)議狀態(tài)轉(zhuǎn)移圖。
為了驗證協(xié)議狀態(tài)重構(gòu)系統(tǒng)的有效性,本文選舉二進制協(xié)議地址解析協(xié)議(ARP)和傳輸控制協(xié)議(TCP)作為測試對象。
協(xié)議幀中某些字段的取值是經(jīng)常變化的,這就可能造成在兩個協(xié)議幀中不同字段取值相等的情況。采用簡單替換矩陣的多序列比對算法為了迎合這種特殊情況,會在其他協(xié)議幀中插入大量的空隙,如圖4所示,從而使得附近字段無法對齊。圖5是采用改進替換矩陣的多序列比對結(jié)果,從圖中能夠看出,改進替換矩陣的多序列比對算法能夠消除某些特殊協(xié)議幀序列對所有比對結(jié)果的影響,從而使協(xié)議幀中相應(yīng)字段正確對齊。
圖4 使用簡單替換矩陣的多序列比對結(jié)果Fig.4 The alignment result of multiple sequences with simple substitution matrix
圖5 使用改進替換矩陣的多序列比對結(jié)果Fig.5 The alignment result of multiple sequences with modified substitution matrix
圖6 顯示了TCP協(xié)議幀字段DDV的對數(shù)分布情況。由于字段18和19的DDV值為0,為了能夠計算出它們的對數(shù)值,實驗中將字段18和19的DDV值設(shè)置成了0.1。從圖6中可以看出字段14具有除0以外的最小DDV值。查閱TCP協(xié)議規(guī)范可知字段14是Flags字段,而與TCP協(xié)議狀態(tài)轉(zhuǎn)換相關(guān)的SYN、ACK和FIN等標(biāo)志位都位于Flags字段中,所以識別Flags字段為TCP協(xié)議狀態(tài)相關(guān)字段是合理的。
圖6 TCP協(xié)議幀字段DDV分布圖Fig.6 The distribution of DDV of different fields for TCP
圖7 顯示了ARP協(xié)議幀字段DDV的對數(shù)分布情況。為了能夠計算出字段DDV值為0的對數(shù)值,實驗中將字段DDV值為0的DDV值設(shè)置成了0.000 1。從圖7中可以看出字段8具有除0以外的最小DDV值。查閱ARP協(xié)議規(guī)范可知字段8是操作碼字段,操作碼字段指示一個數(shù)據(jù)包是請求包還是應(yīng)答包,而ARP協(xié)議幀中的其他字段都只是屬性參數(shù),因此操作碼字段能夠表現(xiàn)ARP協(xié)議的行為邏輯,選取操作碼字段作為ARP協(xié)議狀態(tài)相關(guān)字段是合理的。
圖7 ARP協(xié)議幀字段DDV分布圖Fig.7 The distribution of DDV of different fields for ARP
圖8 給出了系統(tǒng)重構(gòu)出的TCP協(xié)議狀態(tài)轉(zhuǎn)移圖。狀態(tài)圖中轉(zhuǎn)移條件r表示接收、s表示發(fā)送、后面的數(shù)字表示Flags字段取值的16進制表示。圖中A部分是主動建立連接端的狀態(tài)轉(zhuǎn)移情況,參考TCP協(xié)議規(guī)范可知,該部分描述了主動建立連接端發(fā)送SYN、接收SYN-ACK、發(fā)送ACK從而建立起連接的過程。B部分是被動建立連接端的狀態(tài)轉(zhuǎn)移情況,它與A部分是相對應(yīng)的。狀態(tài)S3是數(shù)據(jù)傳輸狀態(tài)。C部分是主動釋放連接端的狀態(tài)轉(zhuǎn)移過程,該部分描述了主動釋放連接端發(fā)送FIN-ACK、接收FIN-ACK、發(fā)送ACK從而釋放連接的過程。D部分是與C部分相對應(yīng)的被動釋放連接端的狀態(tài)轉(zhuǎn)移過程。圖中S3到end的轉(zhuǎn)移表示協(xié)議發(fā)送了RST-ACK消息(Flags字段的16進制表示為14)。
圖8 TCP協(xié)議狀態(tài)轉(zhuǎn)移圖Fig.8 The state transition diagram of TCP
協(xié)議狀態(tài)機是協(xié)議規(guī)范的一個重要部分,通過它能理解協(xié)議的行為邏輯。未知協(xié)議狀態(tài)機逆構(gòu)是協(xié)議逆向分析的重要技術(shù)之一。現(xiàn)有的研究成果僅針文本協(xié)議適用,無法解決二進制協(xié)議的狀態(tài)機逆構(gòu)問題。本文設(shè)計了一個根據(jù)通信數(shù)據(jù)逆構(gòu)未知二進制協(xié)議狀態(tài)轉(zhuǎn)移圖的系統(tǒng)。該狀態(tài)轉(zhuǎn)移圖逆構(gòu)系統(tǒng)采用了對應(yīng)字段對齊技術(shù)、狀態(tài)相關(guān)字段識別技術(shù)以及基于狀態(tài)相關(guān)字段的協(xié)議狀態(tài)機重構(gòu)技術(shù),適用于協(xié)議狀態(tài)轉(zhuǎn)移關(guān)系由狀態(tài)相關(guān)字段取值變化驅(qū)動的通信協(xié)議。該方法具有一定的通用性和實用價值。為了驗證該系統(tǒng)的有效性,選取了二進制協(xié)議TCP和ARP作為測試對象,測試結(jié)果表明該系統(tǒng)能夠有效逆構(gòu)出二進制通信協(xié)議的狀態(tài)轉(zhuǎn)移模型。通信數(shù)據(jù)中包含的協(xié)議信息畢竟有限,僅基于通信數(shù)據(jù)進行協(xié)議逆向分析能獲取的協(xié)議信息也相對有限,而協(xié)議程序包含了完整的協(xié)議規(guī)范信息,未來將研究結(jié)合通信數(shù)據(jù)和協(xié)議程序的協(xié)議逆向分析技術(shù),以便逆向出更多、更精確的協(xié)議信息。
[1]張釗,溫巧燕,唐文.協(xié)議規(guī)范挖掘研究綜述[J].計算機工程與應(yīng)用,2013,49(9):1 -9.ZHANG Zhao,WEN Qiaoyan,TANG Wen.Survey of mining protocol specifications[J].Computer Engineering and Applications,2013,49(9):1 -9.(in Chinese)
[2]Cui W D,Kannan J,Wang H J.Discoverer:automatic protocol reverse engineering from network traces[C]//Proceedings of 16th USENIX Security Symposium on USENIX Security Symposium.Berkeley,CA,USA:IEEE,2007:1-14.
[3]Caballero J,Yin H,Liang Z K,et al.Polyglot:automatic extraction of protocol message format using dynamic binary analysis[C]//Proceedings of the 14th ACM conference on Computer and communications security.Alexandria,VA:IEEE,2007:1 -5.
[4]羅琦.一種最大分類間隔SVDD的多文本分類算法[J].電訊技術(shù),2014,54(4):496 -499.LUO Qi.A Mutli-class Text Categorization Algorithm Based on Maximal Classification Margin SVDD[J].Telecommunication Engineering,2014,54(4):496 -499.(in Chinese)
[5]Hsu Y,Shu G Q,Lee D.A model-based approach to security flaw detection of network protocol implementations[C]//Proceedings of the 15th IEEE International Conference on Network Protocols.Orlando,F(xiàn)L:IEEE,2008:114 -123.
[6]Xiao M M,Yu S Z,Wang Y.Automatic network protocol automaton extraction[C]//Proceedings of the 3rd Inter-national Conference on Network and System Security.Gold Coast,QLD:IEEE,2009:336 -343.
[7]肖明明,余順爭.基于文法推斷的協(xié)議逆向工程[J].計算機研究與發(fā)展,2013,50(10):2044 -2058.XIAO Mingming,YU Shunzheng.Protocol Reverse Engineering Using Grammatical Inference[J].Journal of Computer Research and Dvelepment,2013,50(10):2044-2058.(in Chinese)
[8]黃笑言,陳性元,祝寧,等.基于狀態(tài)標(biāo)注的協(xié)議狀態(tài)機逆向方法[J].計算機應(yīng)用,2013,33(12):3486 -3489.HUANG Xiaoyan,CHEN Xingyuan,ZHU Ning,et al.Protocol state machine reverse method based on labeling state[J].Journal of Computer Applications,2013,33(12):3486 -3489.(in Chinese)
[9]Wang Y P,Zhang Z B,Yao D F,et al.Inferring Protocol State Machine from Network Traces:A Probabilistic Approach[C]//Proceedings of the 9th Applied Cryptography and Network Security International Conference.Nerja,Spain:IEEE,2011:1 -18.
[10]Trifilo A,Burschka S,Biersack E.Traffic to protocol reverse engineering[C]//Proceedings of the 2009 IEEE Symposium on Computational Intelligence in Security and Defense Applications.Ottawa,ON:IEEE,2009:257 -264.
[11]Shevertalov M,Mancoridis S.A reverse engineering tool for extracting protocols of networked applications[C]//Proceedings of the 14th Working Conference on Reverse Engineering.Vancouver,BC:IEEE,2007:229 -238.