新四季網

一種基於惡意加密流量檢測方法、系統、裝置及介質

2024-04-13 04:17:05



1.本發明涉及計算機技術領域,特別是涉及一種惡意加密流量檢測方法、系統、裝置及介質。


背景技術:

2.近年來,隨著人們對隱私保護和數據安全的需求日益增長,越來越多的個人和企業選擇使用加密機制對流量進行加密傳輸,以提高流量傳輸的安全性。但是,攻擊者會將惡意流量進行加密,來逃避惡意流量的檢測機制,進行惡意攻擊。因此,如何準確無誤識別惡意加密流量,防止攻擊者利用加密技術入侵系統變得十分重要。
3.面對惡意加密流量,現有的檢測方法大致可以分為如下4類:(1)、基於解密的惡意加密流量檢測方法:其本質上是中間人攻擊,通過在客戶端與服務端之間設置攔截器用於解密、檢測、重新加密和轉發流量,解密得到的明文流量使用深度包檢測技術進行檢測。但是,這個檢測方法必須使用密鑰解密流量提取信息,違背了加密的初衷,造成用戶數據隱私的洩露,並且由於需要對流量解密再加密,大大消耗了伺服器的資源,增加了處理數據的時間,檢測效率低。
4.(2)、基於籤名的惡意加密流量檢測方法:通過識別加密流量中與已知惡意行為的籤名相匹配的可見模式來檢測威脅,包括目的ip、證書、ja3/ja3s指紋等,可用於黑名單識別隱藏在加密流量中的威脅。雖然與基於解密的檢測方法相比更簡單方便,但是無法應對未知的攻擊,攻擊者可以改變流量規則以逃避檢測。
5.(3)、基於特徵的機器學習的惡意加密流量檢測方法:利用未加密的tls握手消息中的豐富信息(包括版本、密碼套件、擴展、證書等)來識別威脅。然而,特徵的良好性在很大程度上依賴於人類的專業知識,在高度動態的網終環境中,選擇合適的特徵集需要專家知識,這嚴重影響了檢測的效率和有效性。
6.(4)、基於深度學習的惡意加密流量檢測方法:目前多使用cnn,將流量的指定字節數據(原數據或者處理後數據)轉換成圖片或轉變為一維數據後使用cnn進行分類。然而,這個檢測方法大多是在雙向網絡流的粒度級別上進行威脅識別,過分關注單個流的統計特徵或數據表示,而忽略了流之間的相關關係。面對未知的或偽裝得很好的加密惡意流量,僅僅依賴於每個孤立網絡流的特徵而沒有考慮全局流的關聯關係,會導致效果不理想。
7.綜上,有必要設計一種可在複雜的網絡環境下提高惡意加密流量的檢測準確性和快速性的方案。


技術實現要素:

8.基於此,本發明的目的在於提供一種惡意加密流量檢測方法、系統、裝置及介質,用於在複雜的網絡環境下,提升惡意加密流量的檢測性能,以保證較高的檢測準確性和快速性。
9.第一方面,本發明提供了一種惡意加密流量檢測方法,包括:
獲取加密流量數據集,並基於數據流方向和會話,對所述加密流量數據集進行數據分割,提取所述加密流量數據集中的任一加密流量數據的多維特徵;基於所述任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量;對所述二維變長特徵向量進行特徵預處理後,構建變長序列特徵向量;構建bigru_cnn深度學習模型,並將所述變長序列特徵向量輸入所述bigru_cnn深度學習模型中進行識別,獲得識別結果;所述識別結果包括惡意加密流量和正常加密流量。
10.在一種可能的設計中,獲取加密流量數據集,包括:通過wireshark軟體捕捉各種惡意加密攻擊流量,生成相應的pcap文件,並對所述pcap文件進行人工標註,獲得流量數據集;刪除所述流量數據集中與惡意加密流量不相關的網絡數據包、幹擾深度學習模型訓練的流量數據和未加密的流量數據,得到初始加密流量數據集;對所述初始加密流量數據集中的加密流量數據進行數據截斷或填充處理,以使任一加密流量數據的長度一致,得到所述加密流量數據集。
11.在一種可能的設計中,基於數據流方向和會話,對所述加密流量數據集進行數據分割,提取所述加密流量數據集中的任一加密流量數據的多維特徵,包括:基於所述任一加密流量數據的五元組,確定所述加密流量數據集的數據流方向和會話;按照所述數據流方向,以會話為單位對所述加密流量數據集進行數據分割,獲得m個會話對應的l個加密流量數據;m為大於或等於1的整數,l為大於0的整數;對於所述m個會話中l大於或等於預設閾值y的第一會話,截取所述第一會話中的前y個加密流量數據,提取所述y個加密流量數據中的任一加密流量數據的多維特徵;對於所述m個會話中l小於y的第二會話,對所述第二會話補零,以使所述第二會話的數據長度達到y個,提取y個數據中的任一數據的多維特徵。
12.在一種可能的設計中,所述多維特徵包括:元數據特徵、包長與時間序列特徵、包長與時間分布特徵、包長與時間統計特徵、側通道特徵、防篡改特徵,以及會話中的tcp頭部長度、ip頭部長度、源ip頭部長度、目的ip頭部長度、ip包長度、源ip發送數據包的個數、目的ip發送數據包的個數、ttl值、tcp窗口大小以及各自的數字統計特徵,所述數字統計特徵包括平均值、最大值、最小值、中位值、方差和標準差。
13.在一種可能的設計中,基於所述任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量,包括:採用隨機森林算法從所述任一加密流量數據的多維特徵中選取排名靠前的n個特徵;基於所述n個特徵,以會話為單位構建二維變長特徵向量。
14.在一種可能的設計中,對所述二維變長特徵向量進行特徵預處理後,構建變長序列特徵向量,包括:對所述二維變長特徵向量中的變長序列填充補零,使得所述二維變長特徵向量的序列長度一致;對補零後的二維變長特徵向量進行歸一化處理,再對經過歸一化處理的二維變長特徵向量進行標準化處理;
基於經過標準化處理後的二維變長特徵向量,構建變長序列特徵向量。
15.在一種可能的設計中,構建bigru_cnn深度學習模型,包括:以雙向門控循環單元bigru度學習模型為數據輸入模型,卷積神經網絡cnn深度學習模型為數據輸出模型,構建所述bigru_cnn深度學習模型。
16.第二方面,本發明還提供了一種惡意加密流量檢測系統,包括:採集單元,用於獲取加密流量數據集;提取單元,用於基於數據流方向和會話,對所述加密流量數據集進行數據分割,提取所述加密流量數據集中的任一加密流量數據的多維特徵;識別單元,用於基於所述任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量;對所述二維變長特徵向量進行特徵預處理後,構建變長序列特徵向量;構建bigru_cnn深度學習模型,並將所述變長序列特徵向量輸入所述bigru_cnn深度學習模型中進行識別,獲得識別結果;所述識別結果包括惡意加密流量和正常加密流量。
17.在一種可能的設計中,所述採集單元具體用於:通過wireshark軟體捕捉各種惡意加密攻擊流量,生成相應的pcap文件,並對所述pcap文件進行人工標註,獲得流量數據集;刪除所述流量數據集中與惡意加密流量不相關的網絡數據包、幹擾深度學習模型訓練的流量數據和未加密的流量數據,得到初始加密流量數據集;對所述初始加密流量數據集中的加密流量數據進行數據截斷或填充處理,以使任一加密流量數據的長度一致,得到所述加密流量數據集。
18.在一種可能的設計中,所述提取單元具體用於:基於所述任一加密流量數據的五元組,確定所述加密流量數據集的數據流方向和會話;按照所述數據流方向,以會話為單位對所述加密流量數據集進行數據分割,獲得m個會話對應的l個加密流量數據;m為大於或等於1的整數,l為大於0的整數;對於所述m個會話中l大於或等於預設閾值y的第一會話,截取所述第一會話中的前y個加密流量數據,提取所述y個加密流量數據中的任一加密流量數據的多維特徵;對於所述m個會話中l小於y的第二會話,對所述第二會話補零,以使所述第二會話的數據長度達到y個,提取y個數據中的任一數據的多維特徵。
19.在一種可能的設計中,所述多維特徵包括:元數據特徵、包長與時間序列特徵、包長與時間分布特徵、包長與時間統計特徵、側通道特徵、防篡改特徵,以及會話中的tcp頭部長度、ip頭部長度、源ip頭部長度、目的ip頭部長度、ip包長度、源ip發送數據包的個數、目的ip發送數據包的個數、ttl值、tcp窗口大小以及各自的數字統計特徵,所述數字統計特徵包括平均值、最大值、最小值、中位值、方差和標準差。
20.在一種可能的設計中,所述識別單元具體用於:採用隨機森林算法從所述任一加密流量數據的多維特徵中選取排名靠前的n個特徵;基於所述n個特徵,以會話為單位構建二維變長特徵向量。
21.在一種可能的設計中,所述識別單元具體用於:對所述二維變長特徵向量中的變長序列填充補零,使得所述二維變長特徵向量的
序列長度一致;對補零後的二維變長特徵向量進行歸一化處理,再對經過歸一化處理的二維變長特徵向量進行標準化處理;基於經過標準化處理後的二維變長特徵向量,構建變長序列特徵向量。
22.在一種可能的設計中,所述識別單元具體用於:以雙向門控循環單元bigru深度學習模型為數據輸入模型,卷積神經網絡cnn深度學習模型為數據輸出模型,構建所述bigru_cnn深度學習模型。
23.第三方面,本發明還提供了一種惡意加密流量檢測裝置,所述惡意加密流量檢測裝置包括:至少一個存儲器和至少一個處理器;所述至少一個存儲器用於存儲一個或多個程序;當所述一個或多個程序被所述至少一個處理器執行時,實現上述第一方面任一種可能設計所涉及的方法。
24.第四方面,本發明還提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有至少一個程序;當所述至少一個程序被處理器執行時,實現上述第一方面任一種可能設計所涉及的方法。
25.本發明的有益效果如下:相較於現有技術而言,本發明通過獲取加密流量數據集,並基於數據流方向和會話,對加密流量數據集進行數據分割,提取加密流量數據集中的任一加密流量數據的多維特徵,充分關注到了流量會話中每個流的特徵以及會話中不同維度的特徵,使得構建的二維變長特徵向量的信息更為全面;基於任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量,對二維變長特徵向量進行特徵預處理後,構建變長序列特徵向量,構建bigru_cnn深度學習模型,並將變長序列特徵向量輸入bigru_cnn深度學習模型中進行識別,獲得識別結果,識別結果包括惡意加密流量和正常加密流量,從而可以在複雜的網絡環境下,通過bigru_cnn深度學習模型充分挖掘出流量中的時間特徵與局部的空間特徵,使得提取變長序列特徵向量的信息更為全面,進而可以提升惡意加密流量的檢測性能,保證較高的惡意加密流量數據的檢測準確性和快速性。
26.為了更好地理解和實施,下面結合附圖詳細說明本發明。
附圖說明
27.圖1為本發明提供的一種惡意加密流量檢測方法的流程示意圖;圖2為本發明提供的一種變長序列特徵向量的示意圖;圖3為本發明提供的一種bigru_cnn深度學習模型的結構示意圖;圖4為本發明提供的一種惡意加密流量檢測系統的結構示意圖;圖5為本發明提供的一種惡意加密流量檢測裝置的結構示意圖。
具體實施方式
28.在本說明書中提到或者可能提到的上、下、左、右、前、後、正面、背面、頂部、底部等方位用語是相對於其構造進行定義的,它們是相對的概念。因此,有可能會根據其所處不同位置、不同使用狀態而進行相應地變化。所以,也不應當將這些或者其他的方位用語解釋為
限制性用語。
29.以下示例性實施例中所描述的實施方式並不代表與本公開相一致的所有實施方式。相反,它們僅是與本公開的一些方面相一致的實施方式的例子。
30.在本公開使用的術語是僅僅出於描述特定實施例的目的,而非旨在限制本公開。在本公開中所使用的單數形式的「一種」、「所述」和「該」也旨在包括多數形式,除非上下文清楚地表示其他含義。還應當理解,本公開中使用的術語「和/或」是指並包含一個或多個相關聯的列出項目的任何或所有可能組合。
31.除非有相反的說明,本公開提及的「第一」、「第二」等序數詞用於對多個對象進行區分,不用於限定多個對象的順序、時序、優先級或者重要程度。
32.請參考圖1所示,本發明提供了一種惡意加密流量檢測方法,該方法可以包括如下步驟:s11、獲取加密流量數據集,並基於數據流方向和會話,對加密流量數據集進行數據分割,提取加密流量數據集中的任一加密流量數據的多維特徵。
33.在具體實施時,可以先獲取後續用於惡意加密流量檢測所需的流量數據集,再對流量數據集進行預處理,以得到加密流量數據集。比如,可以通過wireshark軟體(一種網絡封包分析軟體)捕捉各種惡意加密攻擊流量,生成相應的pcap文件,並對pcap文件進行人工標註,獲得流量數據集。其中,各種惡意加密攻擊流量可以包括但不限於洛伊木馬、勒索軟體、蠕蟲病毒、惡意廣告、webshell、暴力破解等惡意加密攻擊流量。
34.在本發明中,通過wireshark軟體捕捉各種惡意加密攻擊流量,可以模擬真實的網絡環境,有助於提高後續惡意加密流量的檢測準確性和快速性。
35.通常情況下,收集到的流量數據集並不能直接作為機器學習模型的輸入,需要對其進行預處理工作。預處理通常包括流量清洗、流量分割、特徵集構建和流量轉換(下文介紹)。
36.由於獲得的流量數據集的數據是pcap文件,這些 pcap文件通常記錄原始的流量數據,因此,在步驟s11中,以進行流量清洗處理工作。
37.比如,在具體實施時,可以刪除流量數據集中與惡意加密流量不相關的網絡數據包、幹擾深度學習模型訓練的流量數據和未加密的流量數據,得到初始加密流量數據集。其中,與惡意加密流量不相關的網絡數據包,可以理解為不適合惡意加密流量檢測的研究的數據包,包括但不限於:地址解析協議(addressresolution protocol,arp)或網際網路控制消息協議(internet controlmessage protocol,icmp)數據包。幹擾深度學習模型訓練的流量數據,可以理解為可能會干擾深度學習模型訓練的重複、損壞、不必要和不完整的流量數據。
38.在具體實施時,可以對初始加密流量數據集中的加密流量數據進行數據截斷或填充處理,以使任一加密流量數據的長度一致,得到加密流量數據集,從而保證加密流量數據集中的加密流量數據的長度一致。
39.目前,目前常用特徵主要是提取傳輸層中所包含的時空特徵、頭部特徵、負載特徵和統計特徵,這種特徵提取方式,僅限於傳輸層,不能獲得多方面的特徵,不便於提升惡意加密流量的檢測性能。
40.基於此,在具體實施時,可以基於任一加密流量數據的五元組(源ip、源埠、目的
ip、目的埠、傳輸層協議),確定加密流量數據集的數據流方向和會話。然後,可以從數據流和會話的層面出發,按照數據流方向,以會話為單位對加密流量數據集進行數據分割,獲得m個會話對應的l個加密流量數據,其中,m為大於或等於1的整數,l為大於0的整數,以便於後續提取加密流量數據的多維特徵,有助於提升惡意加密流量的檢測性能。
41.由於每個會話通常有多個數據包,為了實現平衡,在本發明中,具體實施時,對於m個會話中l大於或等於預設閾值y(y取值可以根據實際需求進行設置,例如取值15)的第一會話,可以截取第一會話中的前y個加密流量數據,提取y個加密流量數據中的任一加密流量數據的多維特徵;對於m個會話中l小於y的第二會話,可以對第二會話補零,以使第二會話的數據長度達到y個,提取y個數據中的任一數據的多維特徵。如此,可以在保證數據包長度統一的同時,進一步減少特徵數量。
42.在具體實施時,多維特徵可以包括但不限於:元數據特徵、包長與時間序列特徵、包長與時間分布特徵、包長與時間統計特徵、側通道特徵、防篡改特徵,以及會話中的tcp頭部長度、ip頭部長度、源ip頭部長度、目的ip頭部長度、ip包長度、源ip發送數據包的個數、目的ip發送數據包的個數、ttl值、tcp窗口大小以及各自的數字統計特徵。其中,數字統計特徵可以包括但不限於:平均值、最大值、最小值、中位值、方差和標準差。
43.s12、基於任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量。
44.目前,對於惡意加密流量的檢測主要通過提取加密流量的tcp/ip時間統計特徵、元數據特徵來構建一維特徵向量,並通過機器學習或深度學習進行訓練,但這種檢測方式僅是針對會話中流之間的關係,提取一維特徵向量,導致忽略了會話中每個包之間相關聯的特徵。
45.基於此,在本發明中,通過基於任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量,充分關注到了流量會話中每個流的特徵以及會話中數據包長度序列、數據包到達的時間間隔序列等不同維度的特徵,使得構建的二維變長特徵向量的信息更為全面,有助於在複雜的網絡環境下,提升惡意加密流量的檢測性能,保證較高的惡意加密流量數據的檢測準確性和快速性。
46.在本發明提供的一種可適用的場景下,可以採用隨機森林算法從任一加密流量數據的多維特徵中選取排名靠前的n(可以根據實際需求進行設置)個特徵,再基於n個特徵,以會話為單位構建二維變長特徵向量,進一步有助於提升惡意加密流量的檢測性能。
47.s13、對二維變長特徵向量進行特徵預處理後,構建變長序列特徵向量。
48.由於構建的二維變長特徵向量的序列長度不一,在具體實施時,可以對二維變長特徵向量中的變長序列填充補零,使得二維變長特徵向量的序列長度一致。
49.在具體實施時,對補零後的二維變長特徵向量進行歸一化處理,再對經過歸一化處理的二維變長特徵向量進行標準化處理。比如,可以對補零後的二維變長特徵向量存在的埠等無意義特徵進行歸一化處理,以將特徵映射到[0,1]之間,映射公式可以如下述公式(1)所示。最後對經過歸一化處理的二維變長特徵向量進行標準化處理,將特徵轉化為無量綱的純數值,避免不同的特徵之間的數值相差過大,導致採用深度學習模型訓練時,算法不收斂等問題。經過處理的特徵符合標準正態分布,即均值為0,標準差為1,標準化公式可以如下述公式(2)所示。
[0050]
(1)(2)其中,x為二維變長特徵向量中的特徵,和對應埠特徵的最小值和最大值[1,65525],和分別代表特徵的均值和標準差。
[0051]
在具體實施時,可以基於經過標準化處理後的二維變長特徵向量,構建變長序列特徵向量。
[0052]
示例性的,變長序列特徵向量可以如圖2所示,其中,圖2以每個會話中包含15個流量包為例,對應圖2中的session和pkt,而1、2、3、4為提取的流量特徵。label對應每個會話的標籤0和1,分別代表正常加密流量和惡意加密流量。
[0053]
s14、構建bigru_cnn深度學習模型,並將變長序列特徵向量輸入bigru_cnn深度學習模型中進行識別,獲得識別結果。
[0054]
在具體實施時,該識別結果包括惡意加密流量和正常加密流量。
[0055]
在具體實施時,可以以雙向門控循環單元(bidirectional gated recurrentunit,bigru)深度學習模型為數據輸入模型,以卷積神經網絡(convolutionneural network,cnn)深度學習模型為數據輸出模型,構建bigru_cnn深度學習模型。比如,如果直接將特徵輸入至bigru深度學習模型中,將會使得填充的數據直接參與深度學習模型的運算,使其具有特殊的含義,因此,可以通過keras(一種由python編寫的開源人工神經網絡庫)引入masking(遮蓋)層接入到bigru深度學習模型,以挖掘出流量中的時間特徵,同時引入cnn深度學習模型接入至bigru深度學習模型的輸出,進一步挖掘出流量中的空間特徵,使得提取變長序列特徵向量的信息更為全面。
[0056]
作為一種示例,bigru_cnn深度學習模型可以如圖3所示,分為6個部分,依次為輸入層、bigru層、conv2d(卷積)層、maxpooling2d(最大池化)層、flatten(展平)層、dense(全連接)層,該bigru_cnn深度學習模型懟惡意加密流量檢測有較高的精度。
[0057]
在本發明中,通過構建bigru_cnn深度學習模型,可以從時間維度和空間維度不斷挖掘特徵,使得提取變長序列特徵向量的信息更為全面,最終實現對惡意加密流量檢測的二分類。
[0058]
在具體實施時,以圖3所示的bigru_cnn深度學習模型為例,將變長序列特徵向量輸入bigru_cnn深度學習模型中進行識別,獲得識別結果的過程可以如下:將維度為(15,n)的變長序列特徵向量作為bigru_cnn深度學習模型的輸入層的輸入,其中,n為通過之後挑選的特徵個數。
[0059]
通過masking層設置屏蔽值mask_value為0,然後接入到bigru層,設置units(單位)為32、sequence(順序)為1(正確),再嵌套bidirectional(雙向)使其構成雙向bigru,輸出維度為(15,64)的特徵數據。
[0060]
再然後,接入卷積層,設置濾波器filter為32、卷積核kernel為3,使用rule函數作為激活函數,輸出維度為(15,64,32)。
[0061]
之後,使用最大池化層對特徵圖進行採樣,設置池化大小為2,輸出維度為(7,32,32)。
[0062]
隨後,接入flatten層展開數據變為一維特徵向量連接4層dense全連接層,主要參數為1024、512、256、1。
[0063]
最後,使用sigmoid激活函數,針對全連接層的輸出生成概率值,判斷是否為惡意加密流量,輸出識別結果。
[0064]
作為一種示例,為了檢驗證本發明中的bigru_cnn深度學習模型的識別性能,選取cnn深度學習模型、循環神經網絡(recurrent neural network, rnn)模型、長短期記憶(long short-termmemory, lstm)模型和門控循環單元(gaterecurrent unit, gru)模型,與本發明的bigru_cnn深度學習模型做比對,這四個模型與本發明的bigru_cnn深度學習模型採用相同方式進行數據預處理,通過隨機森林算法對特徵進行重要度排序,選取排名前80個特徵,以準確率、精確率、召回率、f1值作為模型評價指標。在二分類結果中,本發明中的bigru-cnn深度學習模型的準確率、精確率、召回率、f1值分別為0.9461、0.9462、0.9471、0.9467,cnn深度學習模型的準確率、精確率、召回率、f1值分別為0.9229、0.9114、0.9391、0.9250,rnn模型的準確率、精確率、召回率、f1值分別為0.9279、0.9225、0.9364、0.9294,lstm模型的準確率、精確率、召回率、f1值分別為0.9290、0.9314、0.9282、0.9298,gru模型的準確率、精確率、召回率、f1值分別為0.9385、0.9400、0.9383、0.9392。
[0065]
基於上述二分類結果來看,本發明中的bigru-cnn深度學習模型的準確率、精確率、召回率、f1值,相比較於其他單一的深度學習模型均有良好的提升,得益於bigru-cnn深度學習模型能夠充分挖掘出流量中的時間特徵與局部的空間特徵,避免了細微特徵在訓練過程中丟失,有效的提高了惡意加密流量檢測的準確率與召回率,並且進一步的降低了誤報率,解決了單一深度學習模型提取特徵不全面問題。
[0066]
本發明中,針對惡意加密流量的特徵,使用了不同維度的特徵,包括元數據特徵、包長與時間序列特徵、包長與時間分布特徵、包長與時間統計特徵、側通道特徵、防篡改特徵,構建二維變長特徵向量,同時引入隨機森林算法對特徵進行重要度排序,挑選排名靠前的特徵,並通過bigru深度學習模型挖掘出流量中的時間特徵,結合cnn深度學習模型充分挖掘出流量中的空間特徵,使得提取的變長序列特徵向量的信息更為全面,有效地提高了惡意加密流量檢測的準確率與召回率,並且進一步地降低了誤報率,解決了單一深度學習模型提取特徵不全面問題,能夠有效識別惡意加密流量。
[0067]
通過以上描述,相較於現有技術而言,本發明通過獲取加密流量數據集,並基於數據流方向和會話,對加密流量數據集進行數據分割,提取加密流量數據集中的任一加密流量數據的多維特徵,充分關注到了流量會話中每個流的特徵以及會話中不同維度的特徵,使得構建的二維變長特徵向量的信息更為全面;基於任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量,對二維變長特徵向量進行特徵預處理後,構建變長序列特徵向量,構建bigru_cnn深度學習模型,並將變長序列特徵向量輸入bigru_cnn深度學習模型中進行識別,獲得識別結果,識別結果包括惡意加密流量和正常加密流量,從而可以在複雜的網絡環境下,通過bigru_cnn深度學習模型充分挖掘出流量中的時間特徵與局部的
空間特徵,使得提取變長序列特徵向量的信息更為全面,進而可以提升惡意加密流量的檢測性能,保證較高的惡意加密流量數據的檢測準確性和快速性。
[0068]
基於同一發明構思,本發明實施例還提供了一種惡意加密流量檢測系統,如圖4所示,惡意加密流量檢測系統20可以包括:採集單元,用於獲取加密流量數據集;提取單元,用於基於數據流方向和會話,對加密流量數據集進行數據分割,提取加密流量數據集中的任一加密流量數據的多維特徵;識別單元,用於基於任一加密流量數據的多維特徵,以會話為單位構建二維變長特徵向量;對二維變長特徵向量進行特徵預處理後,構建變長序列特徵向量;構建bigru_cnn深度學習模型,並將變長序列特徵向量輸入bigru_cnn深度學習模型中進行識別,獲得識別結果;識別結果包括惡意加密流量和正常加密流量。
[0069]
在一種可能的設計中,採集單元21具體用於:通過wireshark軟體捕捉各種惡意加密攻擊流量,生成相應的pcap文件,並對pcap文件進行人工標註,獲得流量數據集;刪除流量數據集中與惡意加密流量不相關的網絡數據包、幹擾深度學習模型訓練的流量數據和未加密的流量數據,得到初始加密流量數據集;對初始加密流量數據集中的加密流量數據進行數據截斷或填充處理,以使任一加密流量數據的長度一致,得到加密流量數據集。
[0070]
在一種可能的設計中,提取單元22具體用於:基於任一加密流量數據的五元組,確定加密流量數據集的數據流方向和會話;按照數據流方向,以會話為單位對加密流量數據集進行數據分割,獲得m個會話對應的l個加密流量數據;m為大於或等於1的整數,l為大於0的整數;對於m個會話中l大於或等於預設閾值y的第一會話,截取第一會話中的前y個加密流量數據,提取y個加密流量數據中的任一加密流量數據的多維特徵;對於m個會話中l小於y的第二會話,對第二會話補零,以使第二會話的數據長度達到y個,提取y個數據中的任一數據的多維特徵。
[0071]
在一種可能的設計中,多維特徵包括:元數據特徵、包長與時間序列特徵、包長與時間分布特徵、包長與時間統計特徵、側通道特徵、防篡改特徵,以及會話中的tcp頭部長度、ip頭部長度、源ip頭部長度、目的ip頭部長度、ip包長度、源ip發送數據包的個數、目的ip發送數據包的個數、ttl值、tcp窗口大小以及各自的數字統計特徵,數字統計特徵包括平均值、最大值、最小值、中位值、方差和標準差。
[0072]
在一種可能的設計中,識別單元23具體用於:採用隨機森林算法從任一加密流量數據的多維特徵中選取排名靠前的n個特徵;基於n個特徵,以會話為單位構建二維變長特徵向量。
[0073]
在一種可能的設計中,識別單元23具體用於:對二維變長特徵向量中的變長序列填充補零,使得二維變長特徵向量的序列長度一致;對補零後的二維變長特徵向量進行歸一化處理,再對經過歸一化處理的二維變長特徵向量進行標準化處理;
基於經過標準化處理後的二維變長特徵向量,構建變長序列特徵向量。
[0074]
在一種可能的設計中,識別單元23具體用於:以雙向門控循環單元bigru深度學習模型為數據輸入模型,卷積神經網絡cnn深度學習模型為數據輸出模型,構建bigru_cnn深度學習模型。
[0075]
需要說明的是,上述採集單元21、提取單元22和識別單元23可以集成設置在同一個設備中,如電腦,也可以獨立設置在不同的設備中,本發明對此不作限定。
[0076]
本發明實施例中的惡意加密流量檢測系統20與上述圖1所示的惡意加密流量檢測方法是基於同一構思下的發明,通過前述對惡意加密流量檢測方法的詳細描述,本領域技術人員可以清楚的了解本實施例中惡意加密流量檢測系統20的實施過程,所以為了說明書的簡潔,在此不再贅述。
[0077]
基於同一發明構思,本發明實施例還提供了一種惡意加密流量檢測裝置,如圖5所示,惡意加密流量檢測裝置30可以包括:至少一個存儲器31和至少一個處理器32。其中:至少一個存儲器31用於存儲一個或多個程序。
[0078]
當一個或多個程序被至少一個處理器32執行時,實現上述圖1所示的惡意加密流量檢測方法。
[0079]
惡意加密流量檢測裝置30還可以可選地包括通信接口,通信接口用於與外部設備進行通信和數據交互傳輸。
[0080]
需要說明的是,存儲器31可能包含高速ram存儲器,也可能還包括非易失性存儲器(nonvolatile memory),例如至少一個磁碟存儲器。
[0081]
在具體的實現過程中,如果存儲器31、處理器32及通信接口集成在一塊晶片上,則存儲器31、處理器32及通信接口可以通過內部接口完成相互間的通信。如果存儲器31、處理器32和通信接口獨立實現,則存儲器31、處理器32和通信接口可以通過總線相互連接並完成相互間的通信。
[0082]
基於同一發明構思,本發明實施例還提供了一種計算機可讀存儲介質,該計算機可讀存儲介質可以存儲有至少一個程序,當至少一個程序被處理器執行時,實現上述圖1所示的惡意加密流量檢測方法。
[0083]
應當理解,計算機可讀存儲介質為可存儲數據或程序的任何數據存儲設備,數據或程序其後可由計算機系統讀取。計算機可讀存儲介質的示例包括:只讀存儲器、隨機存取存儲器、cd-rom、hdd、dvd、磁帶和光學數據存儲設備等。
[0084]
計算機可讀存儲介質還可分布在網絡耦接的計算機系統中使得計算機可讀代碼以分布式方式來存儲和執行。
[0085]
計算機可讀存儲介質上包含的程序代碼可以用任何適當的介質傳輸,包括但不限於:無線、電線、光纜、射頻(radiofrequency,rf)等,或者上述的任意合適的組合。
[0086]
以上所述實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但並不能因此而理解為對發明專利範圍的限制。應當指出的是,對於本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬於本發明的保護範圍。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀