網(wǎng)絡(luò)協(xié)議逆向分析及應(yīng)用
定 價:99 元
叢書名:網(wǎng)絡(luò)與信息安全前沿技術(shù)
- 作者:吳禮發(fā)
- 出版時間:2016/1/7
- ISBN:9787118105742
- 出 版 社:國防工業(yè)出版社
- 中圖法分類:TN
- 頁碼:308頁
- 紙張:膠版紙
- 版次:1
- 開本:小16開
網(wǎng)絡(luò)監(jiān)聽、網(wǎng)絡(luò)對抗、網(wǎng)絡(luò)管理、惡意代碼分析、軟件安全漏洞挖掘等應(yīng)用領(lǐng)域常常需要分析未知協(xié)議的格式,高效、準(zhǔn)確的自動化協(xié)議逆向分析技術(shù)一直是人們追求的目標(biāo)。
《網(wǎng)絡(luò)與信息安全前沿技術(shù)叢書:網(wǎng)絡(luò)協(xié)議逆向分析及應(yīng)用》是國內(nèi)全面介紹自動化網(wǎng)絡(luò)協(xié)議逆向分析及應(yīng)用的學(xué)術(shù)專著,反映了協(xié)議逆向分析領(lǐng)域的新研究成果,可作為從事軟件及協(xié)議逆向分析、網(wǎng)絡(luò)管理、網(wǎng)絡(luò)安全與對抗等方向的教學(xué)、科研及工程技術(shù)人員的參考書。
第1章 緒論
1.1 協(xié)議
1.1.1 定義
1.1.2 網(wǎng)絡(luò)體系結(jié)構(gòu)
1.2 協(xié)議分析
1.2.1 應(yīng)用需求
1.2.2 協(xié)議逆向工程
參考文獻(xiàn)
第2章 協(xié)議設(shè)計原理
2.1 協(xié)議模型
2.2 協(xié)議設(shè)計的基本內(nèi)容
2.2.1 協(xié)議的通信環(huán)境
2.2.2 協(xié)議提供的服務(wù)
2.2.3 協(xié)議功能
2.2.4 協(xié)議元素
2.3 差錯控制技術(shù)
2.3.1 差錯類型
2.3.2 差錯檢測技術(shù)
2.3.3 報文丟失、重復(fù)、失序處理技術(shù)
2.3.4 差錯控制與層次的關(guān)系
2.4 典型協(xié)議
2.4.1 HDLC協(xié)議
2.4.2 PPP協(xié)議
2.4.3 IP協(xié)議
2.4.4 TCP協(xié)議
2.4.5 HTTP協(xié)議
2.5 總結(jié)與展望
參考文獻(xiàn)
第3章 協(xié)議規(guī)范描述模型
3.1 概述
3.2 協(xié)議規(guī)范描述需求分析
3.3 高階屬性方法
3.3.1 協(xié)議格式分析
3.3.2 高階屬性文法
3.4 基于高階屬性方法的協(xié)議規(guī)范描述模型
3.5 模型實現(xiàn)
3.6 總結(jié)與展望
參考文獻(xiàn)
第4章 基于網(wǎng)絡(luò)流量的協(xié)議格式逆向分析
4.1 概述
4.2 序列比對技術(shù)
4.2.1 雙序列比對
4.2.2 多序列比對
4.2.3 問題分析
4.3 典型報文序列分析方法
4.3.1 PI
4.3.2 PEXT
4.3.3 BFS
4.3.4 ScriptGen
4.3.5 Discoverel
4.3.6 Automaton
4.3.7 Netzob
4.4 基于遞歸聚類的協(xié)議格式提取方法
4.4.1 基本塊劃分
4.4.2 遞歸分析
4.4.3 報文結(jié)構(gòu)信息分析
4.4.4 語義及取值約束推斷
4.4.5 算法復(fù)雜度分析
4.5 人工知識在逆向分析中的應(yīng)用
4.5.1 人工知識
4.5.2 半自動協(xié)議逆向分析
4.6 RPRA實現(xiàn)
4.6.1 輸入模塊
4.6.2 自動分析模塊
4.6.3 輸出模塊
4.6.4 糾正模塊
4.7 應(yīng)用實例
4.7.1 樣本集的獲取
4.7.2 數(shù)據(jù)預(yù)處理
4.7.3 已知協(xié)議分析
4.8 總結(jié)與展望
參考文獻(xiàn)
第5章 動態(tài)二進制程序分析技術(shù)
5.1 概述
5.2 動態(tài)污點分析技術(shù)
5.2.1 動態(tài)污點分析的原理
5.2.2 污點屬性的傳播特征
5.2.3 動態(tài)污點分析技術(shù)的應(yīng)用
5.3 動態(tài)符號執(zhí)行技術(shù)
5.3.1 符號執(zhí)行的原理
5.3.2 符號執(zhí)行技術(shù)的局限
5.3.3 動態(tài)符號執(zhí)行的原理及應(yīng)用
5.4 二進制分析平臺簡介
5 4 1Intel Pin
5.4.2 BltBlaze
5.4.3 其他二進制分析平臺
5.5 總結(jié)與展望
參考文獻(xiàn)
第6章 基于執(zhí)行軌跡的協(xié)議格式逆向分析
6.1 概述
6.2 典型指令序列分析方法
6.2.1 Polyglot
6.2.2 AutoFormat
6.2.3 Tupni
6.2.4 Prospex
6.2.5 ReFormat
6.2.6 Dispatcher
6.3 基于混合符號執(zhí)行的協(xié)議格式提取方法
6.3.1 概述
6.3.2 基本思想
6.3.3 基于中間語言的混合符號執(zhí)行技術(shù)
6.3.4 語義解析層次的協(xié)議格式提取技術(shù)
6.3.5 原型實現(xiàn)及應(yīng)用
6.4 總結(jié)與展望
參考文獻(xiàn)
第7章 協(xié)議狀態(tài)機推斷技術(shù)
7.1 概述
7.2 基本定義
7.3 狀態(tài)機推斷技術(shù)研究現(xiàn)狀
7.3.1 基于指令序列的狀態(tài)機推斷研究
7.3.2 基于報文序列的狀態(tài)機推斷研究
7.3.3 兩類方法的比較
7.4 測試驅(qū)動狀態(tài)融合的協(xié)議狀態(tài)機推斷方法-
7.4.1 狀態(tài)融合問題分析
7.4.2 方法概述
7.4.3 初始狀態(tài)機構(gòu)造
7.4.4 狀態(tài)匹配與融合
7.4.5 狀態(tài)融合驗證
7.4.6 實例分析
7.5 基于域知識的協(xié)議狀態(tài)機主動推斷算法
7.5.1 概述
7.5.2 L+N算法
7.5.3 基于強順序約束關(guān)系的output query過濾機制
7.5.4 基于EPTT的output query預(yù)響應(yīng)機制
7.5.5 基于正例樣本變異的equivalence queor近似判定算法
7.5.6 實例分析
7.6 總結(jié)與展望
參考文獻(xiàn)
第8章 協(xié)議逆向分析的應(yīng)用
8.1 概述
8.2 Fuzzing測試技術(shù)
8.3 基于模型的Fuzzing技術(shù)面臨的問題
8.3.1 數(shù)據(jù)格式的描述
8.3.2 測試用例的生成
8.4 文法驅(qū)動的Fuzzing測試技術(shù)
8.4.1 文法分析樹的構(gòu)造
8.4.2 測試節(jié)點的選擇
8.4.3 基于語義的測試用例生成
8.5 應(yīng)用實例
8.6 總結(jié)與展望
參考文獻(xiàn)
附錄 縮略語
協(xié)議是計算機網(wǎng)絡(luò)和分布式系統(tǒng)中各種通信實體間相互交換信息時必須遵守的一組規(guī)則或約定,這些規(guī)則明確規(guī)定了所交換的數(shù)據(jù)格式及有關(guān)的同步問題,從而保證了通信雙方有條不紊、可靠地交換信息。自從英格蘭國家物理實驗室(National Physical Laboratory,NPL)的R.A.Scantlebury和K.A.BaItlett在1967年將“協(xié)議”(protocol)一詞用于描述數(shù)據(jù)通信過程以來,已有大量通信協(xié)議出現(xiàn)并被標(biāo)準(zhǔn)化,廣泛用于各種各樣的網(wǎng)絡(luò)和通信應(yīng)用中。比較著名的網(wǎng)絡(luò)協(xié)議有TCP/IP協(xié)議棧中的一系列協(xié)議,如lP、TCP、UDP、POP3、SMTP、HTTP協(xié)議等。
除了大量標(biāo)準(zhǔn)化的通信協(xié)議外,網(wǎng)絡(luò)中還存在大量私有協(xié)議(也稱為未知協(xié)議),各軟件廠商或個人出于經(jīng)濟利益、安全、隱私等因素的考慮,并沒有公開協(xié)議細(xì)節(jié);一些惡意軟件也采用了自己的私有協(xié)議防止被跟蹤和分析。
網(wǎng)絡(luò)協(xié)議規(guī)范對于網(wǎng)絡(luò)管理、網(wǎng)絡(luò)攻防有著重要意義。從網(wǎng)絡(luò)管理的角度看,識別網(wǎng)絡(luò)流量使用的傳輸協(xié)議對于提高網(wǎng)絡(luò)服務(wù)質(zhì)量、了解網(wǎng)絡(luò)運行狀態(tài)、監(jiān)控惡意網(wǎng)絡(luò)應(yīng)用具有重要意義。從網(wǎng)絡(luò)攻擊的角度來看,假冒攻擊、網(wǎng)絡(luò)監(jiān)聽等主動和被動攻擊技術(shù)都需要以協(xié)議格式為前提。從網(wǎng)絡(luò)防護的角度看,識別軟件使用的通信協(xié)議、分析軟件間網(wǎng)絡(luò)交互報文是軟件安全性分析、漏洞挖掘、流量控制和網(wǎng)絡(luò)安全策略制定等工作的重要內(nèi)容。而對于迅速傳播的蠕蟲、僵尸程序、木馬等惡意軟件,快速分析其通信協(xié)議、掌握其命令控制方式更是對惡意軟件做出及時反應(yīng)的關(guān)鍵步驟。因此,以網(wǎng)絡(luò)協(xié)議為主要研究對象的協(xié)議分析技術(shù)應(yīng)運而生。
協(xié)議分析技術(shù)主要分為兩大類,一類是對已知協(xié)議的識別與分析,另一類是對未知協(xié)議的逆向分析。前者以協(xié)議特征(如協(xié)議格式特征、端口特征、流量特征等)為基礎(chǔ),識別應(yīng)用使用的通信協(xié)議并根據(jù)協(xié)議規(guī)范對協(xié)議報文進行分析,其前提是協(xié)議規(guī)范已知。后者則是在協(xié)議特征未知的條件下,通過協(xié)議報文或協(xié)議軟件執(zhí)行過程分析得到協(xié)議規(guī)范(包括協(xié)議格式和協(xié)議狀態(tài)機),即協(xié)議逆向分析。
協(xié)議逆向工程(ProtocolReverseEngineering),是指在不依賴于協(xié)議描述的情況下,通過對協(xié)議實體的網(wǎng)絡(luò)輸入/輸出、系統(tǒng)行為和指令執(zhí)行流程進行監(jiān)控和分析,提取協(xié)議語法、語義和同步信息的過程,是工程化的協(xié)議逆向分析方法。人工方式的協(xié)議逆向雖然取得了較為理想的效果,但其過程冗長耗時、費力,且準(zhǔn)確率依賴于分析人員的經(jīng)驗。隨著網(wǎng)絡(luò)規(guī)模的擴大和應(yīng)用種類的增多,對協(xié)議逆向的準(zhǔn)確性和時效性的要求越來越高,自動化的協(xié)議逆向分析技術(shù)成為人們追求的目標(biāo)。
在江蘇省自然科學(xué)基金項目“協(xié)議逆向工程關(guān)鍵技術(shù)研究”以及軍隊有關(guān)項目資助下,解放軍理工大學(xué)協(xié)議逆向分析課題組經(jīng)過多年研究,在自動化的協(xié)議逆向分析方面取得了一些研究成果。這些研究成果以及國內(nèi)外在協(xié)議逆向分析方向的新研究進展形成了本書的主體內(nèi)容。
全書共8章,主要介紹協(xié)議逆向分析原理及應(yīng)用技術(shù)。第1章緒論,主要介紹協(xié)議、協(xié)議逆向工程等相關(guān)概念、研究現(xiàn)狀。第2章主要介紹協(xié)議設(shè)計原理,內(nèi)容包括協(xié)議設(shè)計模型、內(nèi)容、差錯控制技術(shù)以及典型協(xié)議簡介等,以此作為協(xié)議逆向分析的背景知識。第3章主要介紹協(xié)議規(guī)范描述模型,內(nèi)容涉及協(xié)議逆向分析對協(xié)議規(guī)范描述模型的要求、著者提出的基于高階屬性文法的協(xié)議規(guī)范描述模型,這部分內(nèi)容是一體化的協(xié)議逆向分析技術(shù)的基礎(chǔ)。協(xié)議格式逆向分析主要有兩種方法:基于網(wǎng)絡(luò)流量的協(xié)議格式逆向分析和基于執(zhí)行軌跡的協(xié)議格式逆向分析。第4章主要介紹基于網(wǎng)絡(luò)流量的協(xié)議格式逆向分析,內(nèi)容包括該方法的一般原理、研究現(xiàn)狀、著者提出的基于遞歸聚類的協(xié)議格式提取方法、人工知識在逆向分析中的應(yīng)用等。第5章主要介紹動態(tài)二進制程序分析技術(shù),內(nèi)容包括動態(tài)污點分析、動態(tài)符號執(zhí)行技術(shù)以及常見的二進制程序分析平臺,本章是基于執(zhí)行軌跡的協(xié)議格式逆向分析技術(shù)的基礎(chǔ)。第6章介紹基于執(zhí)行軌跡的協(xié)議格式逆向分析方法,包括該方法的一般原理、研究現(xiàn)狀以及作者在此方向上的研究成果。第7章介紹協(xié)議狀態(tài)機推斷技術(shù),包括狀態(tài)機推斷原理、研究現(xiàn)狀以及著者提出的兩種狀態(tài)機推斷方法。第8章以針對網(wǎng)絡(luò)協(xié)議的模糊測試技術(shù)為例,介紹網(wǎng)絡(luò)協(xié)議逆向分析技術(shù)的應(yīng)用。