999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

I2P匿名通信流量特征分析與識(shí)別*

2020-03-25 07:34:52屈云軒王軼駿
通信技術(shù) 2020年1期
關(guān)鍵詞:特征

屈云軒,王軼駿,薛 質(zhì)

(上海交通大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,上海 200240)

0 引 言

隨著計(jì)算機(jī)網(wǎng)絡(luò)的高速發(fā)展,越來(lái)越多的信息通過(guò)網(wǎng)絡(luò)進(jìn)行傳輸。然而,最近發(fā)生的多起用戶信息泄露事件也給受害者帶來(lái)了損失,用戶在上網(wǎng)過(guò)程中不希望自己的身份被其他人獲取。匿名通信網(wǎng)絡(luò)就是為了隱藏通信雙方的身份而設(shè)計(jì)的,使用匿名通信網(wǎng)絡(luò)可以防止自己的身份被對(duì)方或監(jiān)聽(tīng)者獲取,從而保護(hù)用戶的身份。Chaum在1981年最先提出基于MIX網(wǎng)絡(luò)的匿名通信技術(shù)[1]。由于MIX網(wǎng)絡(luò)可以提供強(qiáng)大的匿名性,因此目前大多數(shù)匿名通信網(wǎng)絡(luò)均使用MIX網(wǎng)絡(luò)對(duì)用戶身份提供保護(hù)。I2P就是一種使用非常廣泛的基于MIX網(wǎng)絡(luò)的匿名通信網(wǎng)絡(luò),通過(guò)隨機(jī)選擇MIX網(wǎng)絡(luò)中的節(jié)點(diǎn)組成通信鏈路為用戶提供匿名。同時(shí),I2P提供了Eepsite和LeaseSet,使服務(wù)器可以在隱藏身份的情況下與用戶進(jìn)行通信。正是由于I2P提供了強(qiáng)大的匿名性,使得很多違法分子通過(guò)I2P進(jìn)行違法犯罪活動(dòng)[2]。

國(guó)內(nèi)外目前已有大量針對(duì)匿名通信網(wǎng)絡(luò)及其流量識(shí)別技術(shù)的研究。在國(guó)外,Conrad等人在文獻(xiàn)[3]中對(duì)Tor和I2P網(wǎng)絡(luò)進(jìn)行了對(duì)比;Bernaille等[4]提出了通過(guò)觀察TCP流的前5個(gè)數(shù)據(jù)包對(duì)應(yīng)用進(jìn)行識(shí)別;Raahemi等[5]通過(guò)對(duì)IP層數(shù)據(jù)進(jìn)行挖掘識(shí)別P2P流量;Mayank等[6]提出了RDClass的算法,通過(guò)流量與關(guān)鍵字集合之間的距離對(duì)應(yīng)用進(jìn)行識(shí)別;Staravoitau[7]提出了通過(guò)對(duì)數(shù)據(jù)進(jìn)行預(yù)處理后,使用卷積神經(jīng)網(wǎng)絡(luò)對(duì)流量進(jìn)行識(shí)別,準(zhǔn)確率達(dá)到99.33%。在國(guó)內(nèi),方鵬[8]使用了TCP特征和聚類的方式對(duì)惡意TCP流進(jìn)行識(shí)別,并標(biāo)記惡意流量;何高峰等[9]通過(guò)Tor流量的TLS和長(zhǎng)度分布特征對(duì)Tor流量進(jìn)行識(shí)別;李響[10]對(duì)使用Meek網(wǎng)橋的Tor流量進(jìn)行深入分析,使用多級(jí)過(guò)濾和SVM相結(jié)合的方式,對(duì)基于Meek的Tor流量進(jìn)行識(shí)別;李金栓[11]對(duì)I2P流量特征進(jìn)行分析,使用多級(jí)過(guò)濾和遺傳算法對(duì)I2P流量進(jìn)行識(shí)別,實(shí)現(xiàn)了一個(gè)原型系統(tǒng)。

目前,針對(duì)匿名通信網(wǎng)絡(luò)的研究主要集中在Tor的流量識(shí)別,很少有關(guān)于I2P流量識(shí)別的文獻(xiàn)。同時(shí),I2P新加入的NTCP2協(xié)議也給I2P流量帶來(lái)了新的特征,因此有必要對(duì)最新版I2P的流量特征進(jìn)行研究,并設(shè)計(jì)算法識(shí)別其流量。本文對(duì)加入NTCP2協(xié)議后的I2P流量特征進(jìn)行研究,并實(shí)現(xiàn)了一個(gè)用于識(shí)別I2P流量的原型系統(tǒng)。

1 I2P運(yùn)行原理

對(duì)I2P運(yùn)行原理和傳輸層協(xié)議進(jìn)行分析,包括I2P隧道建立、轉(zhuǎn)發(fā)過(guò)程以及I2P路由節(jié)點(diǎn)之間進(jìn)行通信的協(xié)議——SSU、NTCP和NTCP2。

I2P是一種廣泛使用的匿名通信網(wǎng)絡(luò),可以用于匿名瀏覽網(wǎng)頁(yè)、匿名郵件及匿名文件共享等。I2P在發(fā)送數(shù)據(jù)時(shí)會(huì)使用節(jié)點(diǎn)選擇算法從netDB中隨機(jī)選擇一定數(shù)目的節(jié)點(diǎn)組成單向的傳入隧道(Inbound Tunnel)和傳出隧道(Outbound Tunnel)。其中,傳入隧道用于接收數(shù)據(jù),傳出隧道用于發(fā)送數(shù)據(jù),隧道中的每個(gè)節(jié)點(diǎn)都只知道它的上一跳和下一跳節(jié)點(diǎn)。路由間數(shù)據(jù)通過(guò)I2P傳輸層協(xié)議進(jìn)行傳輸。

下面介紹I2P的網(wǎng)絡(luò)數(shù)據(jù)庫(kù)、隧道建立和傳輸層協(xié)議。

1.1 網(wǎng)絡(luò)數(shù)據(jù)庫(kù)

I2P netDB是一個(gè)分布式數(shù)據(jù)庫(kù),保存有路由節(jié)點(diǎn)信息(RouterInfos)和賃集(LeaseSets)兩種信息。它們都經(jīng)過(guò)簽名,任何使用這些數(shù)據(jù)的節(jié)點(diǎn)都可以通過(guò)簽名驗(yàn)證這些信息。其中,RouterInfo記錄了路由節(jié)點(diǎn)的身份(包括加密密鑰、簽名密鑰和證書(shū))、IP地址和端口等信息。

1.2 隧 道

當(dāng)I2P需要進(jìn)行通信時(shí),客戶端建立傳入隧道和傳出隧道。隧道建立時(shí),I2P隨機(jī)從netDB中選擇節(jié)點(diǎn)建立單向傳輸?shù)乃淼?。由于隧道是單向的,因此為了完成通信,至少需要建立一條用于發(fā)送數(shù)據(jù)的傳出隧道和一條用于接收數(shù)據(jù)的傳入隧道。

1.3 傳輸層協(xié)議

I2P路由節(jié)點(diǎn)之間通過(guò)傳輸層協(xié)議進(jìn)行通信,高層協(xié)議經(jīng)過(guò)I2P傳輸層協(xié)議進(jìn)行封裝后通過(guò)TCP或UDP發(fā)送到目標(biāo)路由節(jié)點(diǎn)。I2P的傳輸層有安全半可靠UDP(Secure Semireliable UDP,SSU)、NTCP和NTCP2三種協(xié)議。

1.3.1 SSU

SSU在UDP協(xié)議的基礎(chǔ)上實(shí)現(xiàn)半可靠的、加密的、面向連接的和點(diǎn)到點(diǎn)的數(shù)據(jù)傳輸服務(wù)。SSU連接建立過(guò)程如圖1所示。

圖1 SSU會(huì)話建立

1.3.2 NTCP

NTCP使用TCP協(xié)議,是一種基于Java NIO的傳輸層協(xié)議。NTCP建立過(guò)程如圖2所示。

圖2 NTCP會(huì)話建立

1.3.3 NTCP2

NTCP2在I2P 0.9.36中被引入,NTCP2使用Noise協(xié)議框架。NTCP2可以與NTCP運(yùn)行在同一端口或者不同端口。NTCP2建立連接的過(guò)程如圖3所示。

圖3 NTCP2會(huì)話建立

2 I2P報(bào)文特征分析

通過(guò)運(yùn)行I2P并進(jìn)行抓包獲取包含I2P流量的數(shù)據(jù)包,并使用netDB中RouterInfo對(duì)數(shù)據(jù)流進(jìn)行標(biāo)記,最后分析I2P數(shù)據(jù)流特征。由于NTCP和NTCP2協(xié)議可以同時(shí)運(yùn)行,因此下文不再區(qū)分NTCP和NTCP2協(xié)議。

2.1 載荷長(zhǎng)度特征

提取捕獲到的數(shù)據(jù)包的載荷長(zhǎng)度,分別繪制載荷長(zhǎng)度分布直方圖,如圖4和圖5所示??梢钥闯?,無(wú)論是基于TCP還是UDP的協(xié)議,均存在載荷長(zhǎng)度較小的數(shù)據(jù)包,且這樣的數(shù)據(jù)包占了很大比重,長(zhǎng)度較大的載荷長(zhǎng)度根據(jù)協(xié)議的不同有較大差異。根據(jù)第1節(jié)的描述,由于I2P隧道是單向的,因此隧道反向傳輸?shù)臄?shù)據(jù)只有確認(rèn)包,數(shù)據(jù)量較小。然而,通過(guò)對(duì)大量的I2P數(shù)據(jù)流進(jìn)行分析發(fā)現(xiàn),雖然大部分?jǐn)?shù)據(jù)流符合該特征,但仍有小部分上下行數(shù)據(jù)量大致相同。

圖4 基于TCP的I2P數(shù)據(jù)流載荷長(zhǎng)度分布

圖5 基于UDP的I2P數(shù)據(jù)流載荷長(zhǎng)度分布

為了進(jìn)一步得到I2P數(shù)據(jù)流載荷長(zhǎng)度的特征,下面分析其載荷長(zhǎng)度的統(tǒng)計(jì)量。由于基于TCP和UDP的I2P流量有較大差異,因此需要分別對(duì)其進(jìn)行研究。同時(shí),I2P流量的載荷長(zhǎng)度可以明顯分為兩種,長(zhǎng)度較大的載荷一般用于數(shù)據(jù)的發(fā)送,長(zhǎng)度較小的載荷用于對(duì)報(bào)文的確認(rèn)。由于載荷長(zhǎng)度大小對(duì)流量特征也有較大影響,因此本文設(shè)定了一個(gè)len_threshold,大于該長(zhǎng)度的載荷視為長(zhǎng)度較大載荷,小于該長(zhǎng)度的視為長(zhǎng)度較小的載荷。通過(guò)計(jì)算不同基于UDP的I2P數(shù)據(jù)流的統(tǒng)計(jì)量,繪制成圖6、圖7和圖8。

圖6 基于UDP的I2P數(shù)據(jù)流載荷長(zhǎng)度期望

圖7 基于UDP的I2P數(shù)據(jù)流載荷長(zhǎng)度標(biāo)準(zhǔn)差

圖8 基于UDP的I2P數(shù)據(jù)流載荷長(zhǎng)度熵

從圖6、圖7和圖8可以看出,基于UDP的I2P流量具有一定的統(tǒng)計(jì)特性,尤其是用于確認(rèn)的長(zhǎng)度較小的載荷,期望分布于0~200,標(biāo)準(zhǔn)差分布于0~50,熵分布于0~30。

本文使用同樣的方法繪制了基于TCP的I2P數(shù)據(jù)流的統(tǒng)計(jì)特征圖,如圖9、圖10和圖11所示。

圖9 基于TCP的I2P數(shù)據(jù)流載荷長(zhǎng)度期望

圖10 基于TCP的I2P數(shù)據(jù)流載荷長(zhǎng)度標(biāo)準(zhǔn)差

圖11 基于TCP的I2P數(shù)據(jù)流載荷長(zhǎng)度熵

從圖9、圖10和圖11可以看出,基于TCP的I2P數(shù)據(jù)流小長(zhǎng)度載荷長(zhǎng)度的統(tǒng)計(jì)特征較UDP更為明顯,TCP較小載荷長(zhǎng)度期望分布在0~20,標(biāo)準(zhǔn)差分布在0~300,載荷長(zhǎng)度熵分布于0~10。長(zhǎng)度較大的載荷期望分布在1 000~2 500,大部分標(biāo)準(zhǔn)差小于1 000。

2.2 載荷長(zhǎng)度序列特征

在第1節(jié)中介紹了I2P傳輸層連接建立的過(guò)程,從連接過(guò)程交換的信息來(lái)看,I2P傳輸層協(xié)議在連接建立過(guò)程中可能存在明顯的長(zhǎng)度序列模式。下面截取部分基于TCP的I2P傳輸層建立會(huì)話過(guò)程的數(shù)據(jù)流,如圖12所示。

圖12 基于TCP的I2P傳輸層建立連接

圖13對(duì)比了3條基于TCP的數(shù)據(jù)流,可以看出數(shù)據(jù)流的前幾個(gè)數(shù)據(jù)包的載荷長(zhǎng)度序列有一定的大小范圍?;赨DP的I2P數(shù)據(jù)流也有類似的模式,部分?jǐn)?shù)據(jù)流如圖13所示。

圖13 基于UDP的I2P傳輸層建立連接

從圖13可以看出,基于UDP的I2P流量有著更為明顯的特征,尤其是第3個(gè)載荷長(zhǎng)度固定為512 Byte。

2.3 載荷特征

I2P載荷經(jīng)過(guò)加密處理,因此載荷無(wú)明顯特征。然而,這與其他加密協(xié)議如TLS有明顯區(qū)別。在TLS協(xié)議中,安全傳輸層載荷開(kāi)始處會(huì)記錄數(shù)據(jù)類型、協(xié)議版本和長(zhǎng)度等信息。

2.4 首部標(biāo)志特征

根據(jù)對(duì)大量I2P流量數(shù)據(jù)包網(wǎng)際互聯(lián)層和傳輸層的頭部分析發(fā)現(xiàn),I2P流量的IP頭部的TOS字段均為0,TCP頭部的PSH位置位,如圖12所示。

2.5 端口號(hào)

根據(jù)I2P官方網(wǎng)站的描述,I2P在運(yùn)行時(shí)會(huì)從大于1 024的端口號(hào)中隨機(jī)選取一個(gè)端口號(hào)進(jìn)行通信。觀察大量的I2P數(shù)據(jù)包,也證實(shí)了這個(gè)描述。

2.6 確認(rèn)到達(dá)時(shí)間差

在TCP協(xié)議中,接收到數(shù)據(jù)包后要返回ACK確認(rèn)數(shù)據(jù)包到達(dá)時(shí)間。本文通過(guò)計(jì)算ACK數(shù)據(jù)包發(fā)送時(shí)間和相應(yīng)數(shù)據(jù)包的差值繪制成圖14。

圖14 確認(rèn)到達(dá)時(shí)間差

從圖14中可以看出,I2P數(shù)據(jù)流確認(rèn)到達(dá)數(shù)據(jù)包的發(fā)出時(shí)間差集中在0.2~0.5 s,初始的幾個(gè)報(bào)文時(shí)間差較小。同時(shí),受到網(wǎng)絡(luò)波動(dòng)和計(jì)算量的影響,少部分?jǐn)?shù)據(jù)包的時(shí)間差可能超出范圍。

3 算法設(shè)計(jì)與實(shí)現(xiàn)

將根據(jù)第2節(jié)對(duì)I2P流量特征的分析結(jié)果,設(shè)計(jì)并實(shí)現(xiàn)一套算法實(shí)現(xiàn)對(duì)I2P流量進(jìn)行過(guò)濾,并對(duì)算法進(jìn)行測(cè)試。

本文首先通過(guò)端口號(hào)過(guò)濾掉端口小于等于1 024的數(shù)據(jù)流,然后對(duì)數(shù)據(jù)流的其他特征進(jìn)行檢查,如果通過(guò)所有檢查,則認(rèn)為是I2P數(shù)據(jù)流。

算法如下:

(1)讀入捕獲的數(shù)據(jù)包并重新建立數(shù)據(jù)流,去除數(shù)據(jù)流中重傳幀;

(2)提取數(shù)據(jù)流的首部標(biāo)志位特征、載荷長(zhǎng)度特征、TCP數(shù)據(jù)流確認(rèn)時(shí)間和載荷前十個(gè)字節(jié);

(3)檢查數(shù)據(jù)流端口號(hào),如果小于等于1 024,則認(rèn)為不是I2P數(shù)據(jù)流;

(4)檢查首部特征,如果不符合I2P數(shù)據(jù)流的首部特征,則認(rèn)為不是I2P數(shù)據(jù)流;

(5)檢查載荷前10字節(jié)是否包含載荷長(zhǎng)度信息以及同一數(shù)據(jù)流相同位置字節(jié)的相關(guān)性,如果包含或相關(guān)性過(guò)大,則認(rèn)為不是I2P數(shù)據(jù)流;

(6)如果是TCP流,則檢查確認(rèn)報(bào)文發(fā)出時(shí)間差,如果有一定比例的數(shù)據(jù)包超出范圍,則認(rèn)為不是I2P數(shù)據(jù)流;

(7)設(shè)定長(zhǎng)度len_threshold,根據(jù)len_threshold將載荷長(zhǎng)度分成兩部分,小于len_threshold的記為Y,大于len_threshold的記為Z;

(8) 計(jì) 算 E(Y)、D(Y)和 H(Y),如 果 E(Y)、D(Y)或H(Y)不在I2P較小載荷的期望、標(biāo)準(zhǔn)差和長(zhǎng)度熵區(qū)間內(nèi),則認(rèn)為不是I2P流量;

(9)計(jì)算 E(Z)和 H(Z),如果 E(Z)或 H(Z)不在I2P較大載荷的期望和長(zhǎng)度熵區(qū)間內(nèi),則認(rèn)為不是I2P流量;

(10)如果通過(guò)以上所有檢查,則認(rèn)為是I2P流量。

根據(jù)以上算法,本文使用python開(kāi)發(fā)了一套用于檢測(cè)I2P流量的原型系統(tǒng)。為了使實(shí)驗(yàn)結(jié)果更加準(zhǔn)確,本文在不同環(huán)境重新抓取了包含I2P流量的數(shù)據(jù)包,共獲取到34 926條數(shù)據(jù)流,其中包含5 583條I2P數(shù)據(jù)流。運(yùn)行流量識(shí)別原型系統(tǒng)對(duì)流量進(jìn)行識(shí)別,結(jié)果如表1所示。

表1 實(shí)驗(yàn)結(jié)果

從表1可以計(jì)算出,該原型系統(tǒng)對(duì)I2P流量識(shí)別的精確度(Accuracy)達(dá)到93%,召回率達(dá)到94%,證明該系統(tǒng)可以有效識(shí)別I2P流量。

4 結(jié) 語(yǔ)

本文首先對(duì)I2P原理和傳輸層協(xié)議進(jìn)行介紹,其次重點(diǎn)分析I2P數(shù)據(jù)流存在的統(tǒng)計(jì)學(xué)特征,最后根據(jù)I2P數(shù)據(jù)流的統(tǒng)計(jì)學(xué)特征設(shè)計(jì)了一套算法對(duì)I2P流量進(jìn)行識(shí)別。實(shí)驗(yàn)結(jié)果表明,該算法具有較高的精確度和召回率。

在本文的基礎(chǔ)上未來(lái)可以從以下幾個(gè)方向?qū)2P流量識(shí)別算法進(jìn)行進(jìn)一步優(yōu)化:

(1)進(jìn)一步豐富數(shù)據(jù)流的種類,對(duì)流量識(shí)別算法進(jìn)行進(jìn)一步優(yōu)化;

(2)可以通過(guò)抓取I2P路由節(jié)點(diǎn)信息,直接使用路由節(jié)點(diǎn)信息識(shí)別數(shù)據(jù)流;

(3)可以利用機(jī)器學(xué)習(xí)算法進(jìn)行進(jìn)一步識(shí)別,提高精確度。

猜你喜歡
特征
抓住特征巧觀察
離散型隨機(jī)變量的分布列與數(shù)字特征
具有兩個(gè)P’維非線性不可約特征標(biāo)的非可解群
月震特征及與地震的對(duì)比
如何表達(dá)“特征”
被k(2≤k≤16)整除的正整數(shù)的特征
不忠誠(chéng)的四個(gè)特征
詈語(yǔ)的文化蘊(yùn)含與現(xiàn)代特征
新聞傳播(2018年11期)2018-08-29 08:15:24
抓住特征巧觀察
基于特征篩選的模型選擇
主站蜘蛛池模板: 伊人久久久大香线蕉综合直播| 欧美天堂在线| 一级片一区| 一级毛片在线免费视频| 国产精品女熟高潮视频| 日韩成人在线视频| 国产乱码精品一区二区三区中文| 伊人久久精品亚洲午夜| 亚洲中文字幕手机在线第一页| 久久国产香蕉| 国产女人18毛片水真多1| 又爽又大又黄a级毛片在线视频| 亚洲国产成人久久77| 亚洲一级毛片| 国产精品七七在线播放| 婷婷五月在线视频| 国产精品自拍合集| 亚洲精品无码日韩国产不卡| 不卡无码网| 国产麻豆另类AV| 国产亚洲精品自在久久不卡| 欧美日韩精品在线播放| 日本黄色不卡视频| 99成人在线观看| 精品国产香蕉伊思人在线| 91美女视频在线| 日本久久久久久免费网络| 伊人中文网| 最新日本中文字幕| 国产一级精品毛片基地| 亚洲男人天堂网址| 精品三级在线| 天堂va亚洲va欧美va国产| 亚洲日韩精品伊甸| 国产福利免费视频| 一级毛片在线直接观看| 欧美色视频网站| 亚洲高清无码久久久| 亚洲福利一区二区三区| 一本久道久综合久久鬼色| 一级毛片在线免费视频| 亚洲无码精品在线播放| 欧美五月婷婷| 无码国内精品人妻少妇蜜桃视频| 欧美国产日本高清不卡| 99热在线只有精品| 久996视频精品免费观看| 国产精品自在在线午夜| 国产麻豆福利av在线播放| 免费观看成人久久网免费观看| av无码久久精品| 久久黄色一级片| 尤物成AV人片在线观看| 美女潮喷出白浆在线观看视频| 久久国产精品电影| 香蕉eeww99国产在线观看| 黄色网在线| 精品少妇人妻av无码久久| 天天综合网色中文字幕| 天天激情综合| 亚洲无码视频图片| 午夜国产小视频| 亚洲一区二区三区国产精品| 日韩欧美综合在线制服| 日韩av资源在线| 亚洲精品国产综合99| 国产无码网站在线观看| 日韩国产高清无码| 中文纯内无码H| 人妻精品久久久无码区色视| 超碰精品无码一区二区| 国产在线麻豆波多野结衣| 青青青国产在线播放| 人妻丰满熟妇αv无码| 久久综合九色综合97婷婷| 99久久国产综合精品女同| 免费可以看的无遮挡av无码| 中文字幕第1页在线播| 午夜人性色福利无码视频在线观看| 在线观看免费AV网| 国产综合色在线视频播放线视| 久久久久无码国产精品不卡|