本發(fā)明涉及網(wǎng)絡(luò)安全領(lǐng)域,更為具體的,涉及一種基于多分類神經(jīng)網(wǎng)絡(luò)模型的流量識別與關(guān)聯(lián)方法、抗關(guān)聯(lián)性分析方法及裝置。
背景技術(shù):
1、匿名網(wǎng)絡(luò)流量關(guān)聯(lián)是網(wǎng)絡(luò)安全領(lǐng)域的重要研究方向,是指對于在匿名網(wǎng)絡(luò)環(huán)境中產(chǎn)生的流量數(shù)據(jù)進行分析和關(guān)聯(lián),以此來識別和追蹤數(shù)據(jù)流在網(wǎng)絡(luò)中的源頭和目的地。這個過程涉及到破解或繞過流量的匿名性,實現(xiàn)對于網(wǎng)絡(luò)行為的跟蹤和審計。匿名網(wǎng)絡(luò)流量關(guān)聯(lián)技術(shù)在網(wǎng)絡(luò)攻擊溯源、惡意行為追蹤等場景中具有應用價值。
2、現(xiàn)有的匿名網(wǎng)絡(luò)流量關(guān)聯(lián)方法可以分為基于統(tǒng)計的方法和基于模型的方法。它們都需要將每個數(shù)據(jù)流抽象為描述流形狀的原始特征序列(例如,數(shù)據(jù)包的大小、時間、方向序列,流量突發(fā))。基于統(tǒng)計的方法使用相關(guān)系數(shù)或統(tǒng)計距離來衡量進出流序列的相似度。具有最高相似度的流對被認為是相關(guān)的?;谀P偷姆椒☉脵C器學習或深度學習模型來關(guān)聯(lián)數(shù)據(jù)流,直接將進出流序列放在一起并輸入到模型中,然后根據(jù)“相關(guān)”或“不相關(guān)”的二元標簽來訓練模型。一個訓練良好的相關(guān)模型將輸出輸入流對的相關(guān)概率,同樣地,概率最高的流對被認為是相關(guān)的。
3、自匿名通信相關(guān)技術(shù)提出至今,產(chǎn)生了大量的匿名通信系統(tǒng),較為典型的有tor、i2p、freenet、netcamo、tarzan等。其中,tor、i2p、freenet三者約占整個市場份額的90%,而tor正式版自2003年發(fā)布以來,依托于核心技術(shù)“洋蔥路由”,現(xiàn)已成為使用范圍最廣、用戶保有量最大的低延時匿名通信系統(tǒng)。由于tor網(wǎng)絡(luò)使用率最高,長期以來,流量關(guān)聯(lián)技術(shù)基本以tor網(wǎng)絡(luò)作為研究對象,使得攻擊模型僵化,輸入特征局限。目前最先進的流量關(guān)聯(lián)方法一般只針對tor網(wǎng)絡(luò)流量有效,例如sun等人的raptor、nasr等人的deepcorr、oh等人的deepcoffea和lopes等人的滑動子集和流量關(guān)聯(lián)方法等。同時也存在少量的針對其他特定類別的匿名通信網(wǎng)絡(luò)的流量關(guān)聯(lián)方法。在實踐中,使用這些方法的前提是首先要識別出擬關(guān)聯(lián)的通信流量所使用的匿名通信網(wǎng)絡(luò)的類別,然后再應用對應的流量關(guān)聯(lián)方法執(zhí)行關(guān)聯(lián)行動,這給流量關(guān)聯(lián)任務增添了流量識別環(huán)節(jié),從而增加了監(jiān)控時間需求。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種基于多分類神經(jīng)網(wǎng)絡(luò)模型的流量識別與關(guān)聯(lián)方法、抗關(guān)聯(lián)性分析方法及裝置,解決了現(xiàn)有流量識別、關(guān)聯(lián)模型及算法無法同時執(zhí)行流量識別和流量關(guān)聯(lián)的技術(shù)問題,以及在面向不同匿名通信網(wǎng)絡(luò)執(zhí)行流量關(guān)聯(lián)任務時,現(xiàn)有流量關(guān)聯(lián)模型及算法無法通用的技術(shù)問題,同時提供一種新穎的、通用的匿名通信網(wǎng)絡(luò)抗關(guān)聯(lián)性分析技術(shù)方案。
2、本發(fā)明的目的是通過以下方案實現(xiàn)的:
3、一種基于多分類神經(jīng)網(wǎng)絡(luò)模型的流量識別與關(guān)聯(lián)方法,包括以下步驟:
4、將在各種匿名通信網(wǎng)絡(luò)中,彼此沒有通信關(guān)系的流量之間所具有的共性基礎(chǔ)特征作為非關(guān)聯(lián)白噪音;
5、再通過訓練多分類神經(jīng)網(wǎng)絡(luò)模型的方式從非關(guān)聯(lián)流量中抽取非關(guān)聯(lián)白噪音,實現(xiàn)對非關(guān)聯(lián)共性特征的抽??;通過利用多分類神經(jīng)網(wǎng)絡(luò)處理輸入流量,同時得到擬關(guān)聯(lián)流量的所屬匿名通信網(wǎng)絡(luò)類別和與非關(guān)聯(lián)白噪音的特征距離,進而同時獲得流量識別和流量關(guān)聯(lián)結(jié)果。
6、進一步地,多分類神經(jīng)網(wǎng)絡(luò)模型的生成訓練包括如下子步驟:
7、s1,構(gòu)建包含多種類匿名通信流量的通信數(shù)據(jù)集;
8、s2,將通信數(shù)據(jù)集整理為非關(guān)聯(lián)流量和關(guān)聯(lián)流量;
9、s3,由所述非關(guān)聯(lián)流量信息構(gòu)建結(jié)構(gòu)化非關(guān)聯(lián)數(shù)據(jù)集;
10、s4,面向流量關(guān)聯(lián)問題選擇多分類神經(jīng)網(wǎng)絡(luò)模型;
11、s5,基于所述非關(guān)聯(lián)數(shù)據(jù)集訓練多分類神經(jīng)網(wǎng)絡(luò)模型。
12、進一步地,在步驟s1中,所述構(gòu)建包含多種類匿名通信流量的通信數(shù)據(jù)集,具體包括子步驟:
13、首先,搭建使用不同種類的匿名通信網(wǎng)絡(luò)進行通信的通信源與通信目標對;一個通信源只通過一種匿名通信網(wǎng)絡(luò)與一個通信目標進行通信;
14、再構(gòu)建多對利用不同種類匿名通信網(wǎng)絡(luò)相互通信的通信源和通信目標;在任一通信源與其所使用的匿名通信網(wǎng)絡(luò)的入口中繼節(jié)點之間、其所使用的匿名通信網(wǎng)絡(luò)的出口中繼節(jié)點與對應的通信目標之間,分別設(shè)置發(fā)送端監(jiān)聽和接收端監(jiān)聽設(shè)施,用于實現(xiàn)對通信源流量和通信目標流量的監(jiān)聽采集;收集所采集的所有通信對流量,構(gòu)成通信數(shù)據(jù)集。
15、進一步地,在步驟s2中,所述將通信數(shù)據(jù)集整理為非關(guān)聯(lián)流量和關(guān)聯(lián)流量,具體包括子步驟:
16、在通信數(shù)據(jù)集中,先將彼此通信的通信源與通信目標流量對集合到一起,成為通信組,通信組流量即為關(guān)聯(lián)流量;
17、再將彼此不通信的通信源與通信目標流量對集合到一起,成為非通信組,非通信組流量即為非關(guān)聯(lián)流量;其中,在構(gòu)造非通信組時,將通信組中的通信源流量與除了與該通信源進行通信的通信目標之外的所有通信目標流量分別配對,成為非通信組。
18、進一步地,在步驟s3中,所述由所述非關(guān)聯(lián)流量信息構(gòu)建結(jié)構(gòu)化非關(guān)聯(lián)數(shù)據(jù)集,具體包括子步驟:
19、從非關(guān)聯(lián)流量中抽取非關(guān)聯(lián)流量信息,構(gòu)建結(jié)構(gòu)化的非關(guān)聯(lián)數(shù)據(jù)集;所抽取的流量信息用于執(zhí)行流量關(guān)聯(lián)操作的輸入信息,將抽取出的流量信息在保留原有非關(guān)聯(lián)配對的情況下以結(jié)構(gòu)化的方式組織起來,形成結(jié)構(gòu)化非關(guān)聯(lián)數(shù)據(jù)集。
20、進一步地,在步驟s4中,所述面向流量關(guān)聯(lián)問題選擇多分類神經(jīng)網(wǎng)絡(luò)模型,具體包括子步驟:
21、以各種匿名通信網(wǎng)絡(luò)類型為不同類別,目標是識別出輸入的非關(guān)聯(lián)流量對所使用的匿名通信網(wǎng)絡(luò)的類型。
22、進一步地,在步驟s5中,所述基于所述非關(guān)聯(lián)數(shù)據(jù)集訓練多分類神經(jīng)網(wǎng)絡(luò)模型,具體包括子步驟:
23、輸入數(shù)據(jù)準備為從結(jié)構(gòu)化非關(guān)聯(lián)數(shù)據(jù)集中抽取非關(guān)聯(lián)流量信息序列,作為模型的輸入數(shù)據(jù);
24、模型計算輸出將輸入數(shù)據(jù)經(jīng)過多分類神經(jīng)網(wǎng)絡(luò)運算輸出為可能使用的不同匿名通信網(wǎng)絡(luò)的概率;
25、交叉熵損失函數(shù)用于衡量預測概率分布與真實概率分布之間差異的損失函數(shù),同時能夠在執(zhí)行分類時表征分類器對于該次分類的信心程度,損失函數(shù)越小表示信心越強;
26、參數(shù)調(diào)整為通過反向傳播算法調(diào)整神經(jīng)網(wǎng)絡(luò)的參數(shù),通過優(yōu)化算法,使得損失函數(shù)最小化。
27、進一步地,所述通過訓練多分類神經(jīng)網(wǎng)絡(luò)模型的方式從非關(guān)聯(lián)流量中抽取非關(guān)聯(lián)白噪音,實現(xiàn)對非關(guān)聯(lián)共性特征的抽??;通過利用多分類神經(jīng)網(wǎng)絡(luò)處理輸入流量,同時得到擬關(guān)聯(lián)流量的所屬匿名通信網(wǎng)絡(luò)類別和與非關(guān)聯(lián)白噪音的特征距離,進而同時獲得流量識別和流量關(guān)聯(lián)結(jié)果,具體包括如下子步驟:
28、步驟1),采集擬關(guān)聯(lián)雙方流量數(shù)據(jù):通過監(jiān)聽設(shè)施對擬進行流量關(guān)聯(lián)分析的通信源和通信目標的流量進行采集;
29、步驟2),構(gòu)建通信源流量信息序列和通信目標流量信息序列:將采集到的通信源和通信目標的流量數(shù)據(jù)整理成流量信息序列;流量信息序列與在多分類神經(jīng)網(wǎng)絡(luò)的訓練階段所使用的結(jié)構(gòu)化非關(guān)聯(lián)數(shù)據(jù)集中的流量信息序列的內(nèi)容和格式保持一致;
30、步驟3),利用多分類神經(jīng)網(wǎng)絡(luò)模型計算得到各個分類概率:將構(gòu)建好的通信源和通信目標的流量信息序列輸入到訓練好的多分類神經(jīng)網(wǎng)絡(luò)模型中,通過模型的計算得到各個分類概率,該輸出數(shù)據(jù)代表模型對輸入數(shù)據(jù)的分類結(jié)果;
31、步驟4),通過分類概率進行流量識別:依據(jù)多分類神經(jīng)網(wǎng)絡(luò)輸出的分類結(jié)果進行流量識別;選擇分類概率最高的類別作為識別結(jié)果,認為擬關(guān)聯(lián)流量使用了該類別的匿名通信網(wǎng)絡(luò)進行通信;
32、步驟5),利用輸入和輸出數(shù)據(jù)基于交叉熵損失函數(shù)計算損失值:基于交叉熵損失函數(shù)計算模型輸出數(shù)據(jù)的損失值;損失函數(shù)的計算方法與在多分類神經(jīng)網(wǎng)絡(luò)的訓練階段所使用的損失函數(shù)的計算方法保持一致;通過計算損失函數(shù),得到損失值;
33、步驟6),通過判定損失值是否大于判定閾值識別關(guān)聯(lián)性:將計算得到的損失值與預設(shè)的判定閾值進行比較;若損失值大于閾值,則說明多分類神經(jīng)網(wǎng)絡(luò)分類器對于該次分類的信心不足,進一步說明擬關(guān)聯(lián)流量對于非關(guān)聯(lián)白噪音的偏離較大,判定為“關(guān)聯(lián)”;若損失值小于閾值,則說明多分類神經(jīng)網(wǎng)絡(luò)分類器對于該次分類的信心充分,進一步說明擬關(guān)聯(lián)流量對于非關(guān)聯(lián)白噪音的偏離較小,判定為“不關(guān)聯(lián)”。
34、一種基于多分類神經(jīng)網(wǎng)絡(luò)模型的抗關(guān)聯(lián)性分析方法,包括:
35、步驟1),采集通信雙方流量數(shù)據(jù):在選定匿名通信網(wǎng)絡(luò)中,采集已知具有通信關(guān)系的通信源和通信目標的流量數(shù)據(jù);通過發(fā)送端和接收端監(jiān)聽設(shè)施,分別監(jiān)測通信源的發(fā)/收流量和通信目標的收/發(fā)流量;
36、步驟2),構(gòu)建通信源流量信息序列和通信目標流量信息序列:將采集到的通信源和通信目標的流量數(shù)據(jù)整理成流量信息序列;流量信息序列與在多分類神經(jīng)網(wǎng)絡(luò)的訓練階段所使用的結(jié)構(gòu)化非關(guān)聯(lián)數(shù)據(jù)集中的流量信息序列的內(nèi)容和格式保持一致;
37、步驟3),利用多分類神經(jīng)網(wǎng)絡(luò)模型計算得到各個分類概率:將構(gòu)建好的通信源和通信目標的流量信息序列輸入到訓練好的多分類神經(jīng)網(wǎng)絡(luò)模型中,通過模型的計算得到各個分類概率,該輸出數(shù)據(jù)代表模型對輸入數(shù)據(jù)的分類結(jié)果;
38、步驟4),利用輸入和輸出數(shù)據(jù)基于交叉熵損失函數(shù)計算損失值:基于交叉熵損失函數(shù)計算模型輸出數(shù)據(jù)的損失值;損失函數(shù)的計算方法與在多分類神經(jīng)網(wǎng)絡(luò)的訓練階段所使用的損失函數(shù)的計算方法保持一致;通過計算損失函數(shù),得到損失值;
39、步驟5),以損失值標志匿名通信網(wǎng)絡(luò)的抗關(guān)聯(lián)能力:將損失值作為抗關(guān)聯(lián)性指標;損失值越小,表示多分類神經(jīng)網(wǎng)絡(luò)分類器對于該次分類的信心越強,說明使用該匿名通信網(wǎng)絡(luò)彼此通信的流量特征與非關(guān)聯(lián)白噪音的差異越小,抗關(guān)聯(lián)能力越好;損失值越大,表示多分類神經(jīng)網(wǎng)絡(luò)分類器對于該次分類的信心越差,說明使用該匿名通信網(wǎng)絡(luò)彼此通信的流量特征與非關(guān)聯(lián)白噪音的差異越大,抗關(guān)聯(lián)能力越弱。
40、一種基于多分類神經(jīng)網(wǎng)絡(luò)模型的流量識別與關(guān)聯(lián)裝置,其特征在于,包括處理器和存儲器,所述存儲器中存儲有計算機程序,當所述計算機程序被所述處理器加載時執(zhí)行如上任一項所述的方法。
41、一種基于多分類神經(jīng)網(wǎng)絡(luò)模型的抗關(guān)聯(lián)性分析裝置,包括處理器和存儲器,所述存儲器中存儲有計算機程序,當所述計算機程序被所述處理器加載時執(zhí)行如上所述的方法。
42、本發(fā)明的有益效果包括:
43、本發(fā)明解決了現(xiàn)有流量識別、關(guān)聯(lián)模型及算法無法同時執(zhí)行流量識別和流量關(guān)聯(lián)的技術(shù)問題,以及在面向不同匿名通信網(wǎng)絡(luò)執(zhí)行流量關(guān)聯(lián)任務時,現(xiàn)有流量關(guān)聯(lián)模型及算法無法通用的技術(shù)問題。同時提供一種新穎的、通用的匿名通信網(wǎng)絡(luò)抗關(guān)聯(lián)性分析技術(shù)。本方法中的“非關(guān)聯(lián)白噪音”是指在各種匿名通信網(wǎng)絡(luò)中,彼此沒有通信關(guān)系的流量之間所具有的共性基礎(chǔ)特征。本發(fā)明基于多種類匿名通信流量特征共建非關(guān)聯(lián)白噪音,通過計算擬關(guān)聯(lián)通信流量與非關(guān)聯(lián)白噪音的特征距離,并使用閾值比較、反向判定的方式識別關(guān)聯(lián)性,得到具有跨匿名網(wǎng)絡(luò)類別的通用的流量關(guān)聯(lián)方法;通過訓練多分類神經(jīng)網(wǎng)絡(luò)的方式從非關(guān)聯(lián)流量中抽取非關(guān)聯(lián)白噪音,實現(xiàn)了對非關(guān)聯(lián)共性特征的高維度、自動化的抽取,提升了非關(guān)聯(lián)白噪音提取的精準度,同時也保障了方法的可操作性;通過利用多分類神經(jīng)網(wǎng)絡(luò)處理輸入流量,能夠同時得到擬關(guān)聯(lián)流量的所屬匿名通信網(wǎng)絡(luò)類別和與非關(guān)聯(lián)白噪音的特征距離,進而同時獲得流量識別和流量關(guān)聯(lián)結(jié)果,賦予了方法的多功能性,節(jié)省了流量關(guān)聯(lián)工作中間環(huán)節(jié),降低了任務執(zhí)行成本。進一步的,某特定匿名通信網(wǎng)絡(luò)中的已知具有通信關(guān)系的關(guān)聯(lián)流量與非關(guān)聯(lián)白噪音的特征距離的大小,可以表征該匿名通信網(wǎng)絡(luò)的抗關(guān)聯(lián)能力的弱強,成為了一種新穎的、跨網(wǎng)絡(luò)類別的通用的匿名通信網(wǎng)絡(luò)抗關(guān)聯(lián)性分析技術(shù)。