潘吳斌,程光,郭曉軍,黃順翔
(1. 東南大學(xué)計算機(jī)科學(xué)與工程學(xué)院,江蘇 南京 210096;2. 東南大學(xué)計算機(jī)網(wǎng)絡(luò)和信息集成教育部重點實驗室,江蘇 南京 210096)
網(wǎng)絡(luò)加密流量識別研究綜述及展望
潘吳斌1,2,程光1,2,郭曉軍1,2,黃順翔1,2
(1. 東南大學(xué)計算機(jī)科學(xué)與工程學(xué)院,江蘇 南京 210096;2. 東南大學(xué)計算機(jī)網(wǎng)絡(luò)和信息集成教育部重點實驗室,江蘇 南京 210096)
鑒于加密流量識別技術(shù)的重要性和已有相關(guān)研究工作,首先根據(jù)流量分析需求的層次介紹了加密流量識別的類型,如協(xié)議、應(yīng)用和服務(wù)。其次,概述已有加密流量識別技術(shù),并從多個角度進(jìn)行分析對比。最后,歸納現(xiàn)有加密流量識別研究存在的不足及影響當(dāng)前加密流量識別的因素,如隧道技術(shù)、流量偽裝技術(shù)、新型協(xié)議HTTP/2.0和QUIC等,并對加密流量識別趨勢及未來研究方向進(jìn)行展望。
加密流量識別;網(wǎng)絡(luò)管理;流量工程;流量偽裝;HTTP/2.0
流量識別是提升網(wǎng)絡(luò)管理水平、改善服務(wù)質(zhì)量(QoS)的基礎(chǔ)[1]。自“棱鏡”監(jiān)控項目曝光后,全球的加密網(wǎng)絡(luò)流量不斷飆升。Sandvine報告顯示2015年4月北美的加密流量達(dá)到29.1%,加密互聯(lián)網(wǎng)訪問流量同比上一年增長了3倍。當(dāng)前加密流量快速增長存在多方面原因:1) 用戶隱私保護(hù)和網(wǎng)絡(luò)安全意識的增強,安全套接字層(SSL)、安全外殼協(xié)議(SSH)、虛擬專用網(wǎng)(VPN)和匿名通信(如Tor[2])等技術(shù)廣泛應(yīng)用,以滿足用戶網(wǎng)絡(luò)安全需求;2) 網(wǎng)絡(luò)服務(wù)提供商(ISP)對 P2P應(yīng)用[3]的肆意封堵以及一些公司對即時通信(IM)和流媒體 (如YouTube[4])等應(yīng)用的限制,越來越多的應(yīng)用使用加密和隧道技術(shù)應(yīng)對DPI(deep packet inspection)技術(shù),以突破這些限制;3) 加密協(xié)議良好的兼容性和可擴(kuò)展性[5],采用加密技術(shù)變得越來越簡單,如現(xiàn)有的Web應(yīng)用可以無縫地遷移到HTTPS,且SSL協(xié)議除了能跟HTTP搭配,還能跟其他應(yīng)用層協(xié)議搭配(如FTP、SMTP、POP),以提高這些應(yīng)用層協(xié)議的安全性;4) 采用 HTTPS加密協(xié)議有利于搜索引擎排名,谷歌把是否使用安全加密協(xié)議HTTPS作為搜索引擎排名的一項參考因素[6],同等情況下,HTTPS站點能比HTTP站點獲得更好的搜索排名。
文獻(xiàn)[7~9]綜述了當(dāng)前流量識別的研究進(jìn)展,雖然取得了不少研究成果,但這些成果大多針對非加密流量識別研究。實際流量識別過程中,加密流量識別與非加密流量識別存在不少差異,主要表現(xiàn)為:1) 由于加密后流量特征發(fā)生了較大變化,部分非加密流量識別方法很難適用于加密流量,如DPI方法[10];2) 加密協(xié)議常伴隨著流量偽裝技術(shù)(如協(xié)議混淆和協(xié)議變種[11]),把流量特征變換成常見應(yīng)用的流量特征;3) 由于加密協(xié)議的加密方式和封裝格式也存在較大的差異,識別特定的加密協(xié)議需要采用針對性的識別方法,或采用多種識別策略集成的方法;4) 當(dāng)前加密流量識別研究成果主要集中在特定加密應(yīng)用的識別,實現(xiàn)加密應(yīng)用精細(xì)化識別還存在一定的難度[12];5) 惡意應(yīng)用常采用加密技術(shù)來隱藏,惡意流量的有效識別事關(guān)網(wǎng)絡(luò)安全。由于缺乏有效的加密流量分析和管理技術(shù),給網(wǎng)絡(luò)管理與安全帶來巨大的挑戰(zhàn),主要表現(xiàn)在以下幾個方面。
第一,流量分析和網(wǎng)絡(luò)管理需要精細(xì)化識別加密流量[13]。大多數(shù)公司工作時間不允許玩游戲、觀看視頻和刷微博等娛樂活動。然而,一些員工通過使用加密和隧道技術(shù)突破限制。因此,有必要知道加密和隧道協(xié)議下運行的具體應(yīng)用。另外,SSL協(xié)議下運行著各種以Web訪問為基礎(chǔ)的應(yīng)用,協(xié)議下具體運行的應(yīng)用需要精細(xì)化識別(fine-grained identification),如網(wǎng)頁瀏覽、銀行業(yè)務(wù)、視頻或社交網(wǎng)絡(luò)SNS。
第二,加密流量實時識別。加密流量識別不僅要識別出具體的應(yīng)用或服務(wù),還應(yīng)該具有較好的時效性[14]。比如P2P下載和流媒體,實時識別后ISP可以提高流媒體的優(yōu)先級,同時降低P2P下載的優(yōu)先級。
第三,加密通道嚴(yán)重威脅信息安全。惡意軟件通過加密和隧道技術(shù)繞過防火墻和入侵檢測系統(tǒng)[15]將機(jī)密信息發(fā)送到外網(wǎng),如僵尸網(wǎng)絡(luò)[16]、木馬和高級持續(xù)性威脅(APT)[17]。
目前,加密流量識別主要采用準(zhǔn)確性相關(guān)指標(biāo)來進(jìn)行評估,該指標(biāo)相對單一,為了滿足不斷提高的流量分析要求,在原理評估指標(biāo)基礎(chǔ)上,引入兼容性、穩(wěn)健性、完整性和方向性指標(biāo)全面、持續(xù)地評估加密流量識別技術(shù)。下面詳細(xì)介紹加密流量識別的評估指標(biāo)。
1) 準(zhǔn)確性
準(zhǔn)確性反映流量識別技術(shù)識別網(wǎng)絡(luò)應(yīng)用的能力。
假設(shè)N為流量樣本數(shù),m為應(yīng)用類型數(shù),nij表示實際類型為i的應(yīng)用被標(biāo)記為類型j的樣本數(shù)。真正(TP, true positive)代表實際類型為i的樣本中被正確標(biāo)記的樣本數(shù),假正(FP, false positive)代表實際類型為非i的樣本中被誤標(biāo)識為類型i的樣本數(shù)查準(zhǔn)率定義為
假負(fù)(FN, false negative)代表實際類型為i的樣本中被誤標(biāo)識為其他類型的樣本數(shù)真負(fù)(TN, true negative)代表實際類型為非i的樣本中被標(biāo)識為非 i的樣本數(shù)查全率定義為
查準(zhǔn)率和查全率體現(xiàn)了識別方法在每個單獨協(xié)議類別上的識別效果。特別是當(dāng)樣本類別分布不均勻時,查全率和查準(zhǔn)率可以準(zhǔn)確獲知每個類別的分類情況。準(zhǔn)確率體現(xiàn)了識別方法的總體識別性能,好的算法應(yīng)該同時具有較高的準(zhǔn)確率、查準(zhǔn)率和查全率。準(zhǔn)確率定義為
F-Measure是綜合查準(zhǔn)率和查全率得到的評價指標(biāo),F(xiàn)-Measure越高表明算法在各個類型的分類性能越好。
2) 完整性
完整性反映了識別方法的識別覆蓋率。完整性是指被標(biāo)識為i的樣本與實際類型為i的樣本的比值,相當(dāng)于查準(zhǔn)率和查全率的比值,取值范圍可能超過1。完整性定義為
3) 未識別率
未識別率反映流量識別工具對未知流量類型的識別能力。未識別率是指不屬于已知流量類型的流量占總流量的比率。Ftotal表示流量的總字節(jié)數(shù)或流數(shù),表示被識別流量的字節(jié)數(shù)或流數(shù)。
4) 兼容性
兼容性反映流量識別工具用于不同網(wǎng)絡(luò)環(huán)境的識別能力。兼容性表示流量識別技術(shù)用于不同網(wǎng)絡(luò)環(huán)境的識別能力。accj表示在網(wǎng)絡(luò)環(huán)境j的準(zhǔn)確率,表示平均準(zhǔn)確率。
5) 穩(wěn)健性
穩(wěn)健性反映流量識別工具長時間維持高識別性能的能力。穩(wěn)健性表示流量識別技術(shù)長時間維持高識別率的能力。acck表示時間段k的準(zhǔn)確率,acc0表示初始準(zhǔn)確率。
6) 其他評估指標(biāo)
另外,一些評估指標(biāo)進(jìn)行量化還存在一些問題,如實時性、方向性和計算復(fù)雜性。
實時性反映流量識別方法可以在線、快速地識別網(wǎng)絡(luò)應(yīng)用的能力。為了及時識別應(yīng)用,可以根據(jù)部分?jǐn)?shù)據(jù)分組的特征進(jìn)行識別,無需等到整條流結(jié)束。實時性主要采用流的前若干個分組來體現(xiàn)。
方向性反映流量識別方法對于不同流傳輸方向的識別能力。IP流可以分為單向流和雙向流,單向流根據(jù)傳輸方向可以分為上行流和下行流,假如第一個數(shù)據(jù)分組產(chǎn)生分組丟失,無法判斷上行和下行方向。方向性可以采用單向流(上行流、下行流)或雙向流來體現(xiàn)。
計算復(fù)雜性反映流量識別方法準(zhǔn)確識別網(wǎng)絡(luò)應(yīng)用所需的開銷。復(fù)雜的識別特征需要耗費大量的存儲空間和計算能力,嚴(yán)重影響骨干網(wǎng)的流量分析。計算復(fù)雜性可以采用時間和空間復(fù)雜度來體現(xiàn)。
廣義上來說,加密流量是由加密算法生成的流量。實際上,加密流量主要是指在通信過程中所傳送的被加密過的實際明文內(nèi)容。若用明文HTTP協(xié)議下載一個加密文件,這種流量不能作為加密流量,因為協(xié)議本身是不加密的。近年來,加密流量識別研究取得了一些成果[18],加密流量識別的首要任務(wù)是根據(jù)應(yīng)用需求確定識別對象及識別的類型,再根據(jù)識別需求選用合適的識別方法,加密流量識別方法主要可以分為6類:基于有效負(fù)載檢測的分類方法、基于負(fù)載隨機(jī)性的方法、基于數(shù)據(jù)分組分布的分類方法、基于機(jī)器學(xué)習(xí)的方法、基于主機(jī)行為的分類方法和多種策略相結(jié)合的混合方法[19]。加密流量識別研究內(nèi)容框架如圖1所示。
加密流量識別對象是指識別的輸入形式,包括流級、分組級、主機(jī)級和會話級,根據(jù)流量識別的應(yīng)用需求確定相應(yīng)的識別對象,其中,流級和分組級對象使用最廣泛,具體描述如下。
流級主要關(guān)注流的特征及到達(dá)過程,IP流根據(jù)傳輸方向可以分為單向流和雙向流。單向流的分組來自同一方向;雙向流包含來自2個方向的分組,該連接不一定正常結(jié)束,如流超時。有時雙向流要求兩主機(jī)之間從發(fā)出 SYN分組開始到第一個 FIN分組結(jié)束的完整連接。流級特征包括流持續(xù)時間、流字節(jié)數(shù)等。
分組級主要關(guān)注數(shù)據(jù)分組的特征及到達(dá)過程,分組級特征主要有分組大小分布、分組到達(dá)時間間隔分布等。
主機(jī)級主要關(guān)注主機(jī)間的連接模式,如與主機(jī)通信的所有流量,或與主機(jī)的某個IP和端口通信的所有流量,主機(jī)級特征包括連接度、端口數(shù)等。
圖1 加密流量識別研究內(nèi)容
會話級主要關(guān)注會話的特征及到達(dá)過程,如響應(yīng)視頻請求的數(shù)據(jù)量較大、針對一個請求會分多個會話傳輸、會話級特征包括會話字節(jié)數(shù)和會話持續(xù)時間等。
加密流量識別的類型是指識別結(jié)果的輸出形式,根據(jù)流量識別的應(yīng)用需求確定識別的類型,加密流量可以從協(xié)議、應(yīng)用、服務(wù)等屬性逐步精細(xì)化識別,最終實現(xiàn)協(xié)議識別、應(yīng)用識別、異常流量識別及內(nèi)容本質(zhì)識別等,具體描述如下。
1) 加密與未加密流量,識別出哪些流量屬于加密的,剩余則是未加密的。
2) 協(xié)議識別就是識別加密流量所采用的加密協(xié)議,如SSL、SSH、IPSec。
3) 應(yīng)用識別就是識別流量所屬的應(yīng)用程序,如Skype、BitTorrent和YouTube。這些應(yīng)用還可以進(jìn)一步精細(xì)化分類,如Skype可以分為即時消息、語音通話、視頻通話和文件傳輸[20]。
4) 服務(wù)識別就是識別加密流量所屬的服務(wù)類型,如網(wǎng)頁瀏覽(Web browning)、流媒體(streaming media)、即時通信和云存儲。
5) 網(wǎng)頁識別就是識別HTTPS協(xié)議下的網(wǎng)頁瀏覽,如百度、淘寶或中國銀行等。
6) 異常流量識別就是識別出 DDoS、APT、Botnet等惡意流量。
7) 內(nèi)容本質(zhì)識別就是對應(yīng)用流量從內(nèi)容信息上進(jìn)一步分類,如YouTube視頻清晰度、音頻編碼格式,該識別主要用來增加識別透明度。
從以上識別的類型來看,有些流量可能屬于一個或多個類型。如BitTorrent使用BitTorrent協(xié)議作為BitTorrent網(wǎng)絡(luò)的應(yīng)用程序,YouTube應(yīng)用程序產(chǎn)生的流量又屬于流媒體服務(wù)。不同類型的分類表示信息的側(cè)重點不同,因此,流量標(biāo)簽常用于表示不同的類型。下面從加密流量識別的應(yīng)用需求和識別目標(biāo)角度詳細(xì)描述上述識別類型。
3.2.1 加密與未加密流量識別
加密流量識別的首要工作是將加密流量與未加密流量區(qū)分,一方面,可以分別采用不同的分類策略逐步實現(xiàn)精細(xì)化識別,另一方面,防止加密應(yīng)用或服務(wù)誤識別為非加密流量。另外,一些惡意軟件通過加密技術(shù)繞過防火墻和入侵檢測系統(tǒng),識別加密流量是異常流量檢測的首要任務(wù)。文獻(xiàn)[21]提出了一種加密流量實時識別方法 RT-ETD,分類器只需要處理每條流中的第一個數(shù)據(jù)分組,通過第一個數(shù)據(jù)分組的有效載荷的熵估計就能實時識別加密與未加密流量。實驗結(jié)果表明該方法識別加密流量的準(zhǔn)確率超過94%,加密流量包括Skype和加密eDonkey,未加密流量的識別準(zhǔn)確率高于 99.9%,流量包括SMTP、HTTP、POP3和FTP,因此,該方法可以有效應(yīng)用于高速網(wǎng)絡(luò)的加密流量識別。
3.2.2 加密協(xié)議識別
加密協(xié)議識別由于各協(xié)議封裝格式不同需要了解協(xié)議的交互過程[22],找出交互過程中的可用于區(qū)分不同應(yīng)用的特征及規(guī)律,才有可能總結(jié)出網(wǎng)絡(luò)流量中各應(yīng)用協(xié)議的最佳特征屬性[23],最終為提高總體流識別的粒度與精度奠定基礎(chǔ)。加密協(xié)議交互過程大體可以分為2個階段,第一階段是建立安全連接,包括握手、認(rèn)證和密匙交換,在這過程中通信雙方協(xié)商支持的加密算法,互相認(rèn)證并生成密匙;第二階段采用第一階段產(chǎn)生的密匙加密傳輸數(shù)據(jù),如圖2所示。然后,在分析加密協(xié)議交互和封裝的基礎(chǔ)上,詳細(xì)描述3種主流加密協(xié)議(IPSec、SSH和SSL)的識別。
圖2 加密協(xié)議一般流程
1) IPSec安全協(xié)議
IPsec協(xié)議是一組確保IP層通信安全的協(xié)議棧[24],保護(hù) TCP/IP通信免遭竊聽和篡改以及數(shù)據(jù)的完整性和機(jī)密性。IPSec協(xié)議主要包括網(wǎng)絡(luò)認(rèn)證協(xié)議AH(認(rèn)證頭)、ESP(封裝安全載荷)和IKE(密匙交換協(xié)議)。AH協(xié)議為IP數(shù)據(jù)分組提供數(shù)據(jù)完整性保證、數(shù)據(jù)源身份認(rèn)證和防重放攻擊;ESP協(xié)議包括加密和可選認(rèn)證的應(yīng)用方法,除了提供AH已有的服務(wù),還提供數(shù)據(jù)分組和數(shù)據(jù)流加密以保證數(shù)據(jù)機(jī)密性。IPsec有隧道和傳輸2種模式,隧道模式中整個IP數(shù)據(jù)分組被用來計算AH/ESP頭,AH/ESP頭以及ESP加密的數(shù)據(jù)被封裝在一個新的IP數(shù)據(jù)分組中,數(shù)據(jù)封裝格式如圖3所示。
圖3 IPsec安全協(xié)議隧道模式的數(shù)據(jù)封裝格式
由于高實時性應(yīng)用(如 VoIP和視頻)需要根據(jù)識別結(jié)果繼而提高優(yōu)先級,使流量識別的實時性變得極為重要。由于隧道和加密技術(shù)的應(yīng)用,基于報頭和負(fù)載檢測的方法無法提供足夠的信息來識別應(yīng)用類型。文獻(xiàn)[25]提出一種基于流統(tǒng)計行為的方法可以快速識別IPSec隧道下的VoIP流量,根據(jù)VoIP應(yīng)用的實時性傳輸需求,介于60~150 byte的數(shù)據(jù)分組較多,實驗結(jié)果顯示該方法可以有效識別IPSec隧道中的VoIP流量并阻止非VoIP流量,從而改善VoIP應(yīng)用的服務(wù)質(zhì)量。
2) SSL/TLS安全協(xié)議
SSL安全套接層協(xié)議提供應(yīng)用層和傳輸層之間的數(shù)據(jù)安全性機(jī)制[26],在客戶端和服務(wù)器之間建立安全通道,對數(shù)據(jù)進(jìn)行加密和隱藏,確保數(shù)據(jù)在傳輸過程中不被改變。SSL協(xié)議在應(yīng)用層協(xié)議通信之前就已經(jīng)完成加密算法和密鑰的協(xié)商,在此之后所傳送的數(shù)據(jù)都會被加密,從而保證通信的私密性。SSL協(xié)議可以分為2層,上層為SSL握手協(xié)議、SSL改變密碼規(guī)則協(xié)議和SSL警告協(xié)議;底層為SSL記錄協(xié)議,SSL協(xié)議分層及數(shù)據(jù)封裝如圖4所示。
圖4 SSL安全協(xié)議數(shù)據(jù)封裝格式
SSL加密協(xié)議因其良好的易用性和兼容性被廣泛應(yīng)用。文獻(xiàn)[27]提出一種針對SSL加密應(yīng)用的識別方法,通過前幾個數(shù)據(jù)分組的大小實現(xiàn)SSL流量的早期識別。該方法首先分析SSL協(xié)議握手期間的報文,根據(jù)每個SSL記錄開始時發(fā)送的未加密SSL頭部的SSL配置選項以驗證連接是否使用SSL協(xié)議并確定協(xié)議版本,在SSLv2協(xié)議頭部的前2位總是1和0,后跟14位是SSL記錄的大小,第3個字節(jié)是消息類型(1為“客戶端 Hello”,2為“服務(wù)器Hello”)。SSLv3.0或TLS協(xié)議的第1個字節(jié)是內(nèi)容類型(22為“記錄配置”,23為“有效載荷”),第2和第3個字節(jié)表示主要和次要版本(3和0代表SSLv3.0,1代表TLS),實驗結(jié)果表明該方法可以達(dá)到85%的識別準(zhǔn)確率。
3) SSH加密協(xié)議
SSH安全外殼協(xié)議是一種在不安全網(wǎng)絡(luò)上提供安全遠(yuǎn)程登錄及其他安全網(wǎng)絡(luò)服務(wù)的協(xié)議[28]。SSH在通信雙方之間建立加密通道,保證傳輸?shù)臄?shù)據(jù)不被竊聽,并使用密鑰交換算法保證密鑰本身的安全。SSH協(xié)議包括傳輸層協(xié)議、用戶認(rèn)證協(xié)議和連接協(xié)議。傳輸層協(xié)議用于協(xié)商和數(shù)據(jù)處理,提供服務(wù)器認(rèn)證,數(shù)據(jù)機(jī)密性和完整性保護(hù);用戶認(rèn)證協(xié)議規(guī)定了服務(wù)器認(rèn)證的流程和報文內(nèi)容;連接協(xié)議將加密的安全通道復(fù)用成多個邏輯通道,高層應(yīng)用通過連接協(xié)議使用SSH的安全機(jī)制,SSH協(xié)議分層及數(shù)據(jù)封裝如圖5所示。
圖5 SSH安全協(xié)議數(shù)據(jù)封裝格式
為了實現(xiàn)不同服務(wù)流量(如VoIP、Video、ERP)的有效管理,快速準(zhǔn)確地識別服務(wù)類型極其重要。文獻(xiàn)[29]提出一種 SSH實時識別方法,首先通過SSH連接的第一個數(shù)據(jù)分組的統(tǒng)計特征(如到達(dá)時間、方向和長度)識別出 SSH協(xié)議流量,然后通過k-means聚類分析前4個數(shù)據(jù)分組的統(tǒng)計特征識別SSH協(xié)議承載的應(yīng)用(如SCP、SFTP和HTTP)。實驗結(jié)果表明,該方法 SSH流量的識別準(zhǔn)確率達(dá)到99.2%,同時,SSH協(xié)議下應(yīng)用的識別準(zhǔn)確率達(dá)到99.8%。
3.2.3 服務(wù)識別
服務(wù)識別就是識別加密流量所屬的應(yīng)用類型,屬于Video Streaming的應(yīng)用有YouTube、Netflix、Hulu和Youku等,屬于SNS的應(yīng)用有Facebook、Twitter和 Weibo等,屬于 P2P的應(yīng)用有 Skype、BitTorrent和 PPlive等。此外,具體應(yīng)用還可以進(jìn)一步精細(xì)化識別,如Skype可以分為即時消息、語音通話、視頻通話和文件傳輸。
隨著P2P應(yīng)用的不斷發(fā)展,P2P流量占據(jù)了當(dāng)今互聯(lián)網(wǎng)流量較大的份額,而且P2P應(yīng)用大都使用混淆技術(shù),如動態(tài)端口號、端口跳變、HTTP偽裝和負(fù)載加密,因此,為了實現(xiàn)更好的P2P流量管控,需要有效的 P2P流量識別方法。文獻(xiàn)[30]比較了 3種P2P流量識別方法,包括基于端口、應(yīng)用層簽名和流統(tǒng)計特征識別方法。實驗結(jié)果表明基于端口的方法無法識別 30%~70%的流量,應(yīng)用層簽名方法準(zhǔn)確性較高,但可能因法律或技術(shù)原因無法使用,而流統(tǒng)計特征識別方法可以達(dá)到 70%的識別率。BitTorrent是常用的P2P應(yīng)用,占P2P流量相當(dāng)大的比例,文獻(xiàn)[31]使用統(tǒng)計分析方法識別BitTorrent流量與其他類型的流量(如類似功能的 FTP),實驗結(jié)果表明該方法可以有效地實時識別BitTorrent流量。Skype由于出色的聲音質(zhì)量和易用性被看作最好的 VoIP軟件,引起了研究界和網(wǎng)絡(luò)運營商的廣泛關(guān)注。由于Skype應(yīng)用封閉源代碼無法獲知協(xié)議和算法,且強大的加密機(jī)制使識別難度較大。文獻(xiàn)[32]提出了一種名為 Skype-hunter的方法實時識別Skype流量,該方法通過基于簽名和流統(tǒng)計特征相結(jié)合的策略能夠有效識別信令業(yè)務(wù)以及數(shù)據(jù)業(yè)務(wù)(如語音、視頻和文件傳輸)。
當(dāng)前,P2P-TV應(yīng)用無論用戶數(shù)還是所產(chǎn)生的流量都是互聯(lián)網(wǎng)上增長最快的,實現(xiàn)在互聯(lián)網(wǎng)上以較低的費用實時觀看電視節(jié)目。由于大部分P2P-TV應(yīng)用是基于專有或未知的協(xié)議,使P2P-TV流量識別難度大。文獻(xiàn)[33, 34]提出一種識別P2P-TV應(yīng)用的新方法,該方法根據(jù)較小的時間窗與其他主機(jī)交換的數(shù)據(jù)分組數(shù)和字節(jié)特征,這2種特征包含了應(yīng)用和內(nèi)部運作多方面的信息,如信令行為和視頻塊大小,該方法采用支持向量機(jī)算法可以準(zhǔn)確地識別P2P-TV應(yīng)用,再通過簡單計算數(shù)據(jù)分組數(shù)量還可以精細(xì)化識別P2P-TV應(yīng)用(如PPLive、SopCast、TVAnts和Joost),最終,數(shù)據(jù)分組和字節(jié)準(zhǔn)確率均高于81%。
3.2.4 異常流量識別
雖然研究已經(jīng)表明基于信息熵的方法在異常檢測中可以取得較好的性能,但還未有研究采用熵檢測與流量分布相結(jié)合的方法。文獻(xiàn)[35]提出一種根據(jù)流頭部特征(IP地址、端口和流字節(jié)數(shù))和行為特征(測量與每個主機(jī)通信的目的/源 IP數(shù)量的度分布)分布相結(jié)合的方法,發(fā)現(xiàn)地址和端口分布的熵值相關(guān)性強,異常檢測能力非常相似;行為和流字節(jié)數(shù)分布不太相關(guān),可以檢測出根據(jù)端口和地址分布無法檢測的異常流量,實驗結(jié)果表明端口和地址分布在檢測掃描和泛洪異常能力有限,而基于熵的異常檢測方法具有較好的識別性能。Lakhina等[36]采用數(shù)據(jù)分組的特征(IP地址和端口)分布對大范圍異常流量進(jìn)行檢測和識別,基于熵的識別方法可以非常靈敏地檢測到大范圍異常流量,還可以通過無監(jiān)督學(xué)習(xí)自動識別異常流量。實驗結(jié)果表明聚類方法可以有效地將正常流量和異常流量分為不同的集群,可以用來發(fā)現(xiàn)新的異常流量。Soule等[37]提出一種采用基于流量矩陣的方法識別異常流量,首先采用卡爾曼過濾器識別出正常流量,然后采用 4種不同方法(閾值、方差分析、小波變換和廣義似然比)識別異常流量。實驗結(jié)果的ROC曲線表明這些方法可以較好地實現(xiàn)誤報和漏報的平衡。
3.2.5 內(nèi)容本質(zhì)識別
內(nèi)容本質(zhì)識別就是對加密應(yīng)用流量從內(nèi)容本質(zhì)上進(jìn)一步識別,如視頻清晰度、圖片格式。文獻(xiàn)[38]首次提出一種內(nèi)容本質(zhì)的識別方法 Iustitia,基本思路是統(tǒng)計特定數(shù)量的連續(xù)字節(jié)的熵,再采用機(jī)器學(xué)習(xí)方法進(jìn)行識別。首先,基于文本流熵值最低,加密流熵值最高,以及二進(jìn)制流熵值處于中間的特性,實現(xiàn)文本流,二進(jìn)制流和加密流的實時識別。然后,進(jìn)一步擴(kuò)展Iustitia方法實現(xiàn)二進(jìn)制流的精細(xì)化識別,區(qū)分不同類型的二進(jìn)制流(如圖像、視頻和可執(zhí)行文件),甚至可以識別二進(jìn)制流傳輸?shù)奈募愋停ㄈ鏙PEG和GIF圖像、MPEG和AVI視頻)。實驗使用 1 KB大小緩存的識別精度可以達(dá)到88.27%,且91.2%的流的識別時間不超過10%的分組到達(dá)時間間隔,表明該方法具有較高的識別效果和效率。
雖然傳統(tǒng)流量識別研究取得了不少成果[39,40],但有些識別方法很難適用于加密流量,加密流量識別的前提是針對不同的應(yīng)用或協(xié)議有明顯的區(qū)分特征。加密流量識別和未加密流量識別的本質(zhì)區(qū)別在于由于加密使用于區(qū)分的特征發(fā)生了改變,流量加密后的變化可以概括如下:1) IP報文的明文內(nèi)容變?yōu)槊芪模?) 流量加密后負(fù)載的統(tǒng)計特性(如隨機(jī)性或熵)發(fā)生改變;3) 流量加密后流統(tǒng)計特征發(fā)生改變,如流字節(jié)數(shù)、分組長度和分組到達(dá)時間間隔。這些變化使有些傳統(tǒng)識別方法很難或根本無法適用,如基于端口和應(yīng)用層負(fù)載的方法,下面詳細(xì)介紹當(dāng)前主流的加密流量識別技術(shù),并從成本代價、識別速度、識別粒度等方面進(jìn)行對比分析。
3.3.1 基于有效負(fù)載的識別方法
基于有效負(fù)載的識別方法[41]通過分析數(shù)據(jù)分組的有效負(fù)載來識別流量,但該方法由于解析數(shù)據(jù)分組負(fù)載觸犯隱私,處理私有協(xié)議或加密協(xié)議時由于應(yīng)用層數(shù)據(jù)加密可能很難起作用,且當(dāng)協(xié)議發(fā)生變化時必須同步更新。然而,一些加密協(xié)議在密匙協(xié)商過程中數(shù)據(jù)流是不加密或部分加密的,可以從這部分未加密數(shù)據(jù)流中提取有用的信息來識別協(xié)議或應(yīng)用。文獻(xiàn)[42]提出一種 Skype流量實時識別的框架,由于數(shù)據(jù)分組的協(xié)議報頭未加密,可以通過統(tǒng)計協(xié)議報頭前4個字節(jié)的卡方確定數(shù)據(jù)流的具體協(xié)議,甚至可以根據(jù)Skype流量的隨機(jī)特征(分組到達(dá)速率和分組長度),采用貝葉斯分類器識別出該協(xié)議所承載的應(yīng)用類型(文件傳輸、音頻和視頻等)。Korczynski[43]提出一種基于馬爾可夫鏈的隨機(jī)指紋方法,該方法對SSL/ TLS會話從服務(wù)器到客戶端的SSL / TLS協(xié)議頭部的消息序列建立一階馬爾可夫鏈,馬爾可夫鏈就是該會話的指紋。實驗結(jié)果表明該方法具有較好的識別性能,同時發(fā)現(xiàn)許多應(yīng)用未嚴(yán)格遵循RFC規(guī)范,識別時需要根據(jù)協(xié)議更新等變化適當(dāng)調(diào)整指紋。
3.3.2 數(shù)據(jù)分組負(fù)載隨機(jī)性檢測
負(fù)載隨機(jī)性檢測方法根據(jù)網(wǎng)絡(luò)應(yīng)用的數(shù)據(jù)流并不完全隨機(jī)加密的特性進(jìn)行識別,由于每個數(shù)據(jù)分組會攜帶一些相同的特征字段,所以數(shù)據(jù)分組的這些字節(jié)可能不是隨機(jī)的,可以根據(jù)這些特征字段的隨機(jī)性來識別。文獻(xiàn)[44]提出一種基于加權(quán)累積和檢驗的加密流量盲識別方法,該方法利用加密流量的隨機(jī)性,對負(fù)載進(jìn)行累積和檢驗,根據(jù)報文長度加權(quán)綜合,最終實現(xiàn)在線普適識別,實驗結(jié)果顯示加密流量識別率達(dá)到 90%以上。文獻(xiàn)[38]提出的Iustitia識別方法根據(jù)文本流熵值最低,加密流熵值最高,以及二進(jìn)制流熵值介于兩者之間的特性,采用基于熵值的方法精細(xì)化識別二進(jìn)制流(如圖像、視頻和可執(zhí)行文件),甚至可以識別二進(jìn)制流傳輸?shù)奈募愋停ㄈ鏙PEG和GIF圖像、MPEG和AVI視頻)。
3.3.3 基于機(jī)器學(xué)習(xí)的識別方法
加密技術(shù)只對載荷信息進(jìn)行加密而不對流統(tǒng)計特征進(jìn)行處理,因此,基于流統(tǒng)計特征的機(jī)器學(xué)習(xí)識別方法[45]受加密影響較小。Okada[46]在分析流量加密導(dǎo)致特征變化的基礎(chǔ)上,提出一種基于特征估計的識別方法EFM,根據(jù)未加密與加密流量的相關(guān)性選取強相關(guān)特征,實驗結(jié)果表明該方法可以達(dá)到97.2%的識別準(zhǔn)確率。Alshammari[47]采用多種監(jiān)督學(xué)習(xí)方法(如 C4.5、AdaBoost、GP、SVM、RIPPER、Na?ve Bayes)用于加密與非加密SSH和Skype流量的識別,實驗結(jié)果表明機(jī)器學(xué)習(xí)方法具有較好的識別性能,且可以較好地適用于不同網(wǎng)絡(luò)環(huán)境。Korczynski[48]提出一種統(tǒng)計方法識別Skype流量的服務(wù)類型(如語音通話、SkypeOut、視頻會議、聊天)。使用前向特征選擇方法選取最優(yōu)特征子集,盡管語音和視頻流量識別相對較難,但該方法仍取得較高的識別精度。Erman[49]首次將半監(jiān)督學(xué)習(xí)方法用于網(wǎng)絡(luò)流量識別,分類器通過不斷的迭代學(xué)習(xí)可以識別未知的和行為有變化的應(yīng)用。文獻(xiàn)[50]采用子空間聚類方法針對不同分類器使用獨立的特征子集單獨識別每種應(yīng)用,而不是采用統(tǒng)一的特征子集來識別應(yīng)用。文獻(xiàn)[51]提出一種針對 Tor應(yīng)用的識別方法,該方法首先選取應(yīng)用的代表性流特征,如爆發(fā)量和方向,再采用隱馬爾可夫模型識別Tor應(yīng)用承載的流量。
3.3.4 基于行為的識別方法
首先,基于行為的識別方法[52]是從主機(jī)的角度來分析不同應(yīng)用的行為特征,識別結(jié)果通常是粗粒度的,如P2P和Web。其次,該方法對于傳輸層加密無能為力。第三,使用網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)和非對稱路由等技術(shù)會因為不完整的連接信息而影響其識別性能?;谛袨榈淖R別方法可以分為主機(jī)行為和應(yīng)用行為。基于主機(jī)行為的方法針對加密協(xié)議更新和新協(xié)議頑健性高,可以用于骨干網(wǎng)實時粗粒度識別[53,54]。Karagiannis[52]提出了一種基于主機(jī)行為的流量識別方法BLINC,該方法是一種識別未知流量的啟發(fā)式技術(shù),嘗試獲得主機(jī)的參數(shù),一旦這些主機(jī)的連接被建立,連接到已知主機(jī)上的流量可以被簡單地標(biāo)注為已知主機(jī)正在使用的應(yīng)用。Schatzmann[55]利用主機(jī)和協(xié)議的相關(guān)性,以及周期行為特點從HTTPS流量中識別加密Web郵件。文獻(xiàn)[56]提出一種在時間窗口內(nèi)根據(jù)交互數(shù)據(jù)分組的數(shù)目和字節(jié)數(shù)實現(xiàn) P2P-TV流量精細(xì)化識別。Xiong[57]提出一種基于主機(jī)行為關(guān)聯(lián)的加密P2P流量實時識別方法。基于某些先驗知識,節(jié)點和節(jié)點之間的連接、節(jié)點和服務(wù)器之間的連接等通信模式來識別P2P流量。雖然基于應(yīng)用行為的方法根據(jù)應(yīng)用周期性的操作和通信模式能有效地實現(xiàn)精細(xì)化識別,但實際上只有部分加密應(yīng)用可以適用。
3.3.5 基于數(shù)據(jù)分組大小分布的識別方法
在實際網(wǎng)絡(luò)環(huán)境中,為提高用戶體驗,服務(wù)提供商會針對不同的業(yè)務(wù)類型對數(shù)據(jù)流中的數(shù)據(jù)分組大小進(jìn)行處理,如流媒體的數(shù)據(jù)分組不宜過大,否則網(wǎng)絡(luò)擁塞時影響播放流暢度,而文件下載的數(shù)據(jù)分組通常以最大負(fù)載傳輸。因此,可以根據(jù)業(yè)務(wù)類型數(shù)據(jù)分組大小分布差異進(jìn)行識別,該方法受加密影響較小。文獻(xiàn)[58]提出一種基于數(shù)據(jù)分組大小分布簽名的新方法,該方法首先根據(jù)雙向流模型將流量分組聚集成雙向流,從而獲取不同終端之間的交互行為特征,再使用分組大小分布的簽名獲取雙向流中分組的負(fù)載大小分布(PSD)的概率,最后,采用 Renyi交叉熵計算雙向流和應(yīng)用的PSD之間的相似性來進(jìn)行識別。該方法在減少數(shù)據(jù)分組處理量的同時實現(xiàn)P2P和VoIP應(yīng)用的準(zhǔn)確識別。
3.3.6 混合方法
由于很多識別方法只對特定協(xié)議有效,因此可以將多種加密流量識別方法集成實現(xiàn)高效的加密流量識別。文獻(xiàn)[59]提出一種簽名和統(tǒng)計分析相結(jié)合的加密流量識別方法,首先采用特征匹配方法識別SSL/TLS流量,然后應(yīng)用統(tǒng)計分析確定具體的應(yīng)用協(xié)議,實驗結(jié)果表明該方法能夠識別99%以上的SSL/TLS流量,F(xiàn)-Measure達(dá)到94.52%。文獻(xiàn)[60]提出了一種P2P流量的細(xì)粒度識別方法,該方法通過統(tǒng)計特定P2P應(yīng)用中經(jīng)常且穩(wěn)定出現(xiàn)的特殊流。該方法利用流的幾個通用特性就可以達(dá)到較高的識別準(zhǔn)確率;其次,即使待識別的應(yīng)用混雜其他高帶寬消耗的應(yīng)用也可以很好地識別,性能表現(xiàn)優(yōu)于大多數(shù)現(xiàn)有的主機(jī)識別方法。文獻(xiàn)[61]提出一種結(jié)合多個流量識別算法的混合方法,通過4種不同的組合機(jī)制在4個不同的網(wǎng)絡(luò)場景下進(jìn)行驗證,實驗結(jié)果表明混合方法在不同場景下都具有較好的識別率和穩(wěn)健性。
3.3.7 加密流量識別方法綜合對比
在上述加密流量識別方法中,很難借助一種方法識別所有的流量,大部分方法適用于特定的協(xié)議或應(yīng)用,因此,有必要對上述加密流量識別方法從不同角度進(jìn)行深入分析和對比,如表1所示。表2概述了加密流量識別研究的具體實例,包括識別對象、識別特征和識別方法等。文獻(xiàn)[62]比較了分組頭特征(如簽名、指紋)和流統(tǒng)計特征所獲得的識別性能,結(jié)果表明選擇性集成2組特征可以獲得更快和更準(zhǔn)確的識別性能,使用所有可用的特征并不會獲得最好的識別性能[63]。
表1 加密流量識別方法對比
表2 加密流量識別研究實例概述
從前述內(nèi)容可知,加密流量識別技術(shù)已引起國內(nèi)外研究人員的極大關(guān)注,已成為網(wǎng)絡(luò)管理領(lǐng)域一項重要的研究內(nèi)容。盡管當(dāng)前加密流量識別通過機(jī)器學(xué)習(xí)等方法取得了不少研究成果,但仍然存在潛在問題尚未很好解決,加密流量識別還存在以下幾個方面的問題。1) 算法評估及比較,評估需要當(dāng)前最新的數(shù)據(jù)集,不同算法的比較又需要相同的數(shù)據(jù)集,由于隱私和知識產(chǎn)權(quán)等原因很難公開或共享算法和數(shù)據(jù)集。2) 流量分類器的可擴(kuò)展能力,由于網(wǎng)絡(luò)流量爆發(fā)式增長,當(dāng)前研究大都基于小規(guī)模流量的測試,應(yīng)用于真實環(huán)境還有一定的距離,特別是骨干網(wǎng)。3) 樣本標(biāo)記,當(dāng)前大多數(shù)樣本標(biāo)記工具都是基于 DPI,該技術(shù)標(biāo)記加密流量的能力有限;另外,公開數(shù)據(jù)集很少提供標(biāo)記信息,且不帶負(fù)載。4) 流量分類器的兼容性和穩(wěn)健性。分類器需要在不同的網(wǎng)絡(luò)環(huán)境進(jìn)行長時間的驗證,分類器可能在某個環(huán)境具有較好的識別性能;另外,隨著時間推移,應(yīng)用協(xié)議在不斷變化,分類器也需要不斷的更新。5) 流量偽裝問題。越來越多的加密技術(shù)采用流量偽裝,把流量偽裝成其他常用應(yīng)用的特征防止識別,如匿名攻擊和P2P下載。
1) 隧道技術(shù)
隧道技術(shù)常用于在不安全的網(wǎng)絡(luò)上建立安全通道,將不同協(xié)議的數(shù)據(jù)分組封裝然后通過隧道發(fā)送,識別隧道協(xié)議相對容易,識別隧道協(xié)議下承載的應(yīng)用相對較難,因此,加密流量識別要考慮隧道技術(shù)的影響。隧道技術(shù)的數(shù)據(jù)分組格式主要由傳輸協(xié)議、封裝協(xié)議和乘客協(xié)議組成。乘客協(xié)議就是用戶數(shù)據(jù)分組必須遵守內(nèi)網(wǎng)的協(xié)議,而隧道協(xié)議則用于封裝乘客協(xié)議,負(fù)載隧道的建立、保持和斷開。常見的隧道協(xié)議有基于 IPSec的第二層隧道協(xié)議(L2TP)或基于SSL的安全套接字隧道協(xié)議(SSTP)。L2TP依靠IPSec協(xié)議的傳輸模式來提供加密服務(wù),L2TP和IPSec的組合稱為L2TP/IPSec。SSTP協(xié)議提供了一種用于封裝SSL通道傳輸?shù)腜PP通信機(jī)制,SSL提供密鑰協(xié)商、加密和完整性檢查,確保傳輸安全性。
2) 代理技術(shù)
加密流量識別還要克服代理技術(shù)帶來的影響,數(shù)據(jù)壓縮代理技術(shù)可以有效減少帶寬使用,但對流量識別產(chǎn)生較大的影響。如Chrome瀏覽器采用數(shù)據(jù)壓縮代理技術(shù),能夠有效提高網(wǎng)頁加載速度,并節(jié)省網(wǎng)絡(luò)流量。當(dāng)用戶使用代理功能時,Google服務(wù)器會對Web請求的內(nèi)容進(jìn)行壓縮和優(yōu)化處理,由于Chrome瀏覽器與服務(wù)器之間采用SPDY協(xié)議,該協(xié)議會對內(nèi)容進(jìn)一步優(yōu)化處理,使用數(shù)據(jù)壓縮代理技術(shù)可以節(jié)約用戶50%的數(shù)據(jù)流量。然而,數(shù)據(jù)壓縮使流統(tǒng)計特征發(fā)生較大的改變,使基于流統(tǒng)計特征的方法識別性能下降,如何維持識別方法的穩(wěn)健性還有待進(jìn)一步研究。
3) 流量偽裝技術(shù)
流量偽裝技術(shù)(如協(xié)議混淆、流量變種)將一種流量的特征偽裝成另一種流量(如HTTP),降低基于流統(tǒng)計特征方法的識別準(zhǔn)確率,且木馬蠕蟲等惡意程序也越來越多的采用流量偽裝技術(shù)進(jìn)行惡意攻擊和隱蔽通信。Wright[70]提出了一種實時修改數(shù)據(jù)分組的凸優(yōu)化方法,將一種流量的分組大小分布偽裝成另一種流量的分組大小分布,變換后的流量可以有效地躲避 VoIP和 Web等流量分類器的識別。另外,還有一種稱為匿名通信的流量偽裝技術(shù),用于隱藏網(wǎng)絡(luò)通信中發(fā)送方與接收方的身份信息(如IP地址)以及雙方通信關(guān)系,通過多次轉(zhuǎn)發(fā)和改變報文的樣式消除報文間的對應(yīng)關(guān)系,從而為網(wǎng)絡(luò)用戶提供隱私保護(hù)。Tor是目前應(yīng)用最廣泛的匿名通信系統(tǒng),使用Tor系統(tǒng)時,客戶端會選擇一系列的節(jié)點建立 Tor鏈路,鏈路中的節(jié)點只知道其前繼節(jié)點和后繼節(jié)點,不知道鏈路中的其他節(jié)點信息。
4) HTTP/2.0、SPDY及QUIC協(xié)議
為了降低延遲和提高安全性,Google推出SPDY協(xié)議替代HTTP協(xié)議。SPDY協(xié)議采用多路復(fù)用技術(shù),可在一個TCP連接上傳送多個資源,且優(yōu)先級高的資源優(yōu)先傳送,并強制采用TLS協(xié)議提高安全性。Google為了支持IETF提出的HTTP/2.0協(xié)議成為標(biāo)準(zhǔn)棄用SPDY協(xié)議,HTTP/2.0協(xié)議實際上是以SPDY協(xié)議為基礎(chǔ),采用SPDY類似的技術(shù),如多路復(fù)用技術(shù)和TLS加密技術(shù)。由于HTTP/2.0協(xié)議基于TCP仍然存在時延問題,Google提出一種基于 UDP的傳輸層協(xié)議 QUIC(quick UDP internet connection)。QUIC協(xié)議結(jié)合TCP和UDP協(xié)議的優(yōu)勢,解決基于TCP的SPDY協(xié)議存在的瓶頸,實現(xiàn)低延時、高可靠性和安全性。
綜上討論,有些問題是流量識別的共同問題,不只出現(xiàn)在加密流量識別研究中。今后可從以下幾個方面展開科研工作。
1) 加密流量精細(xì)化識別
隨著流量分析需求的提高,為了加強流量管控,識別流量是否加密是遠(yuǎn)遠(yuǎn)不夠的,因為實際網(wǎng)絡(luò)管理中需要識別加密協(xié)議或隧道協(xié)議下的應(yīng)用或服務(wù)。要實現(xiàn)精細(xì)化識別這一目標(biāo),多階段逐步精細(xì)化識別和混合方法是較好的解決思路,在各個階段中完成不同的識別任務(wù),或結(jié)合不同的算法識別不同的應(yīng)用[71]。
2) SSL協(xié)議下的應(yīng)用識別
由于SSL協(xié)議較好的兼容性和易用性,越來越多的網(wǎng)絡(luò)應(yīng)用都積極使用 SSL協(xié)議來確保通信過程的安全性。SSL協(xié)議在網(wǎng)頁瀏覽、觀看視頻和社交網(wǎng)絡(luò)等廣泛應(yīng)用,使該流量呈爆發(fā)式增長,且基于SSL協(xié)議的應(yīng)用變得越來越復(fù)雜。SSL協(xié)議在保護(hù)用戶隱私和數(shù)據(jù)安全的同時也給網(wǎng)絡(luò)管理提出了更高的要求,如何精細(xì)化識別SSL協(xié)議下的網(wǎng)絡(luò)應(yīng)用已成為當(dāng)前網(wǎng)絡(luò)管理面臨的挑戰(zhàn)。
3) 加密視頻內(nèi)容信息識別
隨著視頻業(yè)務(wù)應(yīng)用越來越廣泛,視頻流量占比不斷增加,網(wǎng)絡(luò)運營商和視頻服務(wù)提供商需要知道當(dāng)前的視頻體驗業(yè)務(wù)質(zhì)量,從而改善視頻 QoS。YouTube作為最常用的視頻網(wǎng)絡(luò),90%以上流量采用加密技術(shù),國內(nèi)視頻網(wǎng)絡(luò)也越來越多的采用加密技術(shù)。在加密場景下,很難獲取與視頻體驗業(yè)務(wù)質(zhì)量相關(guān)的參數(shù)(如播放碼率和清晰度)[72]。因此,如何識別加密視頻碼率和清晰度對評估和改善QoS具有重要意義。
4) 加密流量數(shù)據(jù)集的準(zhǔn)確標(biāo)記
近年來,一些新的算法和技術(shù)已被提出,具有較好的分類性能。然而,由于收集的網(wǎng)絡(luò)流量不同分類結(jié)果無法直接比較。無論是建立機(jī)器學(xué)習(xí)分類模型,還是驗證分類模型性能都需要標(biāo)記數(shù)據(jù)集。公共數(shù)據(jù)集大都沒有有效載荷信息和標(biāo)記信息,加密流量哪怕有效載荷也很難通過 DPI工具(如nDPI[73]、Libprotoident[74])進(jìn)行標(biāo)記。因此,一些研究人員不得不借助常用端口號再增加過濾規(guī)則進(jìn)行標(biāo)記,導(dǎo)致基準(zhǔn)不準(zhǔn)確[75]。此外,為了滿足加密流量的精細(xì)化識別要求,關(guān)鍵是要標(biāo)記加密協(xié)議下運行的不同應(yīng)用,使標(biāo)記難上加難。自生成數(shù)據(jù)集主要采用監(jiān)視主機(jī)內(nèi)核的方式[76]或 DPI方式獲取標(biāo)記,自生成數(shù)據(jù)集雖然相對容易獲取標(biāo)記信息,但各自采用自生成數(shù)據(jù)集會造成不同算法間無法對比的問題。
5) 流量偽裝
基于流特征的識別方法是加密流量識別最常用的方法,因此,也在不停地研究相應(yīng)的流量模式偽裝技術(shù),如流量填充、流量規(guī)范化和流量掩飾,通過偽裝技術(shù)將一種流量的特征偽裝成另一種流量[77],模糊流量特征以降低流量識別性能。Wright[70]提出了一種實時修改數(shù)據(jù)分組的凸優(yōu)化方法,將一種流量的分組大小分布偽裝成另一種流量的分組大小分布,變換后的流量可以有效地躲避 VoIP和Web等流量分類器的識別。未來流量偽裝技術(shù)將集成流量填充、流量規(guī)范化和流量掩飾等多種手段應(yīng)對流量分析,且流量偽裝的多樣性和自適應(yīng)能力將大大增強。除此之外,匿名通信、隧道技術(shù)和代理技術(shù)都是流量偽裝的不同表現(xiàn)形式,匿名通信通過隱藏網(wǎng)絡(luò)通信中發(fā)送方與接收方的身份信息以及雙方通信關(guān)系防止追蹤,隧道技術(shù)通過L2TP、SSTP等協(xié)議對數(shù)據(jù)分組再封裝,而數(shù)據(jù)壓縮代理技術(shù)為了節(jié)約流量使流統(tǒng)計特征發(fā)生變化。因此,需要改進(jìn)目前的識別方法應(yīng)對即將到來的挑戰(zhàn)。
6) 協(xié)議出新及業(yè)務(wù)分布變化
由于應(yīng)用協(xié)議的改進(jìn)和優(yōu)化,以及為阻礙流量識別會不斷推出新版本,隨之協(xié)議簽名和行為特征發(fā)生改變,因此,原有的識別方法需要周期性更新。隨著用戶對網(wǎng)絡(luò)安全和網(wǎng)絡(luò)性能需求的提高,SPDY、HTTP/2.0及QUIC等新加密協(xié)議不斷推出,用于解決基于TCP及UDP的協(xié)議存在的瓶頸,實現(xiàn)低延時、高可靠和安全的網(wǎng)絡(luò)通信。在不久的將來,HTTP/2.0和QUIC協(xié)議將被廣泛應(yīng)用,如何識別協(xié)議下承載的應(yīng)用面臨新的挑戰(zhàn)。
另外,機(jī)器學(xué)習(xí)分類方法因其不受加密影響廣泛應(yīng)用于加密流量識別,但基于機(jī)器學(xué)習(xí)的識別方法會因為不同時間段以及不同地域的流量所承載的業(yè)務(wù)分布差異而引起概念漂移問題[78,79]。大多數(shù)算法只在一個或2個特定場景下表現(xiàn)良好,不同算法在不同場景的識別能力差異較大。根據(jù)不同場景的流量訓(xùn)練的分類器對新樣本的適用性逐漸變?nèi)?,?dǎo)致分類模型的識別能力下降。如果能夠準(zhǔn)確地識別流量概念漂移,就可以及時有效地更新分類器,從而避免頻繁更新分類器。
加密流量識別是當(dāng)前流量識別領(lǐng)域最具挑戰(zhàn)性的問題之一。本文首先介紹加密流量識別的研究背景及意義。其次,闡述加密流量識別對象及識別的類型,加密流量識別根據(jù)應(yīng)用需求從加密與未加密識別逐漸精細(xì)化識別的過程,包括協(xié)議識別、應(yīng)用類型識別、內(nèi)容本質(zhì)識別和異常流量識別。然后,綜述當(dāng)前加密流量識別方法并對比分析,可以看出多階段或多方法集成的混合方法是未來的研究熱點。接著,闡述當(dāng)前加密流量識別的影響因素,包括隧道技術(shù)、代理技術(shù)、流量偽裝和新協(xié)議HTTP/2.0與QUIC。最后,歸納現(xiàn)有加密流量識別的不足,展望加密流量識別趨勢和未來的研究方向,可以從以下幾方面開展:1) 采用2種或多種方法集成的多層分級框架進(jìn)行加密流量精細(xì)化識別;2) 實現(xiàn) SSL協(xié)議下應(yīng)用的精細(xì)化識別,以及HTTPS加密視頻流量的內(nèi)容識別(如視頻碼率和清晰度);3) 建立大規(guī)模具備細(xì)粒度標(biāo)記的加密流量數(shù)據(jù)集;4) 研究更有效的流量識別技術(shù)應(yīng)對流量偽裝等反措施;5) 建立自適應(yīng)應(yīng)用協(xié)議出新及流量分布變化的分類模型及技術(shù)。
[1] ROUGHAN M, SEN S, SPATSCHECK O, et al. Class-of-service mapping for QoS: a statistical signature-based approach to IP traffic classification[C]//The 4th ACM SIGCOMM Conference on Internet measurement. ACM, 2004: 135-148.
[2] DINGLEDINE R, MATHEWSON N, SYVERSON P. Tor: the second-generation onion router[R]. Naval Research Lab Washington DC,2004.
[3] GOMES J V, INáCIO P R M, PEREIRA M, et al. Detection and classification of peer-to-peer traffic: a survey[J]. ACM Computing Sur-veys (CSUR), 2013, 45(3): 30.
[4] GILL P, ARLITT M, LI Z, et al. Youtube traffic characterization: a view from the edge[C]//The 7th ACM SIGCOMM Conference on Internet Measurement. ACM, 2007: 15-28.
[5] ZHANG X B, LAM S S, LEE D Y, et al. Protocol design for scalable and reliable group rekeying[J]. IEEE/ACM Transactions on Networking, 2003, 11(6): 908-922.
[6] BARRY S. Google starts giving a ranking boost to secure HTTPS/SSL sites [EB/OL]. http://searchengineland.com/google-starts-giving- rankingboost-secure-httpsssl-sites-199446, 2015.
[7] NGUYEN T T T, ARMITAGE G. A survey of techniques for internet traffic classification using machine learning[J]. Communications Surveys amp; Tutorials, IEEE, 2008, 10(4): 56-76.
[8] NAMDEV N, AGRAWAL S, SILKARI S. Recent advancement in machine learning based internet traffic classification[J]. Procedia Computer Science, 2015, 60: 784-791.
[9] DAINOTTI A, PESCAPE A, CLAFFY K C. Issues and future directions in traffic classification[J]. Network, IEEE, 2012, 26(1): 35-40.
[10] BUJLOW T, CARELA-ESPA?OL V, BARLET-ROS P. Independent comparison of popular DPI tools for traffic classification[J]. Computer Networks, 2015, 76: 75-89.
[11] WRIGHT C V, COULL S E, MONROSE F. Traffic morphing: an efficient defense against statistical traffic analysis[C]//NDSS. 2009:237-250.
[12] VELAN P, ?ERMáK M, ?ELEDA P, et al. A survey of methods for encrypted traffic classification and analysis[J]. International Journal of Network Management, 2015, 25(5): 355-374.
[13] PARK B, HONG J W K, WON Y J. Toward fine-grained traffic classification[J]. Communications Magazine, IEEE, 2011, 49(7): 104-111.
[14] BERNAILLE L, TEIXEIRA R, AKODKENOU I, et al. Traffic classification on the fly[J]. ACM SIGCOMM Computer Communication Review, 2006, 36(2): 23-26.
[15] FADLULLAH Z M, TALEB T, VASILAKOS A V, et al. DTRAB:combating against attacks on encrypted protocols through traffic-feature analysis[J]. IEEE/ACM Transactions on Networking (TON),2010, 18(4): 1234-1247.
[16] GU G, ZHANG J, LEE W. BotSniffer: detecting botnet command and control channels in network traffic[C]//Network and Distributed System Security Symposium. 2008.
[17] TANKARD C. Advanced persistent threats and how to monitor and deter them[J]. Network Security, 2011, 2011(8): 16-19.
[18] CAO Z, XIONG G, ZHAO Y, et al. A survey on encrypted traffic classification[M]//Applications and Techniques in Information Security. Springer Berlin Heidelberg, 2014: 73-81.
[19] GRIMAUDO L, MELLIA M, BARALIS E. Hierarchical learning for fine grained internet traffic classification[C]//Wireless Communications and Mobile Computing Conference (IWCMC). IEEE, 2012:463-468.
[20] ROSSI D, VALENTI S. Fine-grained traffic classification with netflow data[C]//The 6th International Wireless Communications and Mobile Computing Conference. ACM, 2010: 479-483.
[21] DORFINGER P, PANHOLZER G, JOHN W. Entropy estimation for real-time encrypted traffic identification (short paper)[M]. Springer Berlin Heidelberg, 2011.
[22] BELLOVIN S M, MERRITT M. Cryptographic protocol for secure communications: U.S. Patent 5,241,599[P]. 1993-8-31.
[23] FAHAD A, TARI Z, KHALIL I, et al. Toward an efficient and scalable feature selection approach for internet traffic classification[J]. Computer Networks, 2013, 57(9): 2040-2057.
[24] Kent security architecture for the internet protocol[EB/OL].https://tools.ietf.org/html/rfc4301, 2015.
[25] YILDIRIM T, RADCLIFFE P J. VoIP traffic classification in IPSec tunnels[C]//Electronics and Information Engineering (ICEIE). IEEE,2010, 1: V1-151-V1-157.
[26] DIERKS T. The transport layer security (TLS) protocol version 1.2[EB/OL]. https://tools.ietf.org/html/rfc5246, 2015.
[27] BERNAILLE L, TEIXEIRA R. Early recognition of encrypted applications[M]//Passive and Active Network Measurement. Springer Berlin Heidelberg, 2007: 165-175.
[28] YLONEN T. The secure shell (SSH) transport layer protocol[EB/OL].https://tools.ietf.org/html/rfc4253, 2015.
[29] MAIOLINI G, BAIOCCHI A, IACOVAZZI A, et al. Real time identification of SSH encrypted application flows by using cluster analysis techniques[C]//NETWORKING 2009. Springer Berlin Heidelberg,2009: 182-194.
[30] MADHUKAR A, WILLIAMSON C. A longitudinal study of P2P traffic classification[C]//Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, MASCOTS 2006. IEEE, 2006:179-188.
[31] LE T M, BUT J. Bittorrent traffic classification[R]. Centre for Advanced Internet Architectures. Technical Report A, 91022.
[32] ADAMI D, CALLEGARI C, GIORDANO S, et al. Skype‐hunter: a real‐time system for the detection and classification of Skype traffic[J]. International Journal of Communication Systems, 2012, 25(3):386-403.
[33] VALENTI S, ROSSI D, MEO M, et al. Accurate, fine-grained classification of P2P-TV applications by simply counting packets[M]//Traffic Monitoring and Analysis. Springer Berlin Heidelberg,2009: 84-92.
[34] BERMOLEN P, MELLIA M, MEO M, et al. Abacus: accurate behavioral classification of P2P-TV traffic[J]. Computer Networks, 2011,55(6): 1394-1411.
[35] NYCHIS G, SEKAR V, ANDERSEN D G, et al. An empirical evaluation of entropy-based traffic anomaly detection[C]//The 8th ACM SIGCOMM Conference on Internet Measurement. ACM, 2008:151-156.
[36] LAKHINA A, CROVELLA M, DIOT C. Mining anomalies using traffic feature distributions[J]. ACM SIGCOMM Computer Communication Review, 2005, 35(4): 217-228.
[37] SOULE A, SALAMATIAN K, TAFT N. Combining filtering and statistical methods for anomaly detection[C]//The 5th ACM SIGCOMM Conference on Internet Measurement. USENIX Association,2005: 31.
[38] KHAKPOUR A R, LIU A X. An information-theoretical approach to high-speed flow nature identification[J]. IEEE/ACM Transactions on Networking (TON), 2013, 21(4): 1076-1089.
[39] CALLADO A, KAMIENSKI C, SZABó G, et al. A survey on internet traffic identification[J]. Communications Surveys amp; Tutorials, IEEE,2009, 11(3): 37-52.
[40] KIM H, CLAFFY K C, FOMENKOV M, et al. Internet traffic classification demystified: myths, caveats, and the best practices[C]// Proceedings of the 2008 ACM CoNEXT Conference. ACM, 2008: 11.
[41] FINSTERBUSCH M, RICHTER C, ROCHA E, et al. A survey of payload-based traffic classification approaches[J]. Communications Surveys amp; Tutorials, IEEE, 2014, 16(2): 1135-1156.
[42] BONFIGLIO D, MELLIA M, MEO M, et al. Revealing skype traffic:when randomness plays with you[J]. ACM SIGCOMM Computer Communication Review, 2007, 37(4): 37-48.
[43] KORCZYNSKI M, DUDA A. Markov chain fingerprinting to classify encrypted traffic[C]//INFOCOM, 2014 Proceedings IEEE. IEEE, 2014:781-789.
[44] 趙博, 郭虹, 劉勤讓, 等. 基于加權(quán)累積和檢驗的加密流量盲識別算法[J]. 軟件學(xué)報, 2013, 24(6): 1334-1345.ZHAO B, GUO H, LIU Q R, et al. Protocol independent identification of encrypted traffic based on weighted eumnlative sum test[J]. Journal of Software, 2013, 24(6): 1334-1345.
[45] MOORE A W, ZUEV D. Internet traffic classification using bayesian analysis techniques[J]. ACM SIGMETRICS Performance Evaluation Review. 2005, 33(1): 50-60.
[46] OKADA Y, ATA S, NAKAMURA N, et al. Comparisons of machine learning algorithms for application identification of encrypted traffic[C]//Machine Learning and Applications and Workshops (ICMLA).IEEE, 2011: 358-361.
[47] ALSHAMMARI R, ZINCIR-HEYWOOD A N. Can encrypted traffic be identified without port numbers, IP addresses and payload inspection?[J]. Computer networks, 2011, 55(6): 1326-1350.
[48] KORCZY?SKI M, DUDA A. Classifying service flows in the encrypted Skype traffic[C]//Communications (ICC), 2012 IEEE International. IEEE, 2012: 1064-1068.
[49] ERMAN J, MAHANTI A, ARLITT M, et al. Semi-supervised network traffic classification[J]. ACM SIGMETRICS Performance Evaluation Review, 2007, 35(1): 369-370.
[50] XIE G, ILIOFOTOU M, KERALAPURA R, et al. SubFlow: towards practical flow-level traffic classification[C]//INFOCOM, 2012 Proceedings IEEE. IEEE, 2012: 2541-2545.
[51] HE G, YANG M, LUO J, et al. A novel application classification attack against Tor[J]. Concurrency and Computation: Practice and Experience, 2015: 27.
[52] KARAGIANNIS T, PAPAGIANNAKI K, FALOUTSOS M. BLINC:multilevel traffic classification in the dark[J]. ACM SIGCOMM Computer Communication Review, 2005, 35(4): 229-240.
[53] LI B, MA M, JIN Z. A VoIP traffic identification scheme based on host and flow behavior analysis[J]. Journal of Network and Systems Management, 2011, 19(1): 111-129.
[54] HURLEY J, GARCIA-PALACIOS E, SEZER S. Host-based P2P flow identification and use in real-time[J]. ACM Transactions on the Web(TWEB), 2011, 5(2): 7.
[55] SCHATZMANN D, MüHLBAUER W, SPYROPOULOS T, et al.Digging into HTTPS: flow-based classification of webmail traffic[C]//The 10th ACM SIGCOMM Conference on Internet Measurement. ACM, 2010: 322-327.
[56] BERMOLEN P, MELLIA M, MEO M, et al. Abacus: accurate behavioral classification of P2P-TV traffic[J]. Computer Networks, 2011,55(6): 1394-1411.
[57] XIONG G, HUANG W, ZHAO Y, et al. Real-time detection of encrypted thunder traffic based on trustworthy behavior association[M]//Trustworthy Computing and Services. Springer Berlin Heidelberg, 2013: 132-139.
[58] QIN T, WANG L, LIU Z, et al. Robust application identification methods for P2P and VoIP traffic classification in backbone networks[J]. Knowledge-Based Systems, 2015, 82: 152-162.
[59] SUN G L, XUE Y, DONG Y, et al. An novel hybrid method for effectively classifying encrypted traffic[C]//Global Telecommunications Conference (GLOBECOM 2010), 2010 IEEE. IEEE, 2010: 1-5.
[60] HE J, YANG Y, QIAO Y, et al. Fine-grained P2P traffic classification by simply counting flows[J]. Frontiers of Information Technology amp;Electronic Engineering, 2015, 16: 391-403.
[61] CALLADO A, KELNER J, SADOK D, et al. Better network traffic identification through the independent combination of techniques[J].Journal of Network and Computer Applications, 2010, 33(4): 433-446.
[62] ALSHAMMARI R, ZINCIR-HEYWOOD A N. A preliminary performance comparison of two feature sets for encrypted traffic classification[C]//The International Workshop on Computational Intelligence in Security for Information Systems CISIS’08. Springer Berlin Heidelberg, 2009: 203-210.
[63] 潘吳斌, 程光, 郭曉軍, 等. 基于選擇性集成策略的嵌入式網(wǎng)絡(luò)流特征選擇[J]. 計算機(jī)學(xué)報, 2014, 37(10): 2128-2138.PAN W B, CHENG G, GUO X J, et al. An embedded feature selection wsing selatine ensemble for network traffic[J]. Chinese Journal of Computers, 2014, 37(10): 2128-2138.
[64] ZHANG M, ZHANG H, ZHANG B, et al. Encrypted traffic classification based on an improved clustering algorithm[M]//Trustworthy Computing and Services. Springer Berlin Heidelberg, 2013: 124-131.
[65] DUSI M, ESTE A, GRINGOLI F, et al. Using GMM and SVM-based techniques for the classification of SSH-encrypted traffic[C]// Communications, 2009. ICC'09, IEEE International Conference. IEEE,2009: 1-6.
[66] BAR-YANAI R, LANGBERG M, PELEG D, et al. Realtime classification for encrypted traffic[M]//Experimental Algorithms. Springer Berlin Heidelberg, 2010: 373-385.
[67] WRIGHT C V, MONROSE F, Masson G M. On inferring application protocol behaviors in encrypted network traffic[J]. The Journal of Machine Learning Research, 2006, 7: 2745-2769.
[68] WRIGHT C V, MONROSE F, MASSON G M. Using visual motifs to classify encrypted traffic[C]//The 3rd International Workshop on Visualization for Computer Security. ACM, 2006: 41-50.
[69] BONFIGLIO D, MELLIA M, MEO M, et al. Revealing skype traffic:when randomness plays with you[J]. ACM SIGCOMM Computer Communication Review, 2007, 37(4): 37-48.
[70] WRIGHT C V, COULL S E, MONROSE F. Traffic morphing: an efficient defense against statistical traffic analysis[C]//NDSS. 2009.
[71] 何高峰, 楊明, 羅軍舟, 等. Tor 匿名通信流量在線識別方法[J]. 軟件學(xué)報, 2013, 24(3): 540-556.HE G F, YANG M, LUO J Z, et al. Ouline identifrcation of Tor anongmous communication traffic[J]. Journal of Software, 2013, 24(3): 540-556.
[72] SHEN Y, LIU Y, QIAO N, et al. QoE-based evaluation model on video streaming service quality[C]//Globecom Workshops, 2012 IEEE. IEEE,2012: 1314-1318.
[73] DERI L, MARTINELLI M, BUJLOW T, et al. nDPI: open-source high-speed deep packet inspection[C]//Wireless Communications and Mobile Computing Conference (IWCMC). IEEE, 2014: 617-622.
[74] ALCOCK S, NELSON R. Libprotoident: traffic classification using lightweight packet inspection[R]. WAND Network Research Group,Tech Rep, 2012.
[75] CARELA-ESPA?OL V, BUJLOW T, BARLET-ROS P. Is our ground-truth for traffic classification reliable[C]//Passive and Active Measurement. Springer International Publishing. 2014: 98-108.
[76] GRINGOLI F, SALGARELLI L, DUSI M, et al. Gt: picking up the truth from the ground for internet traffic[J]. ACM SIGCOMM Computer Communication Review, 2009, 39(5): 12-18.
[77] QU B, ZHANG Z, ZHU X, et al. An empirical study of morphing on behavior‐based network traffic classification[J]. Security and Communication Networks, 2015, 8(1): 68-79.
[78] RAAHEMI B, ZHONG W, LIU J. Peer-to-peer traffic identification by mining IP layer data streams using concept-adapting very fast decision tree[C]//Tools with Artificial Intelligence, 2008. ICTAI'08. 20th IEEE International. IEEE, 2008, 1: 525-532.
[79] ZHANG H, LU G, QASSRAWI M T, et al. Feature selection for optimizing traffic classification[J]. Computer Communications, 2012,35(12): 1457-1471.
Review and perspective on encrypted traffic identification research
PAN Wu-bin1,2, CHENG Guang1,2, GUO Xiao-jun1,2, HUANG Shun-xiang1,2
(1. School of Computer Science and Engineering, Southeast University, Nanjing 210096, China;2. Key Laboratory of Computer Network and Information Integration of Ministry of Education, Southeast University, Nanjing 210096, China)
Considering the importance of encrypted traffic identification technology and existing research work, first,the type of encrypted traffic identification according to the demand of traffic analysis were introduced, such as protocols, applications and services. Second, the encrypted traffic identification technology was summarized, and identification technology was compared from multiple views. Third, the deficiencies and the affecting factors of the existing encrypted traffic identification technologies were induced, such as tunneling, traffic camouflage technology, new protocols of HTTP/2.0 and QUIC. Finally, prospect trends and directions of future research on encrypted traffic identification were discussed.
encrypted traffic identification, network management, traffic engineering, traffic camouflaging, HTTP/2.0
s: The National High Technology Research and Development Program of China (863 Program) (No.2015AA015603),The Prospective Research Programs Future Internet of Jiangsu Province (No.BY2013095-5-03), The Six Talent Peaks of High Level Talents Project of Jiangsu Province (No.2011?DZ024), The Fundamental Research Funds for the Central Universities and the Research and Innovation Project for College Graduates of Jiangsu Province (No.KYLX15_0118)
TP393
A
10.11959/j.issn.1000-436x.2016187
2015-12-14;
2016-05-25
國家高技術(shù)研究發(fā)展計劃(“863”計劃)基金資助項目(No.2015AA015603);江蘇省未來網(wǎng)絡(luò)創(chuàng)新研究院未來網(wǎng)絡(luò)前瞻性研究基金資助項目(No.BY2013095-5-03);江蘇省“六大人才高峰”高層次人才基金資助項目(No.2011?DZ024);中央高?;究蒲袠I(yè)務(wù)費專項資金和江蘇省普通高校研究生科研創(chuàng)新計劃基金資助項目(No.KYLX15_0118)
潘吳斌(1987-),男,江蘇蘇州人,東南大學(xué)博士生,主要研究方向為網(wǎng)絡(luò)安全、網(wǎng)絡(luò)測量及流量分類。
程光(1973-),男,安徽黃山人,東南大學(xué)教授、博士生導(dǎo)師,主要研究方向為網(wǎng)絡(luò)安全、網(wǎng)絡(luò)測量與行為學(xué)及未來網(wǎng)絡(luò)安全。
郭曉軍(1983-),男,山西長治人,東南大學(xué)博士生,主要研究方向為網(wǎng)絡(luò)安全、網(wǎng)絡(luò)測量及網(wǎng)絡(luò)管理。
黃順翔(1991-),男,湖南長沙人,東南大學(xué)碩士生,主要研究方向為網(wǎng)絡(luò)安全、網(wǎng)絡(luò)測量及流量分類。