国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于協(xié)同進化算法的網(wǎng)絡(luò)協(xié)議格式逆向分析方法及裝置

      文檔序號:39615505發(fā)布日期:2024-10-11 13:26閱讀:18來源:國知局
      基于協(xié)同進化算法的網(wǎng)絡(luò)協(xié)議格式逆向分析方法及裝置

      本發(fā)明屬于信息安全,提供了一種基于協(xié)同進化算法的網(wǎng)絡(luò)協(xié)議格式逆向分析方法及裝置。


      背景技術(shù):

      1、隨著近年來物聯(lián)網(wǎng)、車聯(lián)網(wǎng)、工控網(wǎng)等技術(shù)的迅速發(fā)展,相應(yīng)領(lǐng)域的網(wǎng)絡(luò)流量中涌現(xiàn)了大量私有協(xié)議。這些協(xié)議沒有公開的格式文檔,也不公開協(xié)議源碼。更為重要的是,很多私有協(xié)議的設(shè)計存在安全漏洞,而因為閉源的原因,無法確保協(xié)議的安全性。這種情況限制了常規(guī)對協(xié)議漏洞、網(wǎng)絡(luò)行為分析、網(wǎng)絡(luò)監(jiān)聽和僵尸網(wǎng)絡(luò)檢測等領(lǐng)域的分析方法。此時,協(xié)議逆向分析一般從網(wǎng)絡(luò)軌跡或?qū)崿F(xiàn)了協(xié)議的二進制程序考慮。

      2、基于網(wǎng)絡(luò)軌跡的協(xié)議逆向方法前者應(yīng)用前景廣泛,但精度略有欠缺,且無法處理加密流量。后者在加密流量分析上具有可行性,但通常很難取得實現(xiàn)了協(xié)議的二進制程序。本發(fā)明所述方法與裝置屬于基于網(wǎng)絡(luò)軌跡的協(xié)議逆向的方法。在這個領(lǐng)域,已有方式可分為基于多序列比對和基于概率統(tǒng)計學原理的兩大類?;诙嘈蛄斜葘Φ姆椒ㄓ衟i、netzob、netplier等等?;诟怕式y(tǒng)計原理的方法有biprominer、prodecoder、prograph等。

      3、2004年提出的pi工具標志著基于流量的協(xié)議逆向領(lǐng)域的起步,近年來隨著私有流量的增多,這一領(lǐng)域逐漸成為研究熱點。其中,基于序列比對的協(xié)議逆向是一個重要的分支,不斷有新的成果涌現(xiàn)。這些方法通常根據(jù)字節(jié)變化特征進行比對,利用獎懲函數(shù)來指導(dǎo)構(gòu)建得分矩陣。netzob、netplier這些研究方法延續(xù)了pi等工具的思路的同時,提出了一些創(chuàng)新之處,比如獎懲函數(shù)的優(yōu)化、誤差判定機制的優(yōu)化,以及對特定字符語義的判定,如正反向結(jié)合判定fd字段、分隔符和長度等,引入后驗概率輔助關(guān)鍵字的判斷等等。然而,這類方法也存在一些缺點:一些方法引入了過多的協(xié)議先驗知識;除關(guān)鍵詞判定外,對功能段格式邊界的劃分存在較多錯誤;

      4、biprominer和prodecoder算法通過統(tǒng)計方法來尋找關(guān)鍵字。biprominer是針對二進制協(xié)議開發(fā)的。prodecoder則是在biprominer的基礎(chǔ)上,針對文本協(xié)議做了相應(yīng)的修訂改進。prograph將目標協(xié)議的分組,之后構(gòu)建圖模型,據(jù)此分析各分組間的相關(guān)性?;诟怕式y(tǒng)計學原理的方法通常僅關(guān)注關(guān)鍵字節(jié)或比特出現(xiàn)的頻率,忽視了字段間的對齊關(guān)系。

      5、基于多序列比對的方法通常依賴于已知的協(xié)議樣本或者參考序列,通過比對目標協(xié)議的序列數(shù)據(jù)與已知序列來推斷其結(jié)構(gòu)和功能。這種方法能夠快速準確地識別出相似性較高的部分,但對于高度變異的協(xié)議或者未知結(jié)構(gòu)的情況下,其準確性可能會受到限制。

      6、相比之下,基于概率統(tǒng)計原理的方法更加靈活,它可以通過對協(xié)議流量數(shù)據(jù)進行統(tǒng)計分析和模型推斷來發(fā)現(xiàn)隱藏在數(shù)據(jù)背后的規(guī)律和模式。這種方法不需要先驗知識,并且對于復(fù)雜的協(xié)議結(jié)構(gòu)也能夠進行有效的推斷,但在處理大規(guī)模數(shù)據(jù)時可能存在計算復(fù)雜度較高的問題。


      技術(shù)實現(xiàn)思路

      1、本發(fā)明目的在于解決在缺乏協(xié)議規(guī)范或?qū)崿F(xiàn)協(xié)議的二進制代碼的情況下,如何通過分析網(wǎng)絡(luò)協(xié)議流量來逆向推導(dǎo)出協(xié)議格式的問題。

      2、為了達到上述目的,本發(fā)明采用如下技術(shù)方案:

      3、本發(fā)明提供了一種針對私有網(wǎng)絡(luò)協(xié)議格式的逆向分析方法,包括以下步驟:

      4、步驟1.采集包序列與預(yù)處理:采集待分析的協(xié)議流量,捕獲報文數(shù)據(jù)包,報文數(shù)據(jù)包即請求流量包序列和響應(yīng)流量包序列,對原始流量的報文數(shù)據(jù)包,利用網(wǎng)絡(luò)數(shù)據(jù)包分析工具,進行初步分析,從中提取得到有效載荷,底層已知協(xié)議信息;

      5、步驟2.私有協(xié)議流量聚類:通過層次聚類的聚類手段,利用步驟1得到的底層已知協(xié)議信息,對步驟1得到的有效載荷進行與聚類,得到聚類結(jié)果,聚類結(jié)果中,結(jié)構(gòu)、內(nèi)容、底層已知協(xié)議信息相似的有效載荷將被劃分到同一類中;

      6、步驟3.協(xié)議規(guī)范種子生成:分別基于多序列比對和基于概率統(tǒng)計學的格式規(guī)范分析方法,對步驟2的聚類結(jié)果進行處理,生成兩類協(xié)議規(guī)范種子;

      7、步驟4.使用多種群協(xié)同進化算法:將步驟3得到的兩類協(xié)議規(guī)范種子分別作為兩個種群,進行子群體優(yōu)化、種群交叉、種子變異,實現(xiàn)多種群協(xié)同進化,得到綜合了兩類網(wǎng)絡(luò)協(xié)議格式逆向方法優(yōu)點的網(wǎng)絡(luò)協(xié)議格式。

      8、上述技術(shù)方案中,步驟1包括以下步驟:

      9、步驟1.1、協(xié)議流量包采集:使用tcpdump、tshark工具捕獲網(wǎng)絡(luò)流量,并保存為pcap格式的文件,pcap文件中的數(shù)據(jù)以二進制的形式分組存儲,每個分組包含了一定時間內(nèi)捕獲的網(wǎng)絡(luò)數(shù)據(jù),以及與之相關(guān)的元數(shù)據(jù),元數(shù)據(jù)包括時間戳、源ip地址、目標ip地址、協(xié)議類型;

      10、步驟1.2、未知協(xié)議數(shù)據(jù)分離:使用scapy、pyshark、dpkt工具,分離出數(shù)據(jù)包的中待分析協(xié)議的有效載荷;

      11、步驟1.3、已知協(xié)議解析:使用scapy、pyshark、dpkt工具,解析已知協(xié)議流量,提取出地址、端口號、協(xié)議數(shù)據(jù)包傳輸方向信息,并據(jù)此將流量包二分類為客戶端與服務(wù)端兩組。

      12、上述技術(shù)方案中,步驟2具體步驟為:

      13、步驟2.1、構(gòu)建相似度矩陣:通過計算報文數(shù)據(jù)包間的相似度,構(gòu)建出一個對稱的相似度矩陣;

      14、步驟2.1.1、相似度的計算方法采用needleman-wunsch算法,設(shè)置匹配得分為1,不匹配得分為-1,空位懲罰為0;

      15、步驟2.1.2、對相似度得分進行歸一化處理,方法是將總得分除以參與比較的報文序列中較長者的長度;

      16、步驟2.1.3、構(gòu)建出一個n×n的對稱的矩陣,以<<x11,x12,...,x1n>,<x21,x22,...,x2n>...,<xn1,xn2,...,xnn>>表示,其中xij第i個報文序列到第j個報文序列的距離,n為報文序列的數(shù)目,xii=0,xij=xji,

      17、步驟2.1.4、將相似度矩陣以文本類型存儲到文件sequence_distance.txt中;

      18、步驟2.2、執(zhí)行層次聚類:在已構(gòu)建相似度矩陣基礎(chǔ)上,執(zhí)行基于upgma算法層次聚類,根據(jù)聚類的層次結(jié)構(gòu)構(gòu)建系統(tǒng)發(fā)育樹;

      19、步驟2.2.1、初始時,將每個報文序列視作一個初始聚類;

      20、步驟2.2.2、合并最近的兩個聚類,新的聚類到其他聚類的距離為它子類到其他類的平均數(shù);

      21、重復(fù)步驟2.2.1-步驟2.2.2直到只剩下一個類,根據(jù)聚類的層次結(jié)構(gòu)構(gòu)建系統(tǒng)發(fā)育樹;

      22、步驟2.3、分組私有協(xié)議報文序列:根據(jù)層次聚類構(gòu)建的系統(tǒng)發(fā)育樹,迭代嘗試不同的正整數(shù)k值,將協(xié)議報文序列劃分為2k個類,k=2,或k=3,每類報文作為一組,構(gòu)成一個構(gòu)建協(xié)議格式種子的原始輸入。

      23、上述技術(shù)方案中,步驟3具體包括:

      24、步驟3.1、基于多序列比對的協(xié)議規(guī)范種子生成,形成第一個種群;

      25、步驟3.1.1、使用基于多序列比對的協(xié)議逆向工具獲取協(xié)議規(guī)范,基于多序列比對工具mafft構(gòu)建基于多序列比對的協(xié)議規(guī)范種子生成器,

      26、步驟3.1.2、處理長序列,采用l-ins-i算法處理高度分歧的序列;

      27、步驟3.1.3、處理短序列或序列間差異性較大的情況,采用g-ins-i算法;

      28、步驟3.1.4、進行多序列比對的過程中,采用標識符“-”填補對齊過程中產(chǎn)生的空位;

      29、步驟3.1.5、輸出結(jié)果以fasta格式保存,每行對應(yīng)一條報文序列;

      30、步驟3.1.6、最終結(jié)果保存到文件output_msa_oneline.txt中;

      31、步驟3.2、基于概率統(tǒng)計原理的方法的協(xié)議規(guī)范種子生成,形成第二個種群;

      32、步驟3.2.1、對于二進制類型的包序列,使用biprominer方法,提取出包序列中的cells,并進行標記label,

      33、步驟3.2.2、構(gòu)建出狀態(tài)轉(zhuǎn)移模型,選出概率最大的項目作為逆向出的協(xié)議格式;

      34、步驟3.2.3、對于文本類型的包序列,使用prodecoder的方法,將關(guān)鍵字和轉(zhuǎn)移概率作為特征;

      35、步驟3.2.4、進行層次聚類,然后使用needleman-wunsch算法進行序列比對,從而推斷出報文格式。

      36、上述技術(shù)方案中,步驟4體步驟為:

      37、步驟4.1、種群劃分:將基于多序列比對和概率統(tǒng)計原理生成的協(xié)議規(guī)范種子分別劃歸到兩個種群,稱為多序列種群和概率統(tǒng)計種群;

      38、步驟4.2、子種群優(yōu)化:每個子種群使用遺傳算法,獨立的進行優(yōu)化過程,適應(yīng)度達到閾值或迭代達到最大次數(shù)時停止優(yōu)化,為了執(zhí)行子種群優(yōu)化過程,需要對協(xié)議規(guī)范種子進行適應(yīng)性評估,通過將協(xié)議規(guī)范種子應(yīng)用到樣本中,觀察劃分結(jié)果是否符合協(xié)議設(shè)計原則的方式來評估種子的優(yōu)劣,具體做法是,將協(xié)議規(guī)范應(yīng)用到樣本中后,逐步檢測每個字段,若一個字段在所有樣本中的變化有限,即認為這是一個成功劃分的字段,最后統(tǒng)計成功劃分的字段占總字段數(shù)目的比例,得到協(xié)議規(guī)范種子的得分;

      39、步驟4.3、種群交叉:使用排序算法對每組的協(xié)議規(guī)范種子組內(nèi)分別排序,選出每組內(nèi)前10%的種子,作為優(yōu)秀種子,互相替換另一個組后10%的種子,實現(xiàn)不同種群間共享信息,促進探索全局最優(yōu)解的過程;

      40、步驟4.4、種子變異:為了在搜索全局最優(yōu)解,需要產(chǎn)生新的種子進行探索,通過對種子變異來完成這一過程,變異操作包括合并字段,拆分字段、修改字段;

      41、步驟4.5、多種群協(xié)同進化:重復(fù)以上過程,直到種子適應(yīng)度收斂。

      42、本發(fā)明還提供了一種基于協(xié)同進化算法的網(wǎng)絡(luò)協(xié)議格式逆向分析裝置,包括以下模塊:

      43、采集單元:采集待分析的協(xié)議流量,捕獲報文數(shù)據(jù)包,報文數(shù)據(jù)包即請求流量包序列和響應(yīng)流量包序列,對原始流量的報文數(shù)據(jù)包,利用網(wǎng)絡(luò)數(shù)據(jù)包分析工具,進行初步分析,從中提取得到有效載荷,底層已知協(xié)議信息;

      44、聚類單元:通過層次聚類的聚類手段,利用得到的底層已知協(xié)議信息,對得到的有效載荷進行與聚類,得到聚類結(jié)果,聚類結(jié)果中,結(jié)構(gòu)、內(nèi)容、底層已知協(xié)議信息相似的有效載荷將被劃分到同一類中;

      45、種子生成單元,分別基于多序列比對和基于概率統(tǒng)計學的格式規(guī)范分析方法,對聚類結(jié)果進行處理,生成兩類協(xié)議規(guī)范種子;

      46、進化算法單元,將得到的兩類協(xié)議規(guī)范種子分別作為兩個種群,進行子群體優(yōu)化、種群交叉、種子變異,實現(xiàn)多種群協(xié)同進化,得到綜合了兩類網(wǎng)絡(luò)協(xié)議格式逆向方法優(yōu)點的網(wǎng)絡(luò)協(xié)議格式。

      47、上述方案中,采集單元包括:

      48、協(xié)議流量包采集模塊:使用tcpdump、tshark工具捕獲網(wǎng)絡(luò)流量,并保存為pcap格式的文件,pcap文件中的數(shù)據(jù)以二進制的形式分組存儲,每個分組包含了一定時間內(nèi)捕獲的網(wǎng)絡(luò)數(shù)據(jù),以及與之相關(guān)的元數(shù)據(jù),元數(shù)據(jù)包括時間戳、源ip地址、目標ip地址、協(xié)議類型;

      49、未知協(xié)議數(shù)據(jù)分離模塊:使用scapy、pyshark、dpkt工具,分離出數(shù)據(jù)包的中待分析協(xié)議的有效載荷;

      50、已知協(xié)議解析模塊:使用scapy、pyshark、dpkt工具,解析已知協(xié)議流量,提取出地址、端口號、協(xié)議數(shù)據(jù)包傳輸方向信息,并據(jù)此將流量包二分類為客戶端與服務(wù)端兩組。

      51、上述方案中,聚類單元具體包括:

      52、相似度矩陣構(gòu)建模塊,通過計算報文數(shù)據(jù)包間的相似度,構(gòu)建出一個對稱的相似度矩陣;

      53、相似度的計算方法采用needleman-wunsch算法,設(shè)置匹配得分為1,不匹配得分為-1,空位懲罰為0;

      54、對相似度得分進行歸一化處理,方法是將總得分除以參與比較的報文序列中較長者的長度;

      55、構(gòu)建出一個n×n的對稱的矩陣,以<<x11,x12,...,x1n>,<x21,x22,...,x2n>...,<xn1,xn2,...,xnn>>表示,其中xij第i個報文序列到第j個報文序列的距離,n為報文序列的數(shù)目,xii=0,xij=xji,

      56、將相似度矩陣以文本類型存儲到文件sequence_distance.txt中;

      57、次聚類執(zhí)行模塊,在已構(gòu)建相似度矩陣基礎(chǔ)上,執(zhí)行基于upgma算法層次聚類,根據(jù)聚類的層次結(jié)構(gòu)構(gòu)建系統(tǒng)發(fā)育樹,具體的為

      58、初始時,將每個報文序列視作一個初始聚類,合并最近的兩個聚類,新的聚類到其他聚類的距離為它子類到其他類的平均數(shù);

      59、重復(fù)直到只剩下一個類,根據(jù)聚類的層次結(jié)構(gòu)構(gòu)建系統(tǒng)發(fā)育樹;

      60、私有協(xié)議報文序列分組模塊,根據(jù)層次聚類構(gòu)建的系統(tǒng)發(fā)育樹,迭代嘗試不同的正整數(shù)k值,將協(xié)議報文序列劃分為2k個類,k=2,或k=3,每類報文作為一組,構(gòu)成一個構(gòu)建協(xié)議格式種子的原始輸入。

      61、上述方案中,種子生成單元具體包括:

      62、多序列比對協(xié)議規(guī)范種子生成模塊,基于多序列比對的協(xié)議規(guī)范種子生成,形成第一個種群,具體包括以下步驟:

      63、使用基于多序列比對的協(xié)議逆向工具獲取協(xié)議規(guī)范,基于多序列比對工具mafft構(gòu)建基于多序列比對的協(xié)議規(guī)范種子生成器,

      64、處理長序列,采用l-ins-i算法處理高度分歧的序列;

      65、處理短序列或序列間差異性較大的情況,采用g-ins-i算法;

      66、進行多序列比對的過程中,采用標識符“-”填補對齊過程中產(chǎn)生的空位;

      67、輸出結(jié)果以fasta格式保存,每行對應(yīng)一條報文序列;

      68、最終結(jié)果保存到文件output_msa_oneline.txt中;

      69、概率統(tǒng)計原理的協(xié)議規(guī)范種子生成模塊,基于概率統(tǒng)計原理的方法的協(xié)議規(guī)范種子生成,形成第二個種群,具體包括以下步驟:

      70、對于二進制類型的包序列,使用biprominer方法,提取出包序列中的cells,并進行標記label,

      71、構(gòu)建出狀態(tài)轉(zhuǎn)移模型,選出概率最大的項目作為逆向出的協(xié)議格式;

      72、對于文本類型的包序列,使用prodecoder的方法,將關(guān)鍵字和轉(zhuǎn)移概率作為特征;

      73、進行層次聚類,然后使用needleman-wunsch算法進行序列比對,從而推斷出報文格式。

      74、上述方案中,進化算法單元具體包括:

      75、種群劃分模塊,將基于多序列比對和概率統(tǒng)計原理生成的協(xié)議規(guī)范種子分別劃歸到兩個種群,稱為多序列種群和概率統(tǒng)計種群;

      76、子種群優(yōu)化模塊,每個子種群使用遺傳算法,獨立的進行優(yōu)化過程,適應(yīng)度達到閾值或迭代達到最大次數(shù)時停止優(yōu)化,為了執(zhí)行子種群優(yōu)化過程,需要對協(xié)議規(guī)范種子進行適應(yīng)性評估,通過將協(xié)議規(guī)范種子應(yīng)用到樣本中,觀察劃分結(jié)果是否符合協(xié)議設(shè)計原則的方式來評估種子的優(yōu)劣,具體做法是,將協(xié)議規(guī)范應(yīng)用到樣本中后,逐步檢測每個字段,若一個字段在所有樣本中的變化有限,即認為這是一個成功劃分的字段,最后統(tǒng)計成功劃分的字段占總字段數(shù)目的比例,得到協(xié)議規(guī)范種子的得分;

      77、種群交叉模塊,使用排序算法對每組的協(xié)議規(guī)范種子組內(nèi)分別排序,選出每組內(nèi)前10%的種子,作為優(yōu)秀種子,互相替換另一個組后10%的種子,實現(xiàn)不同種群間共享信息,促進探索全局最優(yōu)解的過程;

      78、種子變異模塊:為了在搜索全局最優(yōu)解,需要產(chǎn)生新的種子進行探索,通過對種子變異來完成這一過程,變異操作包括合并字段,拆分字段、修改字段;

      79、多種群協(xié)同進化模塊,用于重復(fù)子種群優(yōu)化、種群交叉和種子變異的過程,直到種子適應(yīng)度收斂。

      80、本發(fā)明同現(xiàn)有技術(shù)相比,其有益效果表現(xiàn)在:

      81、一、預(yù)處理階段進行了初步分析。充分利用底層已知協(xié)議能提供的信息,從中提取出端口號、地址等字段,提高后續(xù)層次聚類的準確性,提升協(xié)議規(guī)范種子生成的質(zhì)量。

      82、二、利用多種群協(xié)同進化算法,綜合了基于多序列比對和基于概率統(tǒng)計原理兩類方法的優(yōu)點,提升了協(xié)議逆向分析的準確性。通過同時考慮序列比對和概率統(tǒng)計的信息,不僅可以提高對已知協(xié)議結(jié)構(gòu)的識別準確性,還能夠更好地處理未知結(jié)構(gòu)或變異較大的協(xié)議。多種群協(xié)同進化算法可以在不同種群之間交換信息和經(jīng)驗,引導(dǎo)搜索過程朝著更加全面和準確的方向發(fā)展,從而提升協(xié)議逆向分析的整體性能和效果。

      83、三、本發(fā)明利用較容易獲得網(wǎng)絡(luò)協(xié)議軌跡進行網(wǎng)絡(luò)協(xié)議逆向分析,無需較難獲得的協(xié)議公開文檔、協(xié)議源碼、協(xié)議二進制。因此本發(fā)明可在受到限制的環(huán)境下,即無程序源碼、無協(xié)議規(guī)范文檔情況下進行協(xié)議逆向工作。

      當前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1