【惡意加密流量檢測中的圖神經(jīng)網(wǎng)絡(luò)模型研究16000字】_第1頁
【惡意加密流量檢測中的圖神經(jīng)網(wǎng)絡(luò)模型研究16000字】_第2頁
【惡意加密流量檢測中的圖神經(jīng)網(wǎng)絡(luò)模型研究16000字】_第3頁
【惡意加密流量檢測中的圖神經(jīng)網(wǎng)絡(luò)模型研究16000字】_第4頁
【惡意加密流量檢測中的圖神經(jīng)網(wǎng)絡(luò)模型研究16000字】_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第一章緒論[2]。根據(jù)網(wǎng)絡(luò)流量的不同切分粒度,原始的網(wǎng)絡(luò)流量可以被切分為數(shù)據(jù)包、網(wǎng)絡(luò)流和雙向網(wǎng)絡(luò)流三種類型,詳細的描述如下所示(劉俊豪,蔣夢珍,2022):1.數(shù)據(jù)包:設(shè)原始網(wǎng)絡(luò)流量中數(shù)據(jù)包表示為pipkey其中keyi表示數(shù)據(jù)包的五元組信息,t2.網(wǎng)絡(luò)流:網(wǎng)絡(luò)流flowi,可以視為在一定時間段內(nèi),按照捕獲時間戳ti的先后順序排列的有序數(shù)據(jù)包序列。在網(wǎng)絡(luò)流中,所有的數(shù)據(jù)包都具有相同的五元組信息flow3.雙向網(wǎng)絡(luò)流:雙向網(wǎng)絡(luò)流Biflow,又被稱為會話。它與網(wǎng)絡(luò)流的定義類似,顧名思義,在雙向網(wǎng)絡(luò)流中,源IP地址、源端口號和目的IP地址、目的端口號是可以互換的。因此,基于這一前提條件雙向網(wǎng)絡(luò)流可以視為上行網(wǎng)絡(luò)流flowout與下行網(wǎng)絡(luò)流flowin的交集。其中上行網(wǎng)絡(luò)流表示主機向外發(fā)送的流量,下行網(wǎng)絡(luò)流表示主機從外部接收到的流量(郭雅靜,劉子豪,2020)。

圖3-1雙向網(wǎng)絡(luò)流示意圖單個的數(shù)據(jù)包所包涵的數(shù)據(jù)量非常小,不足以從中獲得足夠的信息。因此很難將單個數(shù)據(jù)包作為實際網(wǎng)絡(luò)流量識別方法的基本研究對象。網(wǎng)絡(luò)流作為一定時間段內(nèi)所有數(shù)據(jù)包內(nèi)容的集合,具有足夠的數(shù)據(jù)可以用于流量的分析,因此網(wǎng)絡(luò)流量分析領(lǐng)域通常以網(wǎng)絡(luò)流作為網(wǎng)絡(luò)流量識別方法的基本研究對象(郭子豪,劉婉君,2020)。在數(shù)據(jù)處理階段,過往研究的閱歷提醒本研究需強化新興分析工具與技術(shù)的運用。隨著信息技術(shù)的迅猛發(fā)展,像大數(shù)據(jù)分析、機器學(xué)習(xí)算法這類前沿工具,正逐步成為科研領(lǐng)域的重要構(gòu)成。這些技術(shù)不僅能助力本文更高效地應(yīng)對海量數(shù)據(jù),還能挖掘出傳統(tǒng)手段難以察覺的深層信息與規(guī)律。故而,在后續(xù)探究里,本研究應(yīng)積極探尋將這些前沿技術(shù)融入分析體系,以此提高研究結(jié)果的精準度與洞察力。雙向網(wǎng)絡(luò)流同時涵蓋了網(wǎng)絡(luò)通信中的上行流量信息和下行流量信息,能夠?qū)νㄐ烹p方在TLS加密協(xié)議交互過程中的產(chǎn)生握手信息、密鑰協(xié)商信息等進行更好地描述。透過此見本質(zhì)由于本文中的研究對象是以TLS/SSL為基礎(chǔ)的加密流量,因此以雙向網(wǎng)絡(luò)流的方式來描述網(wǎng)絡(luò)流量較為合適。因此,本文選擇按照雙向網(wǎng)絡(luò)流的粒度來對原始網(wǎng)絡(luò)流量進行切分(劉瑞陽,魏芝和,2022)。3.2雙向網(wǎng)絡(luò)流的特征向量化除了源端口、目的端口、協(xié)議字段等基本信息外,在2.2.3小節(jié)中提到,網(wǎng)絡(luò)流量的統(tǒng)計特征如數(shù)據(jù)包的長度、流的長度、流的持續(xù)時間以及數(shù)據(jù)包到達的時間間隔等信息,這點透露出重要信息能夠?qū)用軔阂饬髁孔R別的準確度起到幫助的作用。TLS/SSL協(xié)議的握手階段客戶端與服務(wù)端產(chǎn)生的TLS加密協(xié)商信息,如加密協(xié)議采用的TLS版本、密碼套件、密鑰信息、TLS擴展選項等,也能夠提升惡意流量識別的精確性。上述的TLS協(xié)商信息是明文傳輸?shù)?,對用戶直接可見,因此不需要解密即可獲得這類加密相關(guān)數(shù)據(jù)。本文選擇的特征具體如表3-1所示(蔡鵬宇,鄧雪麗,2022)。表3-1特征詳情特征類別具體描述元數(shù)據(jù)特征源端口、目的端口、上行包數(shù)、下行包數(shù)、上行字節(jié)數(shù)、下行字節(jié)數(shù)、流的持續(xù)時間TLS特征TLS支持版本、TLS通信版本、客戶端提供的密碼套件、服務(wù)端選擇的密碼套件、TLS擴展、公鑰長度??臻g序列特征數(shù)據(jù)包的長度序列時間序列特征數(shù)據(jù)包的到達時間間隔序列(1)元數(shù)據(jù)特征:源端口、目的端口、上行包數(shù)、下行包數(shù)、上行字節(jié)數(shù)、下行字節(jié)數(shù)、流的持續(xù)時間7類信息各占一,共7維;(2)TLS特征:客戶端可能提供的全部密碼套件共176個,將其設(shè)置為176維的0-1向量,每一位代表一個密碼套件。向量化時需要遍歷雙向流中的客戶端實際提供的每個密碼套件,將其對應(yīng)位置為1,未提供的密碼套件對應(yīng)位置為0。TLS可能提供的全部擴展選項共9種,將其設(shè)置為9維的0-1向量,向量化的方式與客戶端提供密碼套件的方法類似,基于已確認的成果可推導(dǎo)出相關(guān)結(jié)論遍歷客戶端實際選擇的每個TLS擴展項,將其對應(yīng)位置為1,未選擇的擴展項對應(yīng)位置為0。TLS支持版本、TLS通信版本、服務(wù)端選擇的密碼套件、公鑰長度四類信息各占一位,共189維(貝俊豪,蔣夢婷,2021)。(3)空間序列特征:數(shù)據(jù)包的長度序列。由于每一條雙向網(wǎng)絡(luò)流包含的數(shù)據(jù)包數(shù)目并不相同,而神經(jīng)網(wǎng)絡(luò)的輸入特征長度必須統(tǒng)一。為了使每個樣本的特征向量具有相同的維度,在統(tǒng)計數(shù)據(jù)包的長度序列時只截取前50個包的信息,不足50個包的置為0,空間序列特征共50維(高月明,鄭彤彤,2021)。本研究框架模型的一大特征是其靈活調(diào)整與擴展能力。鑒于不同研究背景和需求的多樣性,本文在設(shè)計模型時,盡力保持各組件的模塊化特性,從而可以根據(jù)實際情況靈活調(diào)整或替換特定部分,而不影響整體架構(gòu)的穩(wěn)定性和有效性。這種設(shè)計思路不僅提升了模型的實際應(yīng)用價值,還為后續(xù)研究者提供了一個開放平臺,激勵他們在現(xiàn)有基礎(chǔ)上進行二次開發(fā)或改進。(4)時間序列特征:數(shù)據(jù)包的到達時間間隔序列。為了統(tǒng)一特征向量長度,處理方式同上,時間序列特征共50維。圖3-3特征向量示意圖經(jīng)過上述方式處理后最終得到的雙向網(wǎng)絡(luò)流的特征向量共296維。

3.3通信行為圖的構(gòu)造計算機網(wǎng)絡(luò)通信的主要目的是讓不同的用戶或主機能夠有效地進行信息交流和溝通。網(wǎng)絡(luò)流量作為信息傳遞與交互的載體,這在一定程度上傳達蘊含著大量的網(wǎng)絡(luò)行為信息。在2.2.3小節(jié)中提到的基于流量特征的識別方法,往往只考慮每條流自身的特征,而忽略了主機之間的通信行為信息(趙宇航,劉振宇,2019)。越來越多的惡意軟件諸如木馬、廣告軟件、勒索軟件等,借助SSL/TLS加密協(xié)議,以C&C(Control&Command,控制與命令)的通信方式來對失陷主機進行控制,發(fā)起惡意攻擊。在實際的通信網(wǎng)絡(luò)中,通信設(shè)備不是獨立的,主機和主機之間存在聯(lián)系。例如在僵尸網(wǎng)絡(luò)中,若一臺計算機設(shè)備被僵尸程序感染,它也會影響到局域網(wǎng)內(nèi)部的其他設(shè)備。僵尸主機可以理解為是一組已被惡意軟件感染并可以被惡意攻擊者遠程操控的計算機設(shè)備。通常,一部被侵占的設(shè)備只是僵尸網(wǎng)絡(luò)里面眾多中的一個,它會被用來去運行一連串的或攻擊者遠端控制的惡意程序。僵尸主機可以隨時按照惡意攻擊者的控制與命令的指令去執(zhí)行非法或惡意任務(wù),這清楚體現(xiàn)了包括向其他主機發(fā)送垃圾郵件,竊取數(shù)據(jù),勒索軟件,欺詐性地點擊廣告或分布式拒絕服務(wù)攻擊等等(孫志恒,楊慧萍,2019)。當通信網(wǎng)絡(luò)中的一個通信節(jié)點頻繁產(chǎn)生惡意流量時,我們可以將其判定為惡意攻擊者的C&C服務(wù)器(commandandcontrolserver)(王浩宇,許雅婷,2017)。那么,該通信節(jié)點在后續(xù)過程中與其他節(jié)點通信時產(chǎn)生的網(wǎng)絡(luò)流量也極有可能為惡意流量,如圖3-4所示。因此,在此特定情境下事實昭然若揭我們認為主機之間的通信行為信息能夠?qū)阂饬髁康淖R別起到積極的作用。圖3-4節(jié)點之間的流量示意圖為了能夠更好地結(jié)構(gòu)化描述主機之間的通信行為信息,本文將主機和主機之間通信產(chǎn)生的網(wǎng)絡(luò)流量抽象為圖的形式,稱為通信行為圖。3.3.1通信行為圖的定義設(shè)通信行為圖為G,它由頂點集合V(G)與邊集合E(G)構(gòu)成。其表示方式如下:G=通信行為圖中的節(jié)點vi可以視為實際通信網(wǎng)絡(luò)中的一臺通信主機,可以由主機名或IP地址來唯一標識一個節(jié)點。在本文中,我們將IP地址作為節(jié)點的標識(陳靜怡,趙子麟,2017)V={這在一定程度上展現(xiàn)了節(jié)點vi與其他節(jié)點ve當兩個節(jié)點多次通信產(chǎn)生多條雙向網(wǎng)絡(luò)流,那么它們之間就會有多條邊。因此通信行為圖以多邊圖的形式存在(丁怡萱,陳澤宇,2017)。圖3-5通信行為圖示例由于通信行為圖的邊代表一條雙向流,我們可以通過預(yù)測邊的類別,來判斷該邊對應(yīng)的網(wǎng)絡(luò)流屬于惡意流量還是正常流量。引入通信行為圖G的描述之后,就把惡意加密流量的檢測任務(wù)抽象為了圖任務(wù)中的邊分類問題(陳詩琪,楊志豪,2022)。本文同樣基于已有的理論根基塑造了此次的框架模型,不管在信息流轉(zhuǎn)還是數(shù)據(jù)分析技巧方面,都展現(xiàn)出對前人科研成果的尊崇與延續(xù),并在此根基上展開了創(chuàng)新。最先,在信息流規(guī)劃板塊,本文吸納了經(jīng)典信息處理理論的精髓,確保信息從采集、傳輸?shù)椒治龅拿總€環(huán)節(jié)都能高效且無誤地開展。憑借對數(shù)據(jù)來源的嚴苛篩選和標準化處理流程,信息質(zhì)量得以有效確保,從而更能凸顯信息流的透明度與可追溯性。在圖任務(wù)領(lǐng)域內(nèi),樣本的特征信息往往存在于節(jié)點上,邊只反映節(jié)點的鄰接關(guān)系,而不具有特征。傳統(tǒng)的邊分類任務(wù)解決方案也是依據(jù)的兩個節(jié)點特征來對邊進行分類,無法利用邊自身的特征。另一方面,在多邊圖中,兩個相同節(jié)點間的不同邊在傳統(tǒng)的邊分類方法中無法區(qū)分。因此,我們不能將直接對通信行為圖用傳統(tǒng)方式進行邊分類。在下一節(jié),由此可以洞悉我們引入了線圖的概念來完成節(jié)點與邊的轉(zhuǎn)換,將圖任務(wù)中的邊分類問題轉(zhuǎn)換為點分類問題(呂天睿,于曉琦,2022)。3.3.1線圖的轉(zhuǎn)換在圖論中,圖G所對應(yīng)的線圖是一張能夠反映G中邊的鄰接性的圖,記作L(G),G稱為L(G)的原圖。線圖L(G)將原圖G中的每條邊分別抽象為一個頂點;如若原圖中兩條邊相鄰,那么就給線圖中對應(yīng)頂點之間連接一條邊。生成步驟如下:(1)線圖的一個頂點對應(yīng)原圖的一個邊;(2)線圖的頂點相鄰當且僅當它們在原圖中對應(yīng)的邊有公共的頂點。圖3-6線圖的生成過程引入線圖的概念后,我們可以生成通信行為圖G的線圖L(G),完成節(jié)點與邊的轉(zhuǎn)換,利用圖神經(jīng)網(wǎng)絡(luò)對線圖L(G)進行點分類,解決了對多邊圖進行邊分類存在的問題(王梓豪,劉雅琳,2023)。3.4基于圖注意力神經(jīng)網(wǎng)絡(luò)的惡意流量識別算法3.4.1圖注意力神經(jīng)網(wǎng)絡(luò)簡介圖注意力神經(jīng)網(wǎng)絡(luò)REF_Ref71641225\r\h[6](GraphAttentionNetworks,GAT)是一種基于圖結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)模型,它可以視為GCN網(wǎng)絡(luò)的一個變種。在2.3中我們曾介紹了基于頻譜計算的圖卷積神經(jīng)網(wǎng)絡(luò)GCN的原理。在這里我們先介紹兩個概念:直推式學(xué)習(xí)和歸納式學(xué)習(xí)。(1)直推式學(xué)習(xí)(TransductiveLeaning):TransductiveLeaning在訓(xùn)練過程中既需要訓(xùn)練樣本集,又需要用到測試樣本集。在模型測試中,只能預(yù)測在其訓(xùn)練過程中所用到的樣本。當有新樣本到來時,TransductiveLearning需要對模型重新進行訓(xùn)練(2)歸納式學(xué)習(xí)(InductiveLeaning):歸納是從特殊到一般的過程,歸納式學(xué)習(xí)致力于從訓(xùn)練集中學(xué)習(xí)到某類樣本之間的共性。因此,在訓(xùn)練過程中只用到訓(xùn)練集的數(shù)據(jù)(王梓煜,劉雅君,2023)。只要樣本特征屬于同樣的特征空間,即可進行預(yù)測。即使有新樣本,InductiveLeaning也不需要重新訓(xùn)練模型。具體到圖任務(wù)而言,InductiveLeaning在訓(xùn)練階段可以只在子圖(subgraph)上進行,基于以上討論測試階段能夠?qū)ξ粗墓?jié)點(unseennode)進行預(yù)測;而TransductiveLearning在訓(xùn)練時需要獲得圖的完整信息。因此,傳統(tǒng)的GCN網(wǎng)絡(luò)無法完成InductiveLeaning任務(wù)。除此之外,在聚合鄰居節(jié)點信息時,GCN分配給不同鄰居的權(quán)重完全相同,處理有向圖存在瓶頸。圖注意力網(wǎng)絡(luò)在圖卷積的基礎(chǔ)上借鑒了循環(huán)神經(jīng)網(wǎng)絡(luò)中的注意力機制,用于計算節(jié)點鄰域的權(quán)重。它與傳統(tǒng)的圖卷積網(wǎng)絡(luò)最大的不同是,在聚合鄰居節(jié)點的特征信息時引入了的注意機制,在這個條件下可以為鄰居節(jié)點中較為重要的節(jié)點分配更大的權(quán)重。GAT網(wǎng)絡(luò)相較于傳統(tǒng)的GCN網(wǎng)絡(luò)有以下優(yōu)點:(1)訓(xùn)練時無需或得圖的完整結(jié)構(gòu)信息,只需知道每個節(jié)點的鄰居節(jié)點。(2)計算速度快,可以在不同的節(jié)點上并行計算(3)既可以用于直推式學(xué)習(xí),又可以用于歸納式學(xué)習(xí),能夠?qū)ξ粗膱D結(jié)構(gòu)進行預(yù)測(王梓豪,劉雅婷,2023)。在現(xiàn)實場景中,我們捕獲網(wǎng)絡(luò)流量時,不可能獲得全局的通信行為信息,通常只對一部分流量進行采樣。因此,GAT網(wǎng)絡(luò)更加適用于對惡意加密流量進行檢測。3.4.2圖注意力神經(jīng)網(wǎng)絡(luò)的計算流程基于這一前提條件圖注意力網(wǎng)絡(luò)的輸入數(shù)據(jù)為圖結(jié)構(gòu)的特征矩陣?∈Rn×m,鄰接矩陣?={A其中n表示圖中節(jié)點的數(shù)目,m表示每個節(jié)點的特征向量長度。設(shè)圖注意力網(wǎng)絡(luò)的權(quán)重矩陣為W。GAT在聚合鄰居節(jié)點信息時,需要對每個節(jié)點施加不同的權(quán)重。GAT網(wǎng)絡(luò)引入了注意力機制,經(jīng)過一個注意力函數(shù)(attentionfunction)來計算出節(jié)點i與節(jié)點j之間的權(quán)重系數(shù)eijeij在傳統(tǒng)的注意力機制中,函數(shù)的實現(xiàn)方式有很多種,通常是計算特征向量之間的相似度或相關(guān)性。在本文中,把特征向量之間的相似度作為注意力的評判依據(jù)的意義不大。因此,透過此見本質(zhì)我們將兩個特征向量進行拼接,經(jīng)過一個單層的前向神經(jīng)網(wǎng)絡(luò)來實現(xiàn)注意力函數(shù)(王梓和,劉雅琪,2023)。在數(shù)據(jù)研磨階段,本文祭出多樣化的統(tǒng)計技法來校驗數(shù)據(jù)的有用性,并甄別出潛在的離譜數(shù)值。經(jīng)由對數(shù)據(jù)分布特性的深度解讀,本文能夠精準去除那些明顯跨越正常范圍的數(shù)據(jù)點,同時保留下具備典型性的樣本信息。此外,本文還運用敏感性分析,來評判各類參數(shù)變遷對探究收尾的沖擊力度,確保最終判定的堅牢性與普適意義。該單層網(wǎng)絡(luò)的權(quán)重矩陣表示為a∈RLeakyRelue||代表拼接操作,·T在實際應(yīng)用注意力機制時,本文采用maskedattention的方式,即只計算節(jié)點與其一階鄰居節(jié)點之間的注意力系數(shù),不關(guān)注非鄰居節(jié)點。為了能夠更好的分配權(quán)重,計算出所有鄰居節(jié)點的權(quán)重系數(shù)后,我們采用softmax函數(shù)對原始的權(quán)重系數(shù)進行歸一化處理(王梓豪,劉雅君,2023)。αNiα得到最終的注意力權(quán)重系數(shù)矩陣后,將其和對應(yīng)節(jié)點相乘求和,經(jīng)過一個激活函數(shù)σ就可以得到節(jié)點i聚合其鄰居節(jié)點信息新的表示,這里我們選擇softmax作為激活函數(shù)(陳志豪,李婉瑩,2022)。這點透露出重要信息計算公式如下:?圖3-7注意力權(quán)重系數(shù)的計算過程為了使注意力機制的學(xué)習(xí)過程更加穩(wěn)定,提高模型的擬合能力,GAT引入了多頭的注意力機制,基于已確認的成果可推導(dǎo)出相關(guān)結(jié)論學(xué)習(xí)到節(jié)點向量在不同表示空間中的特征。多頭注意力機制同時使用多個神經(jīng)網(wǎng)絡(luò)的權(quán)重矩陣Wk,分別計算出不同的聚合結(jié)構(gòu)。最終將K個計算結(jié)果合并(陸文昊,陳婉君,2021)。?圖3-8多頭注意力機制示意圖利用GAT網(wǎng)絡(luò)得到節(jié)點聚合其鄰居節(jié)點特征的最終表示后,在GAT網(wǎng)絡(luò)后添加一個線性層和softmax層就能實現(xiàn)對節(jié)點的分類。圖3-9分類層示意圖3.5基于圖注意力網(wǎng)絡(luò)的惡意流量識別算法流程描述步驟1:原始流量切分和過濾:按照雙向網(wǎng)絡(luò)流的粒度對原始流量進行切分,過濾掉負載為空以及沒有進行加密的流量。步驟2:特征向量化:分別提取雙向網(wǎng)絡(luò)流的元數(shù)據(jù)特征、TLS相關(guān)特征、空間序列特征、時間序列特征,生成長度為296的特征向量,作為神經(jīng)網(wǎng)絡(luò)的特征矩陣輸入。步驟3:依據(jù)流量之間的通信行為信息構(gòu)造通信行為圖,并生成通信行為圖的線圖,將線圖的鄰接矩陣作為神經(jīng)網(wǎng)絡(luò)的鄰接矩陣輸入?;谇懊骐A段性研究的復(fù)盤,對下文有著一定的啟發(fā),先看研究方法,能發(fā)現(xiàn)諸多可優(yōu)化改進之處。之前的研究階段,積累了寶貴的經(jīng)驗教訓(xùn),有效方法與需調(diào)整摒棄的手段清晰可見。比如數(shù)據(jù)收集,可更重視樣本多樣性和代表性,確保樣本準確反映目標群體特征。此外,不同研究問題,靈活運用多數(shù)據(jù)收集技術(shù),能提高數(shù)據(jù)全面性和可靠性。步驟4:模型訓(xùn)練:將樣本的特征矩陣和鄰接矩陣作為GAT網(wǎng)絡(luò)的輸入,通過GAT分類模型,對樣本進行預(yù)測,判斷其是否屬于惡意加密流量。3.6實驗結(jié)果及分析3.6.1實驗環(huán)境本文的實驗運行在Ubuntu系統(tǒng)上,CPU為IntelXeonE5-2678v3(48)@3.300GHz,使用NVIDIARTXTITAN24GX2顯卡加速。基于Python3.6.9環(huán)境,使用深度學(xué)習(xí)框架Pytorch1.7.0完成基于GAT的惡意流量檢測模型的構(gòu)建以及訓(xùn)練(程文昊,梁婉君,2021)。模型參數(shù)值設(shè)置如表3-2所示,這在一定程度上傳達訓(xùn)練過程中采用早停機制動態(tài)地控制訓(xùn)練次數(shù)。表3-2GAT模型參數(shù)值設(shè)置參數(shù)名稱參數(shù)值隱層維度8多頭注意力層8學(xué)習(xí)率0.005隨機斷開率實驗數(shù)據(jù)集本次實驗的數(shù)據(jù)集來自CTU-13數(shù)據(jù)集的惡意TLS流量和CICIDS2017中的正常TLS流量(李志遠,張慧文,2022)。這清楚體現(xiàn)了在實際的網(wǎng)絡(luò)環(huán)境中,正常流量的占比很大,惡意流量通常只占據(jù)一小部分。為了更好地模擬真實場景,本次實驗中對CTU-13數(shù)據(jù)集與CICIDS2017數(shù)據(jù)集進行了隨機采樣,將正常流量與惡意流量的比例設(shè)置為9:1,共采樣了1萬條TLS加密流量。為了驗證算法的有效性,我們按照6:4的比例把采樣后最終生成的數(shù)據(jù)集隨機劃分為訓(xùn)練樣本集和測試樣本集。3.6.2評價指標實驗中將惡意流量視為正樣本,正常流量視為負樣本。實驗的評價指標基于混淆矩陣生成?;煜仃嚾绫?-3所示,用于描述加密惡意流量檢測算法中實際類別和預(yù)測類別之間的相互關(guān)系(李明輝,張慧敏,2022)。表3-3混淆矩陣真實類型預(yù)測結(jié)果正樣本(惡意流量)負樣本(正常流量)正樣本(惡意流量)TPFN負樣本(正常流量)FPTN在此特定情境下事實昭然若揭其中,TP(TruePositive,真正例)表示GAT分類模型將惡意流量正確預(yù)測為惡意流量的樣本數(shù);TN(TrueNegative,真負例)表示分類模型將正常流量正確預(yù)測為正常流量的樣本數(shù);FP(FalsePositive,假正例)表示分類模型將正常流量預(yù)測為惡意流量的樣本個數(shù);GN(FalseNegative,假負例)表示分類模型將惡意流量錯誤預(yù)測為正常流量的樣本個數(shù)。實驗結(jié)果用到的評價指標包括準確率(ACC)、召回率(Recall)、精確度(Precision)、F1分數(shù),計算公式如下(李婷妍,周思涵,2019):ACC=Recall=Precision=F1=準確率能夠反映檢測算法在數(shù)據(jù)集整體上的表現(xiàn)效果。召回率和精確度分別體現(xiàn)了檢測算法在惡意流量類別和正常流量類別上的檢測效果。這在一定程度上展現(xiàn)了一般情況下召回率和精確度之間存在博弈,即召回率高,精確度就低;反之精確度高,召回率就低。于是在這里我們還引入了引入F1分數(shù)(F1-score)指標,綜合考慮召回率和精確度的精確性評價指標。在F1分數(shù)指標中,精確率和召回率的權(quán)重相等,重要程度相同。F1分數(shù)值越高,檢測算法的分類性能越好。3.6.3實驗結(jié)果為了判斷基于GAT的惡意加密流量識別算法與傳統(tǒng)的基于特征的惡意流量識別方案的檢測效果優(yōu)劣,本文與常見的機器學(xué)習(xí)、深度學(xué)習(xí)分類模型進行了比較。支持向量機模型的訓(xùn)練結(jié)果如表3-3示,多層感知機模型的訓(xùn)練結(jié)果如表3-4示,卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練結(jié)果如表3-6示,GAT模型的訓(xùn)練結(jié)果如表3-7示。表3-4支持向量機SVM的實驗結(jié)果AccuracyPrecisionRecallF1_score訓(xùn)練集0.99720.99080.97930.9895測試集0.85001.00000.00150.00315表3-5多層感知機MLP的實驗結(jié)果AccuracyPrecisionRecallF1_score訓(xùn)練集0.93090.92530.67330.7794測試集0.92320.89730.67530.7706表3-6卷積神經(jīng)網(wǎng)絡(luò)CNN的實驗結(jié)果AccuracyPrecisionRecallF1_score訓(xùn)練集0.93360.76060.76060.7606測試集0.91780.92210.46760.6205表3-7圖注意力網(wǎng)絡(luò)GAT的實驗結(jié)果AccuracyPrecisionRecallF1_score訓(xùn)練集0.99600.99730.96610.9814測試集0.98300.99030.92130.9148圖3-6GAT模型訓(xùn)練過程中的loss變化圖3-6反映了GAT模型在訓(xùn)練過程中的損失loss與訓(xùn)練迭代次數(shù)Epoch的關(guān)系。從圖3-6的變化趨勢可以看出,隨著訓(xùn)練迭代次數(shù)的增加,模型的損失逐漸下降,并在第100個epoch時基本趨于收斂。表3-7的結(jié)果顯示GAT模型在訓(xùn)練集上的準確率最終達到了99.60%,測試集上的準確率達到了99.10%,因此GAT模型能夠準確地識別出網(wǎng)絡(luò)流量中的惡意加密流量。圖3-8各模型的測試集評價指標對比圖3-8反映了各模型在的測試集上的表現(xiàn)效果。幾種模型的準確率指標達到了90%以上,其中本文提出的基于GAT的惡意流量檢測算法的表現(xiàn)最佳,MLP模型的準確率為93.09%,CNN模型為93.36%,SVM模型表現(xiàn)效果最差,為85.00%。由于數(shù)據(jù)集存在不平衡問題,除了準確率指標外,還應(yīng)重點關(guān)注精確度、召回率和F1分數(shù)指標(駱明哲,汪嘉誠,2021)。SVM模型雖然在訓(xùn)練集上表現(xiàn)效果很好,但在測試集上的召回率非常低,將多數(shù)的正樣本被錯誤地預(yù)測為負樣本,泛化能力弱,在測試集上幾乎無法準確區(qū)分出惡意流量。MLP模型與CNN模型的惡意流量檢測算法的準確率指標上僅比GAT模型低了幾個百分點,由此可以洞悉但是這兩種模型召回率比GAT檢測模型低了幾十個百分點,同樣存在將大量正樣本錯誤判斷為負樣本的問題,可見它們同樣無法很好地解決數(shù)據(jù)不平衡問題。本文提出的基于GAT的惡意加密流量檢測算法,在訓(xùn)練集和測試集上的各個評價指標表現(xiàn)都非常好,泛化能力高,能夠準確地預(yù)測出加密流量是否為惡意的流量。于數(shù)據(jù)分析方法的抉擇上,本文既采用了傳統(tǒng)的統(tǒng)計分析途徑,諸如描述性統(tǒng)計、回歸分析等,還引入了近年來快速發(fā)展的數(shù)據(jù)挖掘技術(shù)和算法。例如,通過運用聚類分析來發(fā)掘數(shù)據(jù)中的潛在模式,或者借助決策樹算法來預(yù)測未來趨勢。這些先進手段為深入剖析復(fù)雜現(xiàn)象提供了強大助力,并有助于揭示海量數(shù)據(jù)背后隱藏的深層次關(guān)系。此外,本文還特別重視混合方法的應(yīng)用,即將定量研究與定性研究相融合,以獲取更全面的研究視角。實驗結(jié)果表明,將網(wǎng)絡(luò)主機之間的通信行為轉(zhuǎn)換為通信行為圖的形式后使用GAT網(wǎng)絡(luò)對惡意加密流量進行檢測,效果明顯優(yōu)于傳統(tǒng)的惡意流量識別模型。致謝第四章基于B/S架構(gòu)的惡意加密流量檢測系統(tǒng)的設(shè)計與實現(xiàn)第四章基于B/S架構(gòu)的惡意加密流量檢測系統(tǒng)的設(shè)計與實現(xiàn)4.1惡意加密流量檢測系統(tǒng)的基本架構(gòu)和設(shè)計4.1.1B/S系統(tǒng)簡介B/S架構(gòu)的全稱為Browser/Server,即瀏覽器/服務(wù)器結(jié)構(gòu),是目前應(yīng)用系統(tǒng)的主要發(fā)展趨勢。Browser指的是Web瀏覽器。在這種結(jié)構(gòu)下,用戶無需安裝應(yīng)用,通過Web瀏覽器來進入工作界面,基于以上討論少部分事務(wù)邏輯在前端(Browser)實現(xiàn),主要事務(wù)邏輯在服務(wù)器端(Server)實現(xiàn)(程俊熙,鄒嘉豪,2021)。BS系統(tǒng)的主要優(yōu)勢在于分布性強,只要有網(wǎng)絡(luò)和瀏覽器即可隨時隨地進行查詢、瀏覽等業(yè)務(wù)處理;業(yè)務(wù)的擴展與維護方便、開發(fā)簡單且共享性強;總降低了用戶的總體成本。B/S系統(tǒng)的基本架構(gòu)如圖4-1所示。與傳統(tǒng)的C/S系統(tǒng)的兩層架構(gòu)有所不同,B/S系統(tǒng)架構(gòu)有三層,分別為:(1)表現(xiàn)層:主要完成用戶和后臺的交互及最終查詢結(jié)果的輸出功能。(2)邏輯層:主要是利用服務(wù)器完成客戶端的應(yīng)用邏輯功能。(3)數(shù)據(jù)層:主要是接受客戶端請求后獨立進行各種運算。圖4-1B/S系統(tǒng)架構(gòu)示意圖4.1.2B/S系統(tǒng)的工作流程在B/S系統(tǒng)中,一次請求的工作流程描述如下:1.客戶端發(fā)送請求:用戶在客戶端的瀏覽器頁面提交操作,向服務(wù)器發(fā)送HTTP請求,等待服務(wù)器響應(yīng);2.服務(wù)器端處理請求:服務(wù)器端接收并處理請求,服務(wù)器中的應(yīng)用層部分調(diào)用業(yè)務(wù)邏輯,調(diào)用業(yè)務(wù)邏輯上的方法;3.服務(wù)器端發(fā)送響應(yīng):服務(wù)器端把用戶請求的數(shù)據(jù)返回給瀏覽器。4.瀏覽器將模版和數(shù)據(jù)渲染成最終的HTML,呈現(xiàn)用戶界面。4.1.2B/S系統(tǒng)的功能需求分析用戶在系統(tǒng)中進行一次對惡意加密流量的檢測需要的流程如圖4-2所示,共經(jīng)過以下五個階段:圖4-2惡意加密流量檢測系統(tǒng)的主要工作流程階段1(用戶登入):進入系統(tǒng)時,用戶首先需要輸入自身的賬戶和密碼,提交給后臺進行身份的認證;若用戶首次使用,則需要先進行注冊。階段2(提交文件):用戶選擇PCAP格式的網(wǎng)絡(luò)流量文件進行上傳,提交給后臺。服務(wù)端接收到請求后,將接收到的PCAP文件保存至服務(wù)器。階段3(數(shù)據(jù)預(yù)處理):數(shù)據(jù)預(yù)處理的核心工作是解析原始的網(wǎng)絡(luò)流量,將其按照雙向網(wǎng)絡(luò)流的粒度進行切分(靳志遠,何靜怡,2024)。此外,在這個條件下還需要對切分后的雙向網(wǎng)絡(luò)流進行過濾,去除數(shù)據(jù)包數(shù)目為0的雙向網(wǎng)絡(luò)流以及沒有進行加密的網(wǎng)絡(luò)流。接下來按照3.2小節(jié)的方式對雙向網(wǎng)絡(luò)進行特征向量化,并生成通信行為圖及轉(zhuǎn)化后的線圖;為GAT模型提供輸入數(shù)據(jù)。階段4(GAT模型預(yù)測):此階段將使用提前訓(xùn)練好的的GAT預(yù)測模型,將用戶提交的網(wǎng)絡(luò)流量生成的特征矩陣和鄰接矩陣作為GAT網(wǎng)絡(luò)的輸入,對每一個樣本進行結(jié)果預(yù)測,判斷其是否屬于惡意的加密流量。預(yù)測結(jié)果即為加密網(wǎng)絡(luò)流量的分類標簽。基于這一前提條件使用數(shù)據(jù)預(yù)處理階段生成的流量特征向量數(shù)據(jù)用于分類器模型訓(xùn)練,階段5(預(yù)測結(jié)果返回):使用GAT得到預(yù)測結(jié)果后,服務(wù)端將預(yù)測結(jié)果返回給客戶端,瀏覽器將對預(yù)測結(jié)果進行展示。明確了上述工作流程后,惡意加密流量檢測系統(tǒng)需要實現(xiàn)的功能包括以下四類功能:1.用戶的注冊與登錄;2.PCAP格式的網(wǎng)絡(luò)流量文件的上傳;3.對原始流量進行數(shù)據(jù)預(yù)處理4.調(diào)用訓(xùn)練好的GAT模型,對加密流量進行檢測;5.返回檢測結(jié)果并進行展示。4.2惡意加密流量檢測系統(tǒng)的實現(xiàn):在實際開發(fā)過程中,我們采用前后端分離的應(yīng)用模式,后端僅返回前端所需的數(shù)據(jù),不再渲染HTML頁面。選擇Vue框架搭建前端頁面,基于python的Flask框架搭建后臺系統(tǒng)。Flask框架是一個基于Python開發(fā)的、依賴WSGI服務(wù)的一個微型框架,WSGI服務(wù)接收HTTP請求并對請求進行預(yù)處理,然后觸發(fā)Flask框架,透過此見本質(zhì)開發(fā)人員基于Flask框架提供的功能對請求進行相應(yīng)的處理,并返回給用戶。Vue.js是一款流行的JavaScript前端框架,是一套構(gòu)建用戶界面的漸進式框架。Vue.js框架的主要特點是可以進行組件化開發(fā),能夠大大減少代碼的編寫量,減輕開發(fā)負擔。為了能夠更加方便地管理和讀取數(shù)據(jù),前端與后端通信時以Json格式進行數(shù)據(jù)交換。4.3系統(tǒng)效果展示: 4.3.1登錄-注冊界面圖4-3登錄-注冊界面首次登入系統(tǒng)時,用戶首先需要進行注冊,注冊成功后返回登錄界面,輸入注冊時使用的賬號和密碼即可成功進入系統(tǒng)。4.3.2上傳-檢測界面圖4-4文件上傳界面用戶選擇PCAP文件進行上傳,提交后文件將被被保存到服務(wù)端。服務(wù)端將對PCAP包中的原始流量進行預(yù)處理,并調(diào)用提前訓(xùn)練好的GAT分類模型,檢測其中是否存在潛在的惡意的加密流量,生成檢測結(jié)果(李明軒,楊柳青,2019)。4.3.3檢測結(jié)果展示圖4-5潛在惡意流量列表界面展示 服務(wù)端對網(wǎng)絡(luò)流量檢測完畢后,將檢測結(jié)果進行統(tǒng)計,返回被識別為惡意加密流量的列表。4.3.4惡意流量詳情展示圖4-6潛在惡意流量的詳情展示用戶點擊查看詳情選項,這點透露出重要信息即可查看檢測出的每條潛在惡意流量的詳情信息。惡意流量的基本信息包括源IP地址、目的IP地址、源端口、目的端口、上行包數(shù)、下行包數(shù)、上行字節(jié)數(shù)、下行字節(jié)數(shù)、持續(xù)時間;TLS握手相關(guān)信息包括客戶端支持的TLS版本、服務(wù)端使用的TLS版本、客戶端提供的密碼套件數(shù)量、最終選擇的密碼套件、TLS擴展數(shù)量及公鑰長度。4.4本章小結(jié)本章主要介紹了基于B/S架構(gòu)的惡意加密流量檢測系統(tǒng)的設(shè)計與實現(xiàn)。首先對B/S系統(tǒng)進行簡單的描述,介紹了其主要特點和優(yōu)勢,并對B/S系統(tǒng)的層次結(jié)構(gòu)進行了描述。隨后,我們介紹了惡意加密流量檢測系統(tǒng)的主要工作流程,進行了功能分析,使用Flask后臺框架和Vue前端框架對系統(tǒng)進行具體的實現(xiàn),在本章的最后,對惡意加密流量檢測系統(tǒng)的最終效果進行了展示。第五章全文總結(jié)與展望第五章全文總結(jié)與展望5.1全文總結(jié)本文針對加密流量提出了一種基于GAT的在加密場景下檢測惡意網(wǎng)絡(luò)流量的方法。該方法將原始流量劃分為雙向網(wǎng)絡(luò)流的形式,并根據(jù)主機之間的通信行為,構(gòu)造了通信行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論