楊 剛,姜 舟,張嬌婷,汪俊永,王 強,張 研
(1.三六零數(shù)字安全科技集團有限公司,北京 100020;2.中國科學(xué)院信息工程研究所,北京 100093;3.中國科學(xué)院大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,北京 100049)
隨著信息安全和個人隱私保護越來越受到人們的關(guān)注,在網(wǎng)絡(luò)服務(wù)中,保護網(wǎng)絡(luò)用戶的隱私成為研究人員關(guān)注的重點。因此業(yè)界設(shè)計了許多匿名通信技術(shù)。TOR網(wǎng)絡(luò)是目前最廣泛使用的匿名網(wǎng)絡(luò)之一,其主要功能在于保護用戶的網(wǎng)絡(luò)隱私并增強互聯(lián)網(wǎng)訪問安全性。
TOR的電路由三個中繼服務(wù)器組成,分別是入口中繼服務(wù)器用于客戶端通信,轉(zhuǎn)發(fā)中繼服務(wù)器用于加密與轉(zhuǎn)發(fā),出口中繼服務(wù)器用于與目的地通信。同時TOR采用標(biāo)簽交換設(shè)計,允許在同一個TOR路由器上復(fù)用多個電路,以確保每個電路都能獲得合理的帶寬分配。然而,在TOR上應(yīng)用程序流量的分布在所有電路上是不均勻的,為此Tang等人[1]提出了一種電路調(diào)度優(yōu)先級方案,使交互電路在批量傳輸電路之前進行優(yōu)化。
隨著TOR網(wǎng)絡(luò)的迭代,其產(chǎn)生的流量的隱匿性變得更強,TOR流量變化更大,其中2021年發(fā)布的v3版本中,TOR流量變化更加顯著,導(dǎo)致以往TOR的流量識別方法逐漸失效。
本文針對TOR檢測方法失效的問題,自動化提取多版本TOR網(wǎng)絡(luò)流量數(shù)據(jù),對TOR行為及OBFS4混淆協(xié)議特點進行研究,提取了TOR行為的關(guān)鍵特征,并將其與OBFS4協(xié)議特性相結(jié)合,顯著提升了對混淆協(xié)議下TOR流量的檢測能力。最后通過大量實驗驗證了本文所提方法的有效性和實用性。
本文主要貢獻如下:
(1)通過對OBFS4混淆協(xié)議進行分析,挖掘協(xié)議在握手等階段的協(xié)議特點,與流量行為特征相結(jié)合共同作為特征向量,增強模型對TOR流量的檢測能力。
(2)以業(yè)界通用流量行為特征為基礎(chǔ),結(jié)合TOR流量行為分析結(jié)果,采用隨機森林和shap[2]工具特征選擇的方法篩選關(guān)鍵行為特征,提高模型計算效率。
(3)通過模擬真實用戶的行為,構(gòu)建了包含復(fù)雜業(yè)務(wù)場景的TOR數(shù)據(jù)集。通過融合協(xié)議特征以及行為特征,提高了模型對TOR流量檢出的準(zhǔn)確率,而且驗證了對TOR多個歷史版本的流量具有很好的檢測效果,證明了本文方法在TOR流量檢測任務(wù)中具有普適性。
目前TOR流量識別工作主要分為兩種,一種是TLS模式的TOR流量研究,另一種是混淆協(xié)議下的TOR研究。
早期研究集中于TOR的TLS模式研究,并取得了一定的進展,He等人[3]提出了一種基于HMM的方法,該方法從流中提取突發(fā)流量和方向,并利用HMM構(gòu)建不同應(yīng)用類型模型,最終達到了92%的檢測準(zhǔn)確率。Lashkari等人[4]提出了ISCXTOR2016數(shù)據(jù)集,并從數(shù)據(jù)集中提取了23個基于時間的特征。采用Cfs-SubsetEval + BestFirst (SE+BF)和Infogain+Ranker (IG+RK)組合算法將特征數(shù)從23個減少到5個。這些特征輸入到不同的機器學(xué)習(xí)算法(ZeroR,C4.5和KNN),結(jié)果表明C4.5是最佳的分類器。Rao等人[5]提出了一種引力聚類算法(Gravity Clustering Algorithm,GCA),用于高精度地識別TOR數(shù)據(jù)包,該研究數(shù)據(jù)集來自數(shù)據(jù)平臺[6],模型引入數(shù)據(jù)包長度分布特征。結(jié)果表明GCA在數(shù)據(jù)集上的準(zhǔn)確率為80%。Liu等人[7]使用間歇流量模式(Intermittent Traffic Pattern,ITP)檢測加密網(wǎng)絡(luò)流量中的視頻流量相關(guān)特征,這項工作使用ITP和KNN區(qū)分視頻和非視頻流量。Abe等人[8]首次嘗試將深度學(xué)習(xí)算法用于指紋攻擊,提出一種使用堆疊去噪自編碼器(SDAE)發(fā)起指紋攻擊的方法,最后得到結(jié)果的準(zhǔn)確率為88%。Wang等人[9]提出目前網(wǎng)站指紋攻擊的局限性,并運用數(shù)據(jù)集更新、網(wǎng)頁分割、去噪聲等方法增加指紋攻擊的實用性。馬陳城等人[10]提出將爆發(fā)流量特征作為指紋攻擊特征,該方法在模型分類測試中展現(xiàn)了高達98%的準(zhǔn)確率。張道維等人[11]提出將匿名通信數(shù)據(jù)映射成RGB圖像,使用殘差神經(jīng)網(wǎng)絡(luò)構(gòu)造分類模型,最后模型準(zhǔn)確率達到97.2%。蔡滿春等人[12]利用序列到序列模型生成流特征,采用自適應(yīng)隨機森林算法作為分類器,模型識別率達98%。Attarian等人[13]提出了自適應(yīng)在線指紋識別流處理方法實現(xiàn)網(wǎng)站的動態(tài)識別。Elike等人[14]針對UNB-CIC數(shù)據(jù)集分別使用了SVM和DNN神經(jīng)網(wǎng)絡(luò)兩種算法進行檢測,通過比較,在檢測非TOR流量的任務(wù)中,神經(jīng)網(wǎng)絡(luò)對TOR流量檢測效果優(yōu)于SVM。Johnson[15]、Lin[16]和Finamore[17]在ISCXTOR2016數(shù)據(jù)集上,優(yōu)化了編碼器段的性能,并比較了傳統(tǒng)機器學(xué)習(xí)算法和深度學(xué)習(xí)的檢測結(jié)果,最后得出隨機森林和決策樹的方法,要優(yōu)于其他深度學(xué)習(xí)和機器學(xué)習(xí)模型。綜上,TOR的TLS模式的流量研究已經(jīng)相對成熟,并且達到了相對較高的準(zhǔn)確率,但這些方法針對混淆協(xié)議模式下的TOR流量效果不佳。
近期的研究則集中于混淆協(xié)議下TOR流量的研究,何永忠等人[18]提出一種基于云流量混淆的TOR匿名通信識別方法,檢測TOR的meek混淆協(xié)議產(chǎn)生的流量,采用SVM算法實現(xiàn)云流量混淆TOR流量識別。但是基于meek混淆協(xié)議的TOR流量穩(wěn)定性較差,已逐漸被棄用。Jia等人[19]提出了一種改進的決策樹算法TOR-idt,將TOR分層分類并在混合流量中識別出TOR流量。Rimmer等人[20]收集了包含300萬條流量的數(shù)據(jù)集,并使用CNN、SDAE、LSTM對數(shù)據(jù)集分類,實驗的準(zhǔn)確率為96%。Zhang等人[21]提出了時空特征對網(wǎng)絡(luò)流量分類,通過改進預(yù)處理的方法在CNN和LSTM模型中得到更好的實驗結(jié)果。Li等人[22]提出AttCorr深度學(xué)習(xí)模型,將原始流量特征作為輸入使用多頭注意力機制捕獲特征中涉及的流信息和TOR中噪聲的復(fù)雜性質(zhì)。席榮康等人[23]提出了一個基于自注意力機制的TOR檢測模型SA-HST,聯(lián)合了CNN和LSTM作為時空特征的提取模型,結(jié)果表明TOR的識別準(zhǔn)確率達到96%以上。使用時空特征的方式雖然有較高的準(zhǔn)確率,但是泛化性較差,針對早期的TOR流量,不能完成準(zhǔn)確的識別。并且隨著TOR項目的迭代發(fā)展,混淆協(xié)議也不斷變化,使得以往的模型準(zhǔn)確率不高。由于混淆協(xié)議插件隨著TOR網(wǎng)絡(luò)的發(fā)展不斷變化,有些已被淘汰,而有些則尚未完全成熟。其中,OBFS系列已經(jīng)發(fā)展到第四代,即OBFS4。He等人[24]針對OBFS4協(xié)議的流量設(shè)計了基于兩級濾波的流量檢測方案,刪選掉干擾流后根據(jù)時序特征進行模型檢測。但沒有針對混淆協(xié)議的特點做有效識別。而Liang等人[25]關(guān)注OBFS4混淆協(xié)議特點,提出Weighted SVM模型,并利用動態(tài)特征作為模型輸入進行檢測,在OBFS4混淆協(xié)議下的TOR流量檢測任務(wù)中達到準(zhǔn)確率94.34%。但其協(xié)議特點仍不夠充分,并且沒有關(guān)注到TOR流量的行為特征。
本文通過分析提取流量行為特征,保留流量關(guān)鍵行為特征,并深入分析OBFS4混淆協(xié)議的特點,在行為特征基礎(chǔ)上融合混淆協(xié)議特征,從而增加模型對TOR的識別能力。
TOR自提出以來,版本經(jīng)過多次變化,在2021年3月發(fā)布的TOR瀏覽器版本中,主要采用OBFS4協(xié)議來實現(xiàn)加密和匿名化。因此,在TOR流量檢測任務(wù)中,增加OBFS4協(xié)議特征是非常重要的。
TOR主要支持TCP協(xié)議流量,且每條TOR通信均需經(jīng)歷TCP握手過程。本文深入分析發(fā)現(xiàn),OBFS4 在TOR數(shù)據(jù)包的結(jié)構(gòu)和內(nèi)容上引入混淆,顯著提升了流量對檢測機制的抗性。具體來說,OBFS4協(xié)議改進橢圓曲線加密算法,對數(shù)據(jù)包全部內(nèi)容進行加密,并采用隨機填充的方式,使數(shù)據(jù)包長度不再有規(guī)律,能夠抵抗大部分以數(shù)據(jù)包長度作為動態(tài)特征的檢測模型。
TOR流量在TCP握手之后會馬上進行OBFS4握手,OBFS4的握手過程如圖1所示。
圖1 OBFS4握手過程
本研究集中分析了TOR流量中的前2 000個數(shù)據(jù)包。研究首先排除了那些載荷為空的數(shù)據(jù)包,其次通過深入分析發(fā)現(xiàn),OBFS4的握手過程實際上始于TCP握手階段的結(jié)束,此時客戶端向服務(wù)端發(fā)起請求?;谶@些觀察,本文在判斷過程中考慮了諸如傳輸方向和PSH字段等因素。研究將OBFS4的握手過程劃分為三個階段進行詳細討論:
第一階段:客戶端向服務(wù)端發(fā)送請求,在流量傳輸方向變換之前,如果客戶端發(fā)送的最后一個包含有psh字符字段,標(biāo)志第一階段結(jié)束。
第二階段:服務(wù)端向客戶端進行回應(yīng),傳輸方向由服務(wù)端變?yōu)榭蛻舳朔较?,在流量傳輸方向變換之前并且最后一個包含有psh字符字段,標(biāo)志握手第二階段結(jié)束。
第三階段:客戶端向服務(wù)端發(fā)起通信,方向為客戶端到服務(wù)端方向,如果客戶端發(fā)送的最后一個包含有psh字符字段,標(biāo)志第三階段結(jié)束。
本文針對OBFS4握手的第一階段和第二階段同方向的流進行分析,發(fā)現(xiàn)TOR流在OBFS4握手的第一階段的首包為滿包;雖然OBFS4協(xié)議能夠?qū)⑤d荷進行隨機填充,但是隨機填充的載荷大小有極值;每次方向發(fā)生改變的最后一個包含有psh字符字段。綜上,本文通過對OBFS4混淆協(xié)議分析,根據(jù)協(xié)議特點提取協(xié)議特征。
在以往研究工作中,大多數(shù)研究人員都是基于ISCXTOR2016數(shù)據(jù)集[4],通過CICflowmeter工具提取的83維特征作為輸入特征[4,8,13,19],并根據(jù)特征訓(xùn)練流量識別模型。然而,這種方法存在兩個主要問題:一是特征維度過多,并且其中有很多特征是無效特征,使得模型訓(xùn)練效率很低;另一個是,TOR網(wǎng)絡(luò)為保障其正常運行而引入了混淆機制,當(dāng)前TOR流量,主要由于外層嵌套了OBFS4混淆協(xié)議,與過去的流量特征顯著不同,使得舊有的基于特征訓(xùn)練的模型難以準(zhǔn)確識別現(xiàn)有TOR流量。鑒于此,本文提出了一種計算TOR特征重要性的方法,有效提取關(guān)鍵行為特征,并選取了top-42特征作為模型的輸入,同時融合了OBFS4協(xié)議特征,從而顯著提高了模型的識別準(zhǔn)確性。
2.3.1 行為特征
本文首先通過CICflowmeter工具[4]生成83維廣泛的行為特征,參考文獻[9]使用隨機森林計算特征重要性,并提取top-36的特征。特征重要性分布如圖2所示。
圖2 隨機森林提取特征重要性
使用隨機森林提取特征的方式依賴于模型,在特征選取上有局限性,所以本文選擇AI解釋性工具的shap[2]工具,從以下角度制定特征重要性篩選方式,如表1所示。
表1 shap特征重要性篩選方式
將數(shù)據(jù)集分別通過表1所列5個重要性規(guī)則計算,得到5組不同特征重要性的結(jié)果,將5組特征重要性提取top-36的特征,結(jié)果取平均值,最后得到shap工具計算特征重要性結(jié)果,如圖3所示。
圖3 shap提取特征重要性
最后根據(jù)兩組不同實驗得到的特征重要性取并集,共得到42維有效行為特征,將這些特征作為行為特征輸入到模型,能夠幫助模型提高檢測效率。
2.3.2 協(xié)議特征
根據(jù)2.2小節(jié)概述,提取OBFS4混淆協(xié)議特征需要對握手階段進行識別。在握手階段,根據(jù)包的方向以及psh字段,將OBFS4握手分為第一階段和第二階段。通過分析首包大小、第一階段載荷以及第二階段載荷得到OBFS4混淆協(xié)議下TOR流量的行為特征。同時,通過計算psh包數(shù)以及psh字段百分比,得到在協(xié)議影響下特殊字段特征。綜上,本文提取的TOR協(xié)議特征如表2所示。
表2 TOR協(xié)議特征及描述
TOR作為目前最流行的非法虛擬專用網(wǎng)絡(luò)(Virtual Private Network,VPN)之一,相較之前其流量發(fā)生了很大的變化,而且公開數(shù)據(jù)集與目前混淆協(xié)議下的TOR流量相差較大,導(dǎo)致TOR流量的檢測效果較差。因此,本文自主構(gòu)建了豐富的數(shù)據(jù)集,并基于此進行實驗,數(shù)據(jù)分為正常流量和加密流量兩部分,其中,正常流量主要來自采集的現(xiàn)網(wǎng)數(shù)據(jù),而加密流量除了基于人工采集的目前最新版本的OBFS4混淆協(xié)議(TOR Browser 11.5)TOR流量外,還采集了其他TOR瀏覽器歷史版本(TOR Browser 7.0,TOR Browser 8.0.5)產(chǎn)生的TOR流量共8 GB,以驗證檢測模型的普適性。
本文選取10個代表性應(yīng)用程序,如Facebook、YouTube、Gmail、WeChat等,收集的TOR瀏覽器流量包括用戶聊天、郵件、頁面訪問的數(shù)據(jù)。采用自動化腳本采集數(shù)據(jù)的方法,包括瀏覽器隨機訪問頁面,電子郵件隨機發(fā)送內(nèi)容,聊天包括文字、圖片和文件等方式構(gòu)建數(shù)據(jù),以產(chǎn)生更加復(fù)雜的流量,并在時間上加以擾動,保障流量的真實性。最終本文共采集TOR流量30 GB,非TOR流量30 GB。數(shù)據(jù)集包含表3所示的6種TOR流量和非TOR流量。最后本文基于TOR的OBFS4混淆協(xié)議構(gòu)建模型,訓(xùn)練集、驗證集以及測試集比例為8:1:1。
表3 TOR網(wǎng)絡(luò)流量數(shù)據(jù)集描述
本文使用以下標(biāo)準(zhǔn)衡量算法效果:
(1)準(zhǔn)確率:指分類結(jié)果中判斷為TOR流的所有實例中,被正確分類為TOR流的實例所占的比例。其中判斷為TOR流的實例包括實際為TOR流的實例總數(shù)和實際為非TOR流的實例總數(shù)。公式表示為:
(1)
(2)召回率:指分類結(jié)果中所有TOR實例被正確判定為TOR的百分比。所有TOR實例包括實際分類為TOR或非TOR流的實例總數(shù)。公式表示為:
(2)
(3)F1分數(shù):通過準(zhǔn)確率和召回率得到。其表達式為:
(3)
上述式(1)、式(2)中TP(True Positive)表示在分類結(jié)果中,將TOR流的實際實例數(shù)分類為所有TOR流的數(shù)量;TN(True Negative)表示在分類結(jié)果中,將實際為非TOR流的實例分類為非TOR流的數(shù)量;FP(False Positive)表示在分類結(jié)果中,將實際為非TOR流的實例分類為TOR流的數(shù)量;FN(False Negative)表示在分類結(jié)果中,將TOR流的實際實例數(shù)分類為非TOR流的數(shù)量。
為了驗證本文提出方法的準(zhǔn)確性和有效性,采用以下實驗方法作對比和驗證:(1)將CICflowmeter提取的特征稱為原始特征,與增加了行為特征和協(xié)議特征的流量特征進行比較,以驗證協(xié)議特征對模型性能的影響。并對行為特征融合協(xié)議特征與僅使用原始特征在不同模型下進行實驗比較,驗證特征提取的有效性。(2)與目前已有的OBFS4混淆協(xié)議的TOR檢測方法(Liang[25]提出的動態(tài)特征實驗)對照,驗證本文結(jié)果的先進性。(3)通過不同版本的TOR流量輸送到模型中進行檢測,以驗證模型的普適性。
表4包含使用多種機器學(xué)習(xí)、深度學(xué)習(xí)模型的對照實驗結(jié)果,其中行為特征與原始特征的各項實驗指標(biāo)結(jié)果大致相同,使用行為+協(xié)議特征的結(jié)果優(yōu)于原始特征,表明本文提出的行為特征與原始特征有大致相同的TOR流量特征表示能力,同時行為+協(xié)議特征比原始特征具有更強的表示能力。
表4 模型特征對比實驗
表5表明通過豐富OBFS4的協(xié)議特征,TOR混淆協(xié)議檢測任務(wù)的實驗效果提升了2.39%。
表5 特征有效性實驗
表6為不同版本的瀏覽器使用不同特征作為輸入,在lightGBM作為模型的實驗中的對比結(jié)果。通過結(jié)果可以看出,本文的方法能夠準(zhǔn)確地檢測出不同版本的TOR瀏覽器產(chǎn)生的流量,證明了本文方法有良好的泛化性。
表6 TOR瀏覽器版本對比實驗
本文提出了一種TOR匿名網(wǎng)絡(luò)流量識別方法,在特征提取過程中,為了提高模型計算效率,采用了隨機森林和shap工具對原始特征進行優(yōu)化,得到行為特征。同時,通過分析TOR流量以及OBFS4握手特點,本文提出了協(xié)議特征,并將行為特征融合協(xié)議特征輸入模型。實驗結(jié)果表明,融合協(xié)議特征方法對不同檢測模型的檢測結(jié)果有很大的改善,其中l(wèi)igthGBM算法效果最好。同時,本文還收集了四個不同版本TOR客戶端的流量,實驗表明,針對不同版本的TOR瀏覽器,本文提出的行為特征融合協(xié)議特征依然能夠準(zhǔn)確檢測出TOR流量,證明了本文方法的泛化性。未來還需要增強模型對抗噪聲數(shù)據(jù)的能力,以適應(yīng)互聯(lián)網(wǎng)中流量復(fù)雜多變的實際場景。
網(wǎng)絡(luò)安全與數(shù)據(jù)管理2023年12期