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

對抗多模式網絡層析成像的拓撲混淆機制

2023-12-16 10:30:24林洪秀邢長友
計算機工程 2023年12期
關鍵詞:分類

林洪秀,邢長友,詹 熙

(中國人民解放軍陸軍工程大學 指揮控制工程學院,南京 210007)

0 概述

大量研究表明,大部分網絡攻擊開始之前通常存在網絡偵察階段[1]。在網絡偵察階段,攻擊者主要獲取目標網絡的網絡拓撲、IP 地址塊、服務依賴關系和存在漏洞的服務器等信息,其中,網絡拓撲是一種非常重要的攻擊信息,攻擊者可以根據目標網絡的拓撲結構對網絡中的關鍵鏈路和關鍵節點發起鏈路洪泛攻擊(Link-Flooding Attack,LFA)[2]等精準攻擊,破壞目標網絡的連通性。

作為一種主動欺騙防御技術,網絡拓撲混淆技術能夠有效對抗攻擊者實施的網絡拓撲推斷[3]。網絡拓撲混淆技術[4-5]并不刻意阻止攻擊者的攻擊行為,而是識別網絡中的探測流,通過策略性地混淆探測流,將真實網絡拓撲偽裝成混淆網絡拓撲,使攻擊者無法發起有效攻擊。

目前,網絡拓撲混淆技術在對抗基于traceroute的網絡拓撲推斷研究中取得了較好的成果,但面向網絡層析成像的拓撲混淆技術的相關研究較少,且存在一定的局限性。在網絡層析成像拓撲推斷中,攻擊者通過使用多種探測模式測量路徑性能相關性,從而根據測量結果推斷網絡拓撲結構[6]。網絡拓撲混淆技術則通過對探測流進行混淆操作[7],擾動攻擊者的測量結果,使其推斷出錯誤的網絡拓撲,其具體的混淆操作方法與攻擊者進行拓撲推斷時使用的性能參數類型相關,如攻擊方以時延為拓撲推斷的性能參數時,防守方通常通過延遲操作來混淆探測流,而當攻擊方以丟包率為拓撲推斷的性能參數時,則防守方通常通過丟棄數據包操作來混淆探測流。不同性能參數對應著攻擊方不同的探測模式,若混淆操作與探測模式不匹配,則會出現無法有效混淆探測流的后果,因此,準確識別探測模式對于增強面向網絡層析成像的拓撲混淆技術具有重要意義。然而,現有面向網絡層析成像的拓撲混淆技術只能識別攻擊者的探測行為,無法進一步識別攻擊者使用的探測模式。

針對上述問題,本文提出一種既能在線識別探測行為與探測模式,又能策略性混淆探測流的方法,實現這一目標主要存在以下3 個挑戰:1)在線檢測攻擊者的探測流對實時性的要求比較高,在追求檢測準確性的同時也能保證檢測時效性具有一定的挑戰性;2)不同探測模式下的探測流區別較小,準確識別探測包的探測模式具有一定的挑戰性;3)如何混淆探測流使攻擊者偵察到混淆網絡具有一定的挑戰性。

為解決以上問題,本文提出一種對抗多模式網絡層析成像的拓撲混淆機制M2NTO。針對第1 個挑戰,設計一種基于增量學習的在線決策樹分類算法,在探測流的早期階段進行識別和分類,根據分類結果對探測流的后續數據包進行相應的混淆操作。針對第2 個挑戰,根據網絡層析成像探測流在傳輸模式上存在的區別,將探測流檢測分為2 個步驟:首先使用流量分類算法識別網絡中的探測流,然后再以塊的形式對識別到的探測流進行二次分類,從而得到探測流的探測模式。針對第3 個挑戰,根據網絡負載情況與探測方法判斷攻擊者使用的性能參數,結合性能參數的特點和探測模式的原理為每種性能參數設計相應的混淆方案。

本文基于SDN[8]技術實現M2NTO 的原型系統,M2NTO 通過在網絡邊緣部署SDN 交換機實時捕獲端節點發出的網絡流數據并轉發到SDN 控制器,隨后SDN 控制器再進行特征提取、流量分類及下發流表等操作,最后,SDN 交換機根據下發的流表規則進行相關混淆操作,從而準確識別探測流類別并有效混淆網絡層析成像探測包,達到防御基于網絡層析成像的拓撲探測的目的。

1 相關工作

網絡層析成像技術根據端到端測量結果推斷網絡拓撲結構,常用的拓撲推斷算法主要有MLT(Maximum Likelihood Tree)[9]、HTE(Hierarchical Tree Estimation)[10]和RNJ(Rooted Neighbor-Joining)[11]等算法,這些方法的拓撲推斷過程主要分為測量端到端性能、計算節點相關性、重構網絡拓撲3 個步驟[12]。首 先,使 用“三明治”分組列 車[13]和“背 靠背”[9]等測量方法從源節點發送一組探測包到目的節點。然后,在目的節點計算共享路徑性能(排隊時延、鏈路利用率、時延協方差等),根據相關性能的值計算目的節點對之間的相關性,共享路徑越長,相關性值越大,節點對相關性越大。最后,根據節點相關性重構網絡拓撲結構。

網絡層析成像技術準確推斷目標網絡拓撲結構的前提是測量數據真實可靠,根據這個特點,HOU等[4]提出了一種先檢測后混淆的網絡層析成像拓撲混淆框架ProTo。ProTo 中的檢測模塊以一種輕量級的KNN 分類器識別網絡層析成像探測包,通過離線自訓練和在線增量更新,可以達到較高的檢測率和較低的誤報率;混淆模塊通過延遲識別到的探測包,使攻擊者測量的網絡端到端性能不準確,從而計算到錯誤的節點相關性,推斷出錯誤的網絡拓撲。LIU等[5]針對ProTo 的混淆性能存在不確定性這個問題,設計了一個多目標優化模型AntiTomo,根據欺騙性、安全性、低成本等目標,在候選混淆拓撲組成的候選森林中使用貪心算法選擇最優候選樹作為混淆網絡拓撲。

雖然ProTo 和AntiTomo 在對抗網絡層析成像拓撲推斷上起到了一定的作用,但兩者都存在一定的局限性:AntiTomo 不對網絡層析成像探測包進行識別,僅通過增加網絡鏈路的端到端時延來混淆網絡拓撲,這種混淆操作會影響正常數據包的傳輸,降低網絡性能甚至影響網絡功能;ProTo 只能檢測到攻擊者基于網絡層析成像的探測行為,無法進一步識別其使用的測量方法類型,且只能在網絡層析成像的性能參數為排隊時延的情況下進行混淆操作。

2 基于網絡層析成像的拓撲探測及對抗模型

2.1 基于網絡層析成像的拓撲探測模型

圖1 是攻擊者利用源節點s1和目的節點{d1,d2,d3,d4,d5}形成的1×5 探測網絡。在網絡拓撲端到端探測過程中,攻擊者在源節點s1發出一組探測分組,這些探測分組將沿著相應的路由到達目的節點。在基于層析成像的網絡拓撲探測模型中,為了推斷目標網絡的拓撲結構,攻擊者需要測量任意2 個目的節點間的相關性,因此,需要組合測量到所有目的節點對之間的性能,最后推斷出整個目標網絡的拓撲結構。為了準確計算節點間的相關性,在實際測量中攻擊者往往多次測量計算均值,通常需要向每個節點對發送幾百甚至上千個探測包。因此,在攻擊者探測期間,網絡中可以觀測到具有相同模式的大量流量。

圖1 基于網絡層析成像的拓撲推斷方法Fig.1 Topology inference method based on network tomography

網絡層析成像常用的測量方法如圖2 所示,“三明治”分組列車測量方法的探測包組由3 個數據包組成,2 個小數據包夾著一個大數據包,小數據包發送到同一個目的節點,大數據包j1被發送到另一個目的節點;“背靠背”探測方法的探測包組通常由2 個相同大小的數據包組成,從根節點相繼發送,到達中間節點f后分開,直至到達2 個不同的目的節點

圖2 基于網絡層析成像的拓撲探測方法Fig.2 Topology probe method based on network tomography

2 種測量方法的探測模式不同,節點相關性計算的思想也不同。在“三明治”分組列車探測方法中,大數據包j1大小通常超過1 000 Byte,在鏈路中的傳輸時延較大,導致小數據包p2在節點f處的排隊時延較長,使得節點i和節點j的共享路徑越長,數據包p1和大數據包j1經過的節點越多,在目的節點di觀測到2 個小數據包的時延差值就越大,節點di和節點dj相關性越大。“背靠背”探測方法的本質是模擬多播網絡,由于2 個數據包之間的時間間隔極小,可以認為2 個數據包在共享鏈路上所經過的網絡狀況相同,在目的節點計算端到端單向時延或丟包率,根據時延協方差或丟包率計算2 個節點的共享路徑長度,時延協方差或丟包率越大,共享路徑越長。

2.2 對抗網絡層析成像的拓撲混淆模型

針對上述探測過程,本文設計的網絡拓撲混淆模型如圖3 所示,主要分為網絡流量監聽與處理、探測流量識別與分類和探測流量混淆操作3 個階段。在網絡流量監聽與處理階段,完成監聽網絡實時數據流、提取數據流特征以及特征選擇等處理操作。在探測流量識別與分類階段,將處理好的數據送入分類器進行分類,得到網絡流類型的分類結果,之后根據新到達的數據動態更新該分類器。在探測流量混淆操作階段,首先結合流量分類的結果和網絡負載情況判斷攻擊者使用的網絡性能參數,然后根據混淆網絡拓撲生成算法構建混淆網絡拓撲并計算混淆操作中用到的性能參數,最后根據得到的性能參數對K-cast 探測流進行相應的混淆操作。

圖3 對抗網絡層析成像的拓撲混淆模型Fig.3 Topology obfuscation model against network tomography

需要說明的是,由于流量分類階段初始分類器的構建需要帶標簽的數據集進行訓練,因此在流量檢測系統上線前還需要經過一個離線處理階段。在離線處理階段,首先收集網絡流數據提取網絡流的特征,并人工對樣本進行標記生成初始訓練集和初始探測流數據集,以備后續使用初始訓練集和探測流數據集訓練分類器得到初始分類器。

3 網絡層析成像探測流量在線識別與混淆機制

3.1 網絡流量監聽與處理

在入口節點監聽端節點發出的數據包,解析數據包的五元組信息(<源IP,目的IP,源端口,目的端口,協議類型>),根據五元組信息判斷當前數據包所屬的網絡流,并對網絡流進行信息統計與特征提取。MOORE 等[14]提出了248 個可以 用于機 器學習流量分類的流量特征,但這些特征大多都無法在線提取,因此,許多關于在線流量分類的研究通常把前n個數據包的統計信息作為流特征[15]。HUANG 等[16]通過實驗證明了僅使用網絡流的前幾個數據包進行分類能同時兼顧效率與精度。由于網絡層析成像技術使用的網絡探測方法具有固定的傳輸模式,且其早期子流的特征能夠基本反映整條流的網絡特征,因此本文以網絡流前5 個數據包的統計特征和到達時間及五元組信息作為網絡流的特征,如表1 所示。

表1 網絡流特征信息Table 1 Network traffic characteristics information

1)IP 地址距離

IP 地址可以標識端節點的網絡位置,IP 地址距離是源/目的IP 地址相與的結果,可以度量2 個IP 地址的距離。給定源IP 地址[10.0.0.1]和目的IP 地址[10.0.0.2],逐位相與結果為1,表明2 個地址非常接近,可能位于同一子網中。

2)數據包大小的方差

網絡層析成像在探測時不同探測流的數據包大小可能不同,但在同一條探測流中的數據包大小通常是一致的。為了使這種特性更好地應用到分類中,對數據包的大小進行方差計算,數據包大小波動越小,方差越小。

3)時間間隔

網絡層析成像探測數據包以恒定的時間間隔傳輸,以消除隨機測量噪聲。在數據收集階段記錄了每條流的前5 個數據包的到達時間,再增加5 個數據包之間的時間間隔特征。

4)時間間隔方差

不同探測流的探測包時間間隔大小可能不相同,但在同一條探測流內的探測包時間間隔是一樣的。因此,采用時間間隔方差來衡量數據包時間間隔的波動。

5)反向流

網絡層析成像從同一個源節點發出探測包,在目的節點觀測探測包的性能,不要求有從目的節點到源節點的反向流。然而,很多正常的網絡流是有反向流的,如實時視頻語音通話、網站表單驗證等,因此,是否存在反向流也是檢測探測流的一個特征。

網絡層析成像探測流因其特殊的測量方式,IP地址距離、數據包大小方差、時間間隔等特征存在明顯的規律,與正常網絡流區別較大,但是探測流之間的區別較小,如“三明治”探測方法中的2 個小數據包與“背靠背”探測方法中的數據包IP 地址距離、數據包大小、時間間隔等特征區別較小,無法根據單個探測流的特征識別探測模式,而探測流的主要區別在于探測流之間的整體傳輸模式,需要提取多個探測流之間的相關關系來區分傳輸模式。因此,本文將網絡層析成像探測流分類過程分為2 步:首先,以單條流的特征來識別網絡流中的探測流;然后,從識別到探測流開始,以連續到達的k條探測流視為一塊,以塊的形式提取探測流相關關系特征,識別探測流塊的傳輸模式。考慮到探測流與正常數據流的區別,在第1 步中使用如表2 所示的特征。

表2 探測行為識別采用的特征信息Table 2 Feature information used for probe behavior recognition

第2 步要對識別出的探測流類型進行分類。考慮到探測流之間的區別主要在于傳輸模式的差異,而單個探測流不易識別其傳輸模式,此處須通過提取由k條探測流構成的探測流塊的特征進行分類,因此第2 步使用如表3 所示的特征。

表3 探測流分類采用的特征信息Table 3 Feature information used for probe traffic classification

3.2 探測流量識別與分類

考慮到決策樹[17]在處理離散特征上的優勢,而上述提取的特征多為離散值,因此,本文使用決策樹作為基礎分類器。考慮到網絡流的特征會隨著網絡狀態的波動而不斷發生改變,普通算法無法處理應對這種不斷發生變化的情況。增量學習的方法是漸進地進行知識學習、修正和加強已有的知識的過程[18],其能適應不斷變化的網絡流,在學到與當前網絡狀態匹配的特征時,還能保存大部分以前已經學到的知識[19]。因此,本文結合決策樹算法與增量學習,設計了一種在線流量檢測方法,使其能夠適應不斷變化的網絡狀況,達到較高的流量檢測精度。該檢測機制主要分成3 步:

1)初始決策樹生成。基于離線處理階段提取的初始訓練集和探測流數據集創建2 棵初始決策樹T1和T2,其中T1用于探測流識別,T2用于探測流分類。

2)探測行為識別。使用T1識別新到達的網絡流是否為探測流,若識別結果為正常數據流則直接傳輸,否則,使用T2對該探測流進行二次分類。識別完成后將該網絡流數據加入訓練集,然后根據訓練集中網絡流樣本特征的到達時間更新樣本權重,最后,根據更新后的訓練集對決策樹T1進行更新。

3)探測流分類。將T1最新識別出的探測流與其前k-1 個被識別出的探測流合并成探測流塊,使用T2以提取該探測流塊的特征進行二次分類,識別出新到達的探測流的模式,識別完成后將該探測流數據加入探測流數據集,然后根據探測流數據集中樣本的到達時間更新樣本權重,最后,根據更新后的探測流數據集對決策樹T2進行更新。

下面從初始決策樹生成、探測行為識別和探測流分類這3 個方面詳細介紹本文提出的探測流量在線檢測機制。

3.2.1 初始決策樹生成

在流量檢測系統上線前,需要構建初始決策樹T1和T2。決策樹模型呈樹形結構,如何確定內部分支節點是創建決策樹的關鍵。在流量識別中,選擇特征屬性的順序決定了決策樹的內部分支結構,直接影響到分類的性能。

信息熵增益率是選擇最佳特征的常用方法之一,表示特征使數據集分類的不確定性減少的程度,信息增益大的特征分類能力更強。對于一個包含K類樣本的數據集D,其信息熵的計算公式如下:

其中:Ck表示數據集中屬于類k的樣本;Pk為樣本的類屬性為k的概率;Wk表示Ck中樣本權重的總和;WD為所有樣本權重的總和。在數據集樣本權重都為1時,Pk=|Ck|/|D|,|Ck|表示Ck中的樣本個數,|D|表示數據集D的總樣本個數。攻擊者在網絡層析成像探測時為了達到隱蔽性的目的,探測包造成的網絡負載通常為鏈路帶寬的1%~2%,而總體網絡負載比例一般在30%~70%之間,這會導致數據集中正常網絡流的樣本數量大于探測流的樣本數量。為了解決數據集類別不平衡的問題,本文給小類樣本賦予更高的權重,權重大小由數據集中大類樣本數量與小類樣本數量的比例決定,大類與小類之間的權重關系如下:

其 中:wk1和wk2分別為 類k1和 類k2的樣本權重;|Ck1|為類Ck1樣本個數;|Ck2|為類Ck2樣本個數。本文將大類即正常數據流這一類的權重設定1,則探測流數據的權重為|Cnormal|/|Cprob|,其中:|Cnormal|為正常網絡流樣本個數;|Cprob|為探測流樣本個數。

設數據集D的特征集為A={A1,A2,…,An},每個特征Ai能取ni個不同的值{ai,1,ai,2,…,ai,ni}。根據特征Ai的取值可以將數據集D分為ni個子集D1,D2,…,Dni,|Dj|為子集Dj中的樣 本個數|D|,Wij代表分支ai,j的權重,其值為子集Dj中樣本權重總和。記子集Dj中樣本類屬性為p的樣本的集合為Djp,Wijp表示Djp中樣本權重的總和。特征Ai的條件信息熵為:

其中:Pi是特征Ai取值為ai的概率。信息增益的定義為:

信息增益的值與訓練數據集相關,當訓練數據集的信息熵大時,信息增益值會偏大。因此,使用信息增益率進行改進:

在初始決策樹T1的生成過程中,首先利用離線階段收集的初始數據集D1和特征集A(如表2 所示),計算初始數據集D1的信息熵和每個特征的信息增益率,然后根據信息增益率的值選出最佳分裂特征,以最佳分裂特征為根節點,并根據最佳分裂特征劃分子集,用剩余的特征遞歸構建子樹,最后得到完整的決策樹T1。初始決策樹T2的創建步驟與創建T1一樣,區別在于初始數據集和特征集。初始數據集D2是從數據集D1中分類出來的探測流集合,特征集B如表3 所示。

在初始決策樹訓練完成后,用分層交叉驗證法對決策樹進行后剪枝,提升決策樹分類的泛化能力。

3.2.2 探測行為識別

流量檢測系統在線后,入口交換機監聽到實時網絡流,根據決策樹T1識別網絡流中攻擊者發出的探測流。由于網絡流的特征會隨時間發生變化,而當前流與最近到達的流相關性高,與最開始到達的流相關性低,因此本文引入衰落模型的概念,根據流到達的先后順序對數據進行加權。本文應用一個具有指數函數的衰落模型來設置樣本e的權重:

其中:λ為衰落因子,0<λ<1。為減少實時更新數據集實例權重的時間花銷,根據網絡流到達的順序對數據集中的樣本進行編號,第一個到達的網絡流樣本序號設置為1,最新到達的實例序號為t,Δt是當前樣本的序號與數據集中樣本序號的差值。wk是樣本的類別權重,表示類別為k的樣本的權重大小。每新到達一個流時,都更新數據集中樣本的權重。樣本權重更新會引起特征權重的變化,即決策樹中每個節點分支的權重發生改變,而權重過小的分支意味著很少或者很舊的樣本屬于這一特征的分類決策下,對整體分類貢獻不大,因此,對這類分支予與刪除操作,而權重較大且不純的分支則進行繼續生長。

探測流模式識別的在線更新算法如算法1 所示。算法輸入數據集D和決策樹T,以及相關參數即衰落因子λ、節點權重下界參數α、節點權重上界參數β,輸出更新后的數據集D'和決策樹T'。該算法首先計算數據集中的每個樣本與當前樣本的序號差值(第2 行),接著根據式(6)更新樣本權重(第3 行),然后再計算節點權重的平均值(第5 行),從根節點開始遍歷決策樹中所有節點(第6 行),根據新的樣本權重更新節點分支的權重值(第8 行),若該分支為葉子節點分支且權重值大于上界閾值(參數β與節點權重平均值的乘積),就為該分支創建子樹(第9~10 行),并剪枝權重小于下界閾值(參數α與節點權重平均值的乘積)的分支(第11~12 行)。

算法1OnlineUpdate

3.2.3 探測流分類

在識別出探測流后,要進一步區分探測流的模式。探測流分類算法如算法2 所示。新的網絡流e到達后,首先根據決策樹T1區分出探測流和正常流(第1 行),并將分類結果加入到原始數據集(第2~3 行),然后根據在線更新算法對決策樹T1和原始數據集D1進行更新(第4 行)。如果新到達的流是識別為正常數據流(第5 行),直接輸出分類結果(第6 行);否則用列表tmpProbData 存儲探測流數據(第8 行),直到收集滿k個探測流(第10 行),提取這k個探測流的特征(第11 行),根據決策樹T2進行分類(第12 行),將分類結果和探測流數據加入到探測流數據集中(第13~14 行),并進行更新(第15 行),以及將列表清空,等待下一個探測流進入(第16 行),最后輸出探測流模式的類別(第18 行)。

算法2Attack flow classification

3.3 探測流量混淆操作

在識別出探測包,并對探測包的模式進行準確分類后,需要對探測包進行相應的混淆操作,具體的混淆操作方法與探測包的探測模式和使用的性能參數類型相關。為了使攻擊者推斷出混淆后的網絡拓撲,需要將攻擊者測量的端到端性能修改成混淆網絡拓撲的性能,本文基于文獻[5]提出的方法構建混淆網絡拓撲和計算混淆網絡拓撲的相關性能。

性能參數類型與探測模式有關,網絡層析成像拓撲推斷常用的網絡性能參數有排隊時延、時延協方差和成功傳輸率,排隊時延可以通過“三明治”分組列車探測方法得到,時延協方差和成功傳輸率通過“背靠背”探測方法得到。相關研究表明[10,12],不同性能參數在網絡環境中的適應情況不同,當網絡負載較小時,網絡中的時延和丟包較少,測量分組在共享鏈路中的時延變化較小,因此,時延協方差和成功傳輸率性能參數不適用于網絡負載較小的網絡環境,而當性能參數為排隊時延時,端到端時延完全由“三明治”測量中的大數據包產生的,測量結果較為準確,推斷的網絡拓撲準確性最高;當網絡負載適中時,網絡中的背景流量較多,影響排隊時延的概率增大,而測量分組在共享鏈路中的時延變化較大,節點間共享鏈路的時延方差較大,時延協方差性能參數推斷的網絡拓撲準確性最高;當網絡負載較大時,網絡中丟包較多,丟包率較大,導致測量的樣本數量大大減少,使得時延協方差和排隊時延性能參數測量準確率下降,而采用成功傳輸率性能參數可以較好地反映節點間共享鏈路的情況。

因此,本文結合網絡負載情況推斷攻擊者使用的端到端性能參數類型。如果探測包的探測模式是“三明治”分組列車,那么攻擊者采用性能參數為排隊時延;如果探測包的探測模式是“背靠背”探測,需要網絡負載信息進行輔助判斷,如果網絡負載較輕,那么攻擊者采用性能參數是時延協方差,否則攻擊者采用性能參數是成功傳輸率。

本文為每種性能參數都設計了相應的混淆操作方案。以圖4 為例,假設在真實網絡中,攻擊者從源節點S發出一組探測包,分別到達目的節點i和目的節 點j,P(i,j)為節點i和節點j的父節 點。鏈 路(S→P(i,j))為節點i和節點j的共享路徑,XP,(i,j)為共享路徑的性能,Xi,(i,j)為鏈路(P(i,j) →i)的性能,Xj,(i,j)為鏈路(P(i,j) →j)的性能,Yi,(i,j)和Yj,(i,j)分別為攻擊者在目的節點i和目的節點j測量到的端到端性能。根據文獻[5]可以計算得到混淆網絡中節點i和節點j的相關性能為XP',(i,j),為了將真實網絡拓撲偽裝成混淆網絡拓撲,還需計算混淆網絡的端到端性能Yi',(i,j)和Yj',(i,j),將真實網絡的端到端性能Yi,(i,j)和Yj,(i,j)修改成混淆網絡的端到端性能Yi',(i,j)和Yj',(i,j),每種性能參數的混淆操作方案和計算過程如圖4 所示。

1)排隊時延

排隊時延由“三明治”測量包中的大數據包在經過節點和鏈路時產生,導致跟在其后的第2 個小數據包與第1 個小數據包到達目的節點的時間隔間變大。因此,排隊時延性能參數的混淆操作只需延遲“三明治”分組列車中的第2 個小數據包,延遲時間Dt為混淆網絡端到端時延Yi',(i,j)與真實網絡的端到端時延Yi,(i,j)的差:

需要說明的是,在實際的網絡操作中,增加探測包的時延和丟棄概率比減少探測包的時延和丟棄概率簡單得多,因此在與時延相關的性能參數混淆操作中,本文一律采取延遲探測包,在成功傳輸率性能參數的混淆操作中采取丟棄探測包。

2)時延協方差

節點i和節點j的時延協方差由“背靠背”探測方法測量的端到端時延計算得到,根據網絡層析成像中鏈路獨立性假設,節點對的端到端時延協方差為共享路徑時延的方差:

根據式(9)所示的協方差計算公式可以得到混淆網絡拓撲的端到端時延協方差計算公式,如式(10)所示:

在實際的網絡探測中,攻擊者會向每個節點對發送多個探測包組,以消除測量誤差。而根據文獻[6]計算混淆網絡的相關時延時,一個節點對通過計算只能得到唯一確定的相關時延XP′,(i,j),因此,將式(10)簡化為:

在已知XP',(i,j)和Xi,(i,j)的情況下求解Yi'(i,j)和Yj',(i,j),有無數多個解。時延協方差性能參數的每次混淆操作取其中一組滿足Yi',(i,j)≥Yi,(i,j),Yj',(i,j)≥Yj,(i,j)的解,根據解Yi',(i,j)和Yj',(i,j)同時延遲“背靠背”測量中的2 個探測包。到達目的節點i的探測包延遲時間Cov_delay(i)為:

3)成功傳輸率

成功傳輸率表示探測包在目的節點被成功接收的概率,節點i和節點j的共享給路徑越長,成功傳輸率越小。假設XP',(i,j)為混淆網絡中節點i和節點j在共享路徑(S→P(i,j))的成功傳輸率,Xi,(i,j)為鏈路(P(i,j) →j)的成功傳輸率,Xj,(i,j)為鏈路(P(i,j) →j)的成功傳輸率,那么混淆網絡的端到端成功傳輸率為:

成功傳輸率性能參數的混淆操作為以一定的概率丟棄探測包,到達目的節點i的探測包被丟棄的概率為:

綜上所述,在探測流量的混淆操作中,當攻擊者以排隊時延作為拓撲推斷的性能參數時,需要在目的節點i處的出口節點上延遲“三明治”分組列車中的第二個小探測包,延遲操作的具體實現是將探測包存入特殊的隊列中,延遲時間由式(7)計算得到;當攻擊者以時延協方差作為拓撲推斷的性能參數時,需要在目的節點i和節點j處的2 個出口節點上分別的對“背靠背”探測中的兩個探測包進行延遲,延遲時間由式(12)計算得到;當攻擊者以成功傳輸率作為拓撲推斷的性能參數時,需要在目的節點i和節點j處的2 個出口節點上以一定的概率丟棄探測包,丟包概率由式(14)計算得到。

4 實現與評估

4.1 原型系統實現

本文利用SDN 控制器可以對網絡轉發設備進行編程的特點,在SDN 環境中實現了M2NTO 的原型系統,其原型架構如圖5 所示。考慮到SDN 交換機的部署成本,M2NTO 只在入口節點和出口節點部署SDN 交換機。在入口SDN 交換機處監聽端節點發出的網絡流,在接入端口收到數據包后根據流表項中的動作進行操作,若沒有匹配的流表項則以Packet_in 的消息形式轉發至SDN 控制器。SDN 控制器對捕獲到的網絡流進行識別和分類,根據網絡層析探測包的類型制定相應的拓撲混淆策略,并通過下發流表項將混淆策略部署到出口SDN 交換機,出口SDN 交換機根據流表信息對探測包進行丟棄、延遲等混淆操作。

M2NTO 原型系統實現如圖6 所示。在控制層,使用RYU 控制器[20]進行數據包特征處理和探測包檢測,根據檢測結果制定相應的流表策略并下發到SDN 交換機。在數據層,使用Mininet 仿真軟件[21]實現網絡拓撲構建和數據包處理相關的任務,包括數據包捕獲和轉發等操作。

圖6 系統實現Fig.6 System implementation

RYU 控制器主要由3 個模塊組成:流量監聽器,流量檢測器,流表管理器。流量監聽器負責捕獲OpenFlow 交換機接收的數據包,并對數據包進行預處理,例如提取數據包的基本特征(如IP 地址、網絡服務、連接時間等)。流量檢測器負責對數據包進行分類,檢測模型設計為在線增量監督學習框架,分為離線訓練和在線更新兩部分,根據實時流量動態更新數據集和分類模型。流表管理器負責根據流量檢測結果設計流表項,將流表項下發給出口SDN 交換機。

4.2 性能評估分析

為評估防御系統的性能,本文基于Mininet 構建Internet Topology Zoo[22]中 的3 種真實 網絡拓 撲,分別代表小型網絡、中型網絡和大型網絡,其網絡拓撲信息如表4 所示。本文遵循樹結構進行網絡層析成像端到端測量,將拓撲中度數較低的節點(degree ≤2)視為端節點,并隨機選擇一個端節點作為源節點,其他端節點作為接收節點。隨后,計算源節點到每個目的節點的最短路徑,將所有最短路徑組成網絡層析成像探測網絡。由于目前沒有網絡層析成像測量的公開數據集,因此本文用Python 的scapy 模塊[23]生成網絡層析成像探測包,從源節點發送到各個目的節點。同時,通過運行不同的網絡應用程序來收集各種類型的網絡流,包括網頁瀏覽、文件傳輸、在線聊天和視頻流等,并將這些數據包作為實驗網絡的背景網絡流量進行重放,通過這種方式模擬真實的使用場景。

表4 網絡拓撲信息Table 4 Network topology information

作為經典的網絡層析成像拓撲推斷方法,RNJ算法[14]推斷準確率高、計算復雜度低,本文假設攻擊者使用RNJ 算法推斷目標網絡拓撲。實驗相關參數初始設置為λ=0.999 9、α=0.8、β=1.2、k=3,初始數據集的大小為1 000。本文在相同的實驗設置下重復執行了100 次評估實驗,并將其平均值作為最后的評估結果。

為了評估M2NTO 的流量檢測性能,在實驗中將M2NTO 與另外幾種經典分類算法進行了對比:

1)M2NTO:使用基于在線增量更新的動態決策樹算法對探測流量進行實時檢測與分類。

2)ProTo:使用增量更新的半監督KNN 算法檢測探測流量檢測,不對探測流量的類型進行分類,統一對探測流執行延遲的拓撲混淆操作。

3)No update:使用沒有在線增量更新的決策樹算法檢測流量。

4)Random Forest:使用隨機森林算法檢測探測流量,并對探測流量的測量模式進行分類。

5)SVM:使用SVM 算法檢測探測流量,并對探測流量的測量模式進行分類。

6)s-M2NTO:不進行兩步分類,直接使用增量更新的動態決策算法對網絡流進行多分類。

4.2.1 流量檢測性能評估

為評估M2NTO 在線流量檢測的性能,本文使用了以下3 個性能指標:

1)探測流檢測率:正確區分探測流和正常網絡流的概率,即分類正確的網絡流數量在所有網絡流數量中的所占比例。假設網絡流集D={(x1,y1),(x2,y2),…,(xn,yn)},其 中,x為網絡 流,y={'normal','prob'}為網絡流類別,yi='normal'表示網絡流xi的真實類別是正常網絡流。若yi'為第一棵決策樹對網絡流xi的分類結果,則探測流的檢測率為:

2)誤報率:正常網絡流被識別為探測流的概率,即被錯誤識別的正常網絡流數量占所有正常網絡流數量之比。錯誤識別的正常網絡流會視為探測流而被延遲或者丟棄,對網絡性能造成一定的影響。因此,在網絡層析成像流量檢測中應盡可能降低誤報率。誤報率的定義為:

3)探測流分類準確率:探測流的類型分類正確的概率,即探測流的類型分類正確的數量占所有探測流數量的比例。假設探測流數據集Dprob={(x1',z1),(x2',z2),…,(xm',zm)},其中,zi是探測流xi'的真實類別,第2 棵決策樹分類的結果為zi',則探測流量分類率為:

如圖7 所示,本文評估了在初始設置下不同流量檢測機制在不同規模的網絡中的檢測性能。由于ProTo 算法只能識別探測行為,探測流分類使用文本提出的動態決策樹機制進行分類。從圖中可看出,直接進行多分類的方法探測流識別準確率和分類正確率較低,誤報率較其他方法高,而增量更新決策樹算法的檢測率、誤報率和探測流分類準確率都要優于其他幾種流量檢測機制,在3 種不同規模的探測網絡中本文提出的增量更新決策樹流量檢測算法識別探測流的準確率都達到了98%,誤報率維持在2%左右,探測流分類準確率達到95%以上。實驗結果表明本文提出的網絡層析成像流量檢測機制能夠準確識別網絡層析成像探測模式,抵御攻擊者實施的基于網絡層析成像技術的網絡拓撲推斷。

圖7 流量檢測性能Fig.7 Traffic detection performance

初始訓練數據集的規模對流量檢測系統的性能有很大的影響,不同初始訓練集規模下的檢測性能如表5 所示。

表5 不同初始訓練集規模下的檢測性能Table 5 Detection performance under different initial training set sizes

由表5 可以看出,當初始訓練集規模從500 增加到3 000 時,不同規模的網絡中的探測流檢測率和探測流類型分類正確率都大幅提高,同時誤報率也有所下降。

決策樹根據節點密度的下限和上限值動態更新,枝剪節點密度低于下限的節點,分裂節點密度大于上限的節點。決策樹的復雜度和分類準確率與參數α和β有關,圖8 顯示了α和β取不同值時,隨著時間推移網絡流數量增加探測流檢測率、誤報率和探測流分類準確率的變化。實驗結果表明,流量檢測機制在線后,隨著網絡中流的數量增加,探測流的檢測率和分類準確率也隨之增大,誤報率隨之下降,并且檢測率和分類準確率呈現隨著α的增大和β的減小而增加的趨勢。然而,并不是β值越大越好,過度的生長會導致決策樹過于復雜,增加動態更新和分類過程的時間花銷。實時流量檢測系統要對準確率和實時性進行平衡,在保證高準確率的同時也能夠對實時到達的流進行快速分類,減少對網絡性能的影響。

圖8 參數α 和β 對檢測性能的影響Fig.8 Influence of parameters α and β on detection performance

此外,探測流是以塊為單位提取特征,探測流分類的準確率還與塊的大小即k值相關。圖9 展示了探測流分類準確率與k值的關系,在k=3 時探測流分類準確率最高。這是因為“三明治”探測是以3 個小包夾著一個大包的數據包組的方式進行探測,4 個探測流為一塊提取的特征更具代表性。

圖9 探測流分類準確率與k 值的關系Fig.9 Relation between classification accuracy of probe flow and the value of k

4.2.2 混淆效果評估

網絡拓撲混淆的目標是混淆攻擊者的測量結果使其推斷出虛假的網絡拓撲,攻擊者推斷的虛假拓撲與真實網絡拓撲之間的差距越大表示混淆效果越好,網絡拓撲混淆機制對抗網絡層析成像探測行為的有效性越高。樹編輯距離是衡量兩棵樹之間差異性的常用指標[24],表示通過替換、插入、刪除等編輯操作將一棵樹轉換為另一顆樹的成本。為了使評估更加直觀,本文使用相似度分數進行評估,其公式如下:

Ssimi的取值范圍為[0,1],TED(T')表示真實網絡拓撲T轉化為攻擊者推斷的虛假網絡拓撲T'之間的編輯成本,TED(T)表示從頭構建T所需的編輯成本,TED(T')表示從頭構建T'的編輯成本。真實網絡拓撲與攻擊者推斷的虛假拓撲相似度越大,Ssimi的值越大,當兩個網絡拓撲完全相同時,Ssimi=1。

由于攻擊者在用網絡層析成像技術進行拓撲探測時,會根據網絡負載情況調整探測模式并選擇不同的網絡性能指標作為端到端性能參數,因此,本文比較了當網絡負載不同時,ProTo 拓撲混淆機制、AntiTomo 拓撲混淆機制和本文所提出的拓撲混淆機制在3 個不同規模的網絡拓撲中的混淆效果。

實驗結果如圖10 所示,在網絡沒有任何防護措施時,攻擊者推斷的網絡拓撲與真實網絡拓撲的相似度較大。ProTo 和AntiTomo 只有在網絡負載較低時才能降低攻擊推斷的網絡拓撲與真實網絡拓撲的相似性,混淆效果隨著網絡負載增加而變差,而M2NTO 在網絡負載較小、網絡負載適中和網絡負載較大的情況下都能顯著降低攻擊者推斷的網絡拓撲與真實網絡拓撲的相似性。這是因為AntiTomo 和ProTo 都只通過增加探測包的排隊時延來混淆探測包的測量結果,而排隊時延由“三明治”分組列車方法測量得到,但“三明治”分組列車測量方法只有在網絡負載較小的時候測量結果較為準確,隨著網絡負載增大,出現鏈路擁塞的概率加大,探測包的排隊時延會受到鏈路擁塞的影響,測量的準確降低,導致混淆效果變差,并且網絡負載發生變化,攻擊者可能會采用其他測量方法和其他性能指標,AntiTomo 不識別網絡層析成像探測包,ProTo 沒有對探測包的測量方法進行分類,兩者都感知不到攻擊者探測策略的變換。而M2NTO 不僅識別探測包的測量方法類型,還會根據網絡負載變化調整混淆操作,可以有效對抗基于網絡層析成像的拓撲推斷。

圖10 拓撲混淆性能對比Fig.10 Topology obfuscation performance comparison

4.2.3 實時性評估

在線分類對實時性有很高的要求,實時性的要求包含兩個方面:快速的線上檢測和快速的模型更新。為評估本文提出的網絡層析成像流量檢測機制的實時 性,本文在8 核2.30 GHz Intel?CoreTMi7-10875H CPU 和16 GB RAM 的電腦上,測試了在不同數據集規模中動態決策樹模型更新和網絡層析成像探測流檢測與分類所消耗的平均時長,如圖11 所示。模型更新和探測流實時檢測分類的平均時長隨著數據集規模增大而增加,在數據集規模為5 000時,識別探測流的平均時長約為2.4 ms,模型更新時間為1.5 ms,這說明探測流量檢測機制可以在極短的時間內識別探測流,從而適應高速網絡流環境。

圖11 探測流檢測與模型更新效率Fig.11 Efficiency of probe flow detection and model update

5 結束語

作為一種典型的網絡偵察方法,攻擊者使用網絡層析成像技術可以準確推斷目標網絡拓撲結構,精準攻擊網絡中的關鍵鏈路和關鍵節點。為了對抗基于網絡層析成像的拓撲推斷,本文提出了對抗多模式網絡層析成像的拓撲混淆機制M2NTO。M2NTO 的主要思想是使用增量更新的動態決策樹算法識別攻擊者的多樣化探測行為,在此基礎上根據測量方法類型和網絡負載情況判斷攻擊者進行網絡層析成像拓撲推斷使用的網絡性能參數,再對探測包進行相應的混淆操作,從而使攻擊者得到錯誤的測量結果,推斷出虛假的網絡拓撲。最后,利用SDN 技術實現了M2NTO 的原型系統,并在幾種不同規模的網絡中進行了仿真實驗。實驗結果顯示,M2NTO 能夠以較高的準確率和實時性識別網絡層析成像探測包和探測模式,在不同網絡負載情況下也能達到較好的混淆效果。在下一步的工作中,作者將進一步優化探測流量檢測算法,并結合多源混淆拓撲生成算法繼續擴展M2NTO,提升混淆效果。

猜你喜歡
分類
2021年本刊分類總目錄
分類算一算
垃圾分類的困惑你有嗎
大眾健康(2021年6期)2021-06-08 19:30:06
星星的分類
我給資源分分類
垃圾分類,你準備好了嗎
學生天地(2019年32期)2019-08-25 08:55:22
分類討論求坐標
數據分析中的分類討論
按需分類
教你一招:數的分類
主站蜘蛛池模板: 亚洲国产欧美国产综合久久| 亚洲一级毛片免费看| 国产在线观看91精品亚瑟| 91精品福利自产拍在线观看| 欧美日韩国产精品va| 午夜欧美理论2019理论| 久久 午夜福利 张柏芝| 91精品国产综合久久香蕉922| 色欲色欲久久综合网| 国产成人a在线观看视频| 性视频一区| 久久中文字幕不卡一二区| 91福利一区二区三区| 国产精品蜜芽在线观看| 国产综合亚洲欧洲区精品无码| 在线免费观看AV| 国产国语一级毛片在线视频| 午夜a级毛片| 亚洲美女一区| 欧美在线综合视频| 午夜啪啪网| 在线无码九区| 久久香蕉国产线看精品| 天堂在线亚洲| 色婷婷视频在线| 成人在线不卡| 日韩在线欧美在线| 老汉色老汉首页a亚洲| 天天色天天综合网| 国产成人综合在线观看| 亚洲欧美一区二区三区麻豆| 日韩欧美国产中文| 国产精品久线在线观看| 欧洲高清无码在线| a级毛片毛片免费观看久潮| 日本免费精品| 欧美日韩福利| 国产精品第三页在线看| 欧美一级特黄aaaaaa在线看片| 91无码视频在线观看| 欧美一区二区精品久久久| 国产精品视频久| 国产精品太粉嫩高中在线观看 | 欧美笫一页| 国产综合日韩另类一区二区| 亚洲国产成人综合精品2020| 在线精品自拍| 精品色综合| 91www在线观看| 日韩欧美中文在线| 99激情网| 国产美女无遮挡免费视频| 五月婷婷综合网| 丝袜国产一区| 精品一区二区无码av| 欧美另类视频一区二区三区| 国产特一级毛片| 欧美www在线观看| 久久精品国产精品国产一区| 欧美乱妇高清无乱码免费| 国产好痛疼轻点好爽的视频| 国产美女精品一区二区| 日韩AV无码免费一二三区| 国产视频入口| 无码专区第一页| 99热这里只有免费国产精品| 韩国福利一区| 不卡无码网| 午夜毛片福利| 色婷婷在线影院| 亚洲精品手机在线| 高清欧美性猛交XXXX黑人猛交| 三上悠亚在线精品二区| 亚洲欧美另类视频| 香蕉久久国产超碰青草| 香蕉久久永久视频| 在线国产欧美| 免费人成黄页在线观看国产| 精品伊人久久久大香线蕉欧美| 不卡无码网| 极品国产在线| 亚洲国产综合自在线另类|