張連成 王 禹 孔亞洲 邱 菡
1(解放軍信息工程大學(xué) 鄭州 450001)2(數(shù)學(xué)工程與先進(jìn)計算國家重點(diǎn)實(shí)驗室 鄭州 450001)3 (河南工程學(xué)院 鄭州 451191) (liancheng17@gmail.com)
流關(guān)聯(lián)技術(shù)通過檢測2條數(shù)據(jù)流是否存在關(guān)聯(lián)性來進(jìn)行流量分析,在跳板攻擊源定位[1-3]、僵尸主控機(jī)(botmaster)溯源[4-5]、匿名濫用用戶關(guān)聯(lián)[6-8]和匿名網(wǎng)絡(luò)電話追蹤[9-11]等網(wǎng)絡(luò)安全和隱私方面有著廣泛的應(yīng)用.
當(dāng)前,網(wǎng)絡(luò)攻擊者在對遠(yuǎn)程主機(jī)進(jìn)行入侵時往往采用多跳中間代理方式,在最后一臺主機(jī)上對目標(biāo)實(shí)施攻擊,網(wǎng)絡(luò)防御者很難準(zhǔn)確定位到真正的攻擊源頭.同時,匿名通信系統(tǒng)的廣泛應(yīng)用,使犯罪分子在進(jìn)行各種不法和犯罪活動(如傳播不良信息、開展恐怖活動、販賣毒品和兒童等)時能夠躲避監(jiān)督機(jī)構(gòu)對其的審查與追蹤.因此,如何確定網(wǎng)絡(luò)中各種信息的原始發(fā)布者已成為網(wǎng)絡(luò)安全領(lǐng)域一個新的研究熱點(diǎn).
本質(zhì)上,無論多跳攻擊還是匿名通信,都通過若干中間節(jié)點(diǎn)(如跳板或中繼節(jié)點(diǎn))對信息進(jìn)行多次轉(zhuǎn)發(fā)以掩蓋發(fā)送者的真實(shí)身份與準(zhǔn)確位置.由于這些信息一般經(jīng)過加密處理,很難通過其中所包含的內(nèi)容定位到發(fā)送者,因此,對信息源的追蹤一般采用流量分析的方法,計算進(jìn)出中間節(jié)點(diǎn)的數(shù)據(jù)流之間的相似性,從中找出相關(guān)聯(lián)的數(shù)據(jù)流,通過這些相關(guān)聯(lián)的數(shù)據(jù)流向前追溯直至定位到信息源.
流關(guān)聯(lián)技術(shù)可分為被動方式和主動方式2種.被動流關(guān)聯(lián)技術(shù)[2-3,6,10,12-13]通過觀察數(shù)據(jù)流的流量特性(如包大小、包時間、包數(shù)量等)來進(jìn)行數(shù)據(jù)流關(guān)聯(lián).為滿足一定的準(zhǔn)確率,該類技術(shù)需要原始數(shù)據(jù)流信息、觀測時間長、誤報率高、數(shù)據(jù)流存儲與通信需求大、數(shù)據(jù)流關(guān)聯(lián)量大,且難以應(yīng)對網(wǎng)絡(luò)傳輸引入的或攻擊者主動添加的時間擾亂、包丟失、包添加、包重組等各類干擾.
相比而言,基于流水印(flow watermarking)的流關(guān)聯(lián)技術(shù)則采用主動流量分析方式,通過向發(fā)送者的流量中主動添加水印信息來幫助確認(rèn)發(fā)送者和接收者的通信關(guān)系,具有準(zhǔn)確率高、誤報率低、觀測時間短和所需觀測數(shù)據(jù)包數(shù)量少等優(yōu)點(diǎn),除了可廣泛應(yīng)用于跳板攻擊源定位、僵尸主控機(jī)發(fā)現(xiàn)、匿名濫用用戶關(guān)聯(lián)和匿名網(wǎng)絡(luò)電話追蹤之外,還可應(yīng)用于云平臺中共存(co-residency)云實(shí)例檢測[14-15]、網(wǎng)絡(luò)服務(wù)依賴關(guān)系檢測[16]等方面,甚至用于匿名通信系統(tǒng)擁塞攻擊(congestion attack)防御上[17],近年來得到學(xué)術(shù)界的廣泛關(guān)注.
按照流水印載體的不同,當(dāng)前網(wǎng)絡(luò)流水印技術(shù)主要有基于包載荷、基于流速率和基于包時間的流水印技術(shù)3種.
1) 基于包載荷[18]的流水印技術(shù)通過調(diào)制數(shù)據(jù)流中數(shù)據(jù)包的應(yīng)用載荷以嵌入水印,進(jìn)而達(dá)到關(guān)聯(lián)數(shù)據(jù)流的目的.Wang等人[18]提出休眠水印追蹤(sleepy watermark tracing, SWT)的主動入侵響應(yīng)框架,只有檢測到入侵時,它才會被激活,并將水印(不同的字符串組合)注入到網(wǎng)絡(luò)入侵者的返回連接中,并與入侵路徑上的中間路由器合作來進(jìn)行攻擊源追蹤.但該類流水印技術(shù)與具體應(yīng)用層協(xié)議(如telnet,rlogin)有關(guān),難以處理加密流量,適應(yīng)范圍較窄,且易被檢測和過濾.
2) 基于流速率[19-25]的流水印技術(shù)通過調(diào)制數(shù)據(jù)流的速率進(jìn)而達(dá)到嵌入水印、追蹤數(shù)據(jù)流的目的.Fu等人[19]采用頻域分析技術(shù)將時域水印轉(zhuǎn)變成特征不變的頻率,通過電磁干擾將其嵌入到無線網(wǎng)絡(luò)數(shù)據(jù)流中,可有效降低基于流的無線Mix網(wǎng)絡(luò)的匿名度.通過修改發(fā)送者流量的速率,Yu等人[20]提出基于直序擴(kuò)頻(direct sequence spread spectrum,DSSS)的流水印技術(shù)用于追蹤匿名通信者.但該類流水印技術(shù)在關(guān)聯(lián)數(shù)據(jù)流時需要設(shè)置流量干擾器,不易部署和實(shí)施,且會向網(wǎng)絡(luò)中注入大量無用數(shù)據(jù)流,影響網(wǎng)絡(luò)的可用性.
3) 基于包時間的流水印技術(shù)通過調(diào)制數(shù)據(jù)包的時間信息進(jìn)而達(dá)到嵌入水印、追蹤數(shù)據(jù)流的目的,是當(dāng)前學(xué)術(shù)界研究的熱點(diǎn).按照調(diào)制對象的不同,將其分為基于間隔到達(dá)時延(inter-packet delay, IPD)、基于時間間隔(interval)和基于間隔質(zhì)心(interval centroid)的流水印技術(shù)3類.
① 基于間隔到達(dá)時延的流水印技術(shù)
間隔到達(dá)時延是指一條數(shù)據(jù)流中數(shù)據(jù)包先后到達(dá)的時間間隔,通過調(diào)制該流量特征可有效嵌入水印信息進(jìn)行流關(guān)聯(lián).Wang等人[13]提出基于IPD的概率流水印技術(shù),對于隨機(jī)時間擾亂具有魯棒性.Park等人[26]提出一種自適應(yīng)概率流水印技術(shù),能容忍任何形式的時間擾亂.Wang等人[9]提出追蹤P2P(peer-to-peer)匿名VoIP(voice over Internet protocol)電話的主動流水印技術(shù).Houmansadr等人[27-28]提出RAINBOW流水印技術(shù),所用時延只有先前流水印技術(shù)的幾百分之一.李強(qiáng)等人[29]提出一個主動干擾跳板機(jī)連接中數(shù)據(jù)包間隔延遲的方法.Gong等人[30-31]使用量化索引調(diào)制(quantization-index modulation, QIM)來嵌入水印.Peng等人[32]提出基于包匹配(packet matching)和IPD的主動流水印技術(shù).張璐等人[33]研究了包間隔流關(guān)聯(lián)技術(shù)中的同步問題,并以貪心法和遞進(jìn)法為基本思路分別提出同步算法,可有效提高流同步效果.
② 基于時間間隔的流水印技術(shù)
基于時間間隔的流水印(interval based water-marking, IBW)技術(shù)通過將數(shù)據(jù)流切成固定長度的時間間隔,調(diào)整包時間來控制特定時間間隔中的包數(shù)量來嵌入水印,最早由Pyun等人[34]提出.Houmansadr等人[4]提出BotMosaic協(xié)同流水印技術(shù),通過向多個僵尸實(shí)例中嵌入水印,可提高基于IRC(Internet relay chat)的僵尸主控機(jī)的追蹤效果.Houmansadr等人[17]提出SWIRL可擴(kuò)展流水印技術(shù),對于包丟失和時延抖動具有魯棒性,可用于大規(guī)模范圍的流量分析.多數(shù)流水印技術(shù)采用固定采樣大小(fixed sample size, FSS)檢測器,導(dǎo)致誤報率高、檢測效率低,針對該問題,Wang等人[35-36]提出一種有效序列水印檢測(efficient sequential watermark detection, ESWD)模型來追蹤網(wǎng)絡(luò)數(shù)據(jù)流,提出基于間隔對的最優(yōu)水印檢測器(paired-intervals-based optimum watermark detector, POWD)和基于單間隔的最優(yōu)水印檢測器(single-interval-based optimum water-mark detector, SOWD),可有效抵御時間干擾.
③ 基于間隔質(zhì)心的流水印技術(shù)
間隔質(zhì)心代表了時間間隔段的平衡點(diǎn),通過對其進(jìn)行調(diào)制可有效關(guān)聯(lián)數(shù)據(jù)流.Wang等人[8]提出基于間隔質(zhì)心的流水印(interval centroid based watermarking, ICBW)方案.在擴(kuò)頻流水印模型的基礎(chǔ)上,張璐等人[37]將直序擴(kuò)頻(DSSS)與間隔質(zhì)心相結(jié)合,提出一種基于時隙質(zhì)心的流水印技術(shù).通過將基于間隔質(zhì)心的數(shù)據(jù)流調(diào)制方法和擴(kuò)頻編碼相結(jié)合,Wang與Luo等人[38-39]提出基于間隔質(zhì)心的擴(kuò)頻流水印方案.Wang等人[40]提出基于雙重間隔質(zhì)心的流水印(DICBW)方案,并將DICBW方案與擴(kuò)頻編碼相結(jié)合,進(jìn)一步提出用于高效數(shù)據(jù)流追蹤的通用混合流水印框架.針對基于包時間的流水印技術(shù)中存在的同步機(jī)制弱且缺乏可靠自糾錯方法的問題,王昌達(dá)等人[41]提出基于包交叉分組間隔質(zhì)心雙盲流水印技術(shù).Lin等人[42]基于間隔組質(zhì)心匹配提出一種隱形時序流水印方法,基于數(shù)據(jù)包IPD質(zhì)心和密鑰來修改目標(biāo)數(shù)據(jù)流的時序信息.Xu等人[43]提出基于均衡間隔質(zhì)心的擴(kuò)頻流水印(equalized interval centroid based spread spectrum watermarking, EICBSSW)方案,大大減小了所選取的間隔長度,更適宜追蹤短流量.
表1對基于3種載體的典型流水印方案從魯棒性、隱蔽性、水印容量、嵌入開銷、提取開銷和應(yīng)用場景等方面進(jìn)行了對比.因表1所對比的這些因素之間存在一定的沖突,不同的流水印技術(shù)針對不同的應(yīng)用需求,需要在魯棒性、隱蔽性和水印容量等方面做出權(quán)衡和取舍.SWT流水印因在應(yīng)用層載荷中加入水印信息,因此魯棒性強(qiáng),但其隱蔽性不好,容易被檢測和過濾.DSSS流水印采用流速率嵌入水印,需要設(shè)置流量干擾器,所以隱蔽性較差,且水印嵌入開銷較大.RAINBOW流水印屬于非盲流水印,因其可訪問原始數(shù)據(jù)流的特征信息,且對包間隔時間的增加較小,因此隱蔽性相對較好,水印容量較大,但部署要求高,部署難度較大.SWIRL流水印魯棒性較好,可適應(yīng)大規(guī)模網(wǎng)絡(luò),但其在嵌入水印信息時需要基準(zhǔn)間隔和標(biāo)記間隔,因此水印嵌入效率不高,水印容量低.ICBW流水印因采用間隔質(zhì)心作為水印載體,抗干擾能力較好,因此魯棒性較好,但相對而言,嵌入效率方面表現(xiàn)一般,且水印容量也不是很大.
為應(yīng)對數(shù)據(jù)流加密,目前流水印技術(shù)往往使用流速率、包時間等流量特征來嵌入水印信息,而通過修改這些流量特征必然會在已嵌入水印的已標(biāo)記數(shù)據(jù)流中引起一些特征的變化.此外,為增強(qiáng)魯棒性,流水印技術(shù)大都采用擴(kuò)頻等方式對水印信息進(jìn)行擴(kuò)展或者重復(fù)嵌入,也會加大這些流量特征的變化幅度.
為躲避流水印技術(shù)的追蹤,攻擊者通過分析和對比已標(biāo)記數(shù)據(jù)流與正常數(shù)據(jù)流特性不一致的地方或者與水印嵌入前的原始數(shù)據(jù)流特征進(jìn)行對比,進(jìn)而發(fā)現(xiàn)流水印的存在性.此外,為提升攻擊效果和干擾追蹤者,攻擊者通過對特定流水印的嵌入方式、參數(shù)選擇和特征變化等進(jìn)行深入研究,則有可能移除、恢復(fù)數(shù)據(jù)流中所嵌入的水印信息,甚至將水印信息復(fù)制到其他數(shù)據(jù)流中.
基于攻擊者所掌握資源和自身能力的不同,可將攻擊者分為4類:
1) 第1類攻擊者只能觀察到已嵌入水印的已標(biāo)記數(shù)據(jù)流.
攻擊者能力最弱,只能觀察到已標(biāo)記數(shù)據(jù)流(如圖1所示),但檢測要求低、方便部署、實(shí)用性較好.

Fig. 1 Level 1 attacker can only observe the watermarked flow圖1 第1類攻擊者只能觀察已標(biāo)記數(shù)據(jù)流
為檢測直序擴(kuò)頻(DSSS)流水印,Jia等人[44-45]提出一種基于單條數(shù)據(jù)流的攻擊方案——均方自相關(guān)(mean-square autocorrelation, MSAC)攻擊.Luo等人[46]提出基于傳輸控制協(xié)議(transmission control protocol, TCP)流控制機(jī)制的DSSS流水印移除方法.Lin等人[47]針對RAINBOW和SWIRL流水印技術(shù),依據(jù)其特定的時延處理方式引起的時延差異分別提出相應(yīng)的輸出檢測(output-only detection)方法.
2) 第2類攻擊者可以觀察到已嵌入水印的已標(biāo)記數(shù)據(jù)流,并且知道原始數(shù)據(jù)流的特定特性.
攻擊者可通過統(tǒng)計方法觀察特定特性(如IPD的經(jīng)驗分布)是否偏離原始數(shù)據(jù)流來揭示水印的存在性.
Kiyavash等人[48-49]提出多流攻擊(multi-flow attack, MFA),該攻擊對IBW,ICBW,DSSS流水印技術(shù)均有效,還可恢復(fù)出水印參數(shù)、將水印從已標(biāo)記數(shù)據(jù)流中移除.對于基于IPD的流水印技術(shù),數(shù)據(jù)流IPD的先驗分布不應(yīng)以較高的概率改變,可通過K-S(Kolmogorov-Simirnov)測試[27-28]來檢測嵌入水印的已標(biāo)記數(shù)據(jù)流.
3) 第3類攻擊者可以觀察到已嵌入水印的已標(biāo)記數(shù)據(jù)流,并且擁有特性已被改變過的原始數(shù)據(jù)流.
Luo等人[50]提出BACKLIT檢測系統(tǒng),可利用請求響應(yīng)時間、IPD和突發(fā)長度等特性來檢測IBW,ICBW,SWIRL,RAINBOW這4種典型流水印技術(shù).
4) 第4類攻擊者可以觀察到已嵌入水印的已標(biāo)記數(shù)據(jù)流和原始數(shù)據(jù)流.
該類攻擊者因為具備更高的訪問權(quán)限(如圖2所示),在檢測水印存在性時相對容易一些.

Fig. 2 Level 4 attacker can observe the watermarked flow and the original flow圖2 第4類攻擊者能觀察已標(biāo)記數(shù)據(jù)流和原始數(shù)據(jù)流
Peng等人[51]對基于IPD的概率流水印技術(shù)進(jìn)行深入研究,提出一種基于相鄰跳板間數(shù)據(jù)包延遲的時間分析攻擊技術(shù)——PNR(Peng Ning Reeves)攻擊.Lin等人[47]針對RAINBOW和SWIRL流水印技術(shù),依據(jù)其特定的時延處理方式引起的時延差異提出相應(yīng)的已知流攻擊(known flow attack)技術(shù).
由于第4類攻擊模型對攻擊者的要求比較高,需要攻擊者能夠觀察到網(wǎng)絡(luò)中的任意數(shù)據(jù)流,在實(shí)際網(wǎng)絡(luò)中很難實(shí)現(xiàn).
另外值得注意的是,大部分攻擊者模型都是采用單條已標(biāo)記數(shù)據(jù)流進(jìn)行攻擊或檢測,而多流攻擊則采用多條已標(biāo)記數(shù)據(jù)流進(jìn)行聯(lián)合檢測.
本節(jié)主要介紹針對網(wǎng)絡(luò)流水印技術(shù)的典型攻擊思路、攻擊對象、攻擊效果等.
Kiyavash等人[49]對基于時間間隔[34]、基于間隔重心[8]和基于直序擴(kuò)頻[20]的3種流水印技術(shù)進(jìn)行研究后發(fā)現(xiàn),由于這些技術(shù)將數(shù)據(jù)流分割成不同的時間間隔,會導(dǎo)致數(shù)據(jù)流間產(chǎn)生時間依賴性.未嵌入水印的多條數(shù)據(jù)流在單位時間內(nèi)無數(shù)據(jù)包到達(dá)的概率非常小,而多條嵌入水印后的已標(biāo)記數(shù)據(jù)流則呈現(xiàn)明顯的靜默間隔(即單位時間內(nèi)無數(shù)據(jù)包到達(dá),如圖3和圖4所示),從而使得多流攻擊者通過收集和觀察多條已標(biāo)記數(shù)據(jù)流造成的靜默間隔或低速間隔可有效檢測流水印的存在性.

Fig. 3 10 flows before and after IBW watermark圖3 嵌入IBW流水印之前和之后的10條數(shù)據(jù)流

Fig. 4 Average rate of 10 flows after DSSS watermark圖4 嵌入DSSS流水印后10條數(shù)據(jù)流的平均速率
以流水印的存在性檢測為基礎(chǔ),多流攻擊還可將水印信息從已標(biāo)記數(shù)據(jù)流中移除,甚至恢復(fù)出流水印信息及相關(guān)參數(shù).
Jia等人[44]提出MSAC攻擊方式來檢測DSSS流水印的存在性.由于DSSS流水印技術(shù)在調(diào)制多比特水印信號時采用了同一偽隨機(jī)(pseudo-noise,PN)碼,使得標(biāo)記數(shù)據(jù)流具有自相似性,使得攻擊者通過單條標(biāo)記數(shù)據(jù)流的流量速率時間序列的MSAC來檢測惡意DSSS流水印(如圖5和圖6所示),即使對其所用PN碼毫無所知.

Fig. 5 Workflow of detecting DSSS watermark圖5 DSSS流水印檢測流程

Fig. 6 Detecting DSSS watermark over Tor圖6 檢測Tor之上的DSSS流水印
該攻擊方案復(fù)雜度低,比基于多流攻擊的DSSS流水印檢測方案[49]更加靈活和準(zhǔn)確.
Peng等人[51]指出K-S測試可有效檢測基于IPD的流水印技術(shù)[13].嵌入水印后數(shù)據(jù)流中的數(shù)據(jù)包間隔到達(dá)時延的分布相當(dāng)于正常分布和獨(dú)立分布的相加.而K-S測試可用于確定樣本是否來自特定的分布,確定2個樣本(或1個樣本和1個分布)是否是不同的,且K-S測試是與分布無關(guān)的,即該測試不依賴于特定的分布.因此,K-S測試可應(yīng)用于不同分布的不同類型流量.K-S測試統(tǒng)計測量2個經(jīng)驗分布函數(shù)(empirical distribution function)之間的最大距離為max|S1(x)-S2(x)|,其中S1和S2是2個樣本的經(jīng)驗分布函數(shù).
Peng等人[51]提出一種針對基于IPD的概率流水印技術(shù)的基于相鄰跳板間數(shù)據(jù)包延遲的時間分析攻擊技術(shù)——PNR攻擊.
首先采用期望最大化(expectation maximization, EM)算法估計量化步長(quantization step)和水印延遲比例;接著使用貝葉斯判決規(guī)則(Bayes decision rule)識別被延遲的已標(biāo)記數(shù)據(jù)包;然后針對水印嵌入的4種不同情況分別給出了水印恢復(fù)和復(fù)制的具體步驟,使得攻擊者能在某些情況下從跳板鏈中移除水印或向非跳板鏈中復(fù)制水印.
在評估水印檢測率、誤報率及延遲數(shù)據(jù)包最小數(shù)量之后,通過序列概率比測試(sequential proba-bility ratio test)來檢測水印的存在性,可實(shí)時確認(rèn)跳板鏈中是否被嵌入水印.
為攻擊針對匿名通信系統(tǒng)的流水印技術(shù),傅翀等人[52]提出時延規(guī)范化(delay normalization)攻擊方法.該方法將數(shù)據(jù)流中所有數(shù)據(jù)包的時延間隔調(diào)整至一個固定值(如圖7所示),防止追蹤者嵌入水印信息,從而達(dá)到破壞流關(guān)聯(lián)的目的.

Fig. 7 The schematic of inter-packet delay normalization圖7 時延規(guī)范化攻擊示意圖
基于DSSS流水印的追蹤者通過電磁干擾調(diào)制無線通信流量的速率向其中嵌入水印來追蹤惡意用戶,F(xiàn)u等人[19]借鑒信號處理理論(signal processing theory),使用數(shù)字過濾器(digital filter)將攻擊者所引入的頻率過濾掉,進(jìn)而能有效保護(hù)無線Mix網(wǎng)絡(luò)以抵御該追蹤方式.
通過對DSSS流水印技術(shù)的研究,Luo等人[46]發(fā)現(xiàn):1)與信號處理中的波幅調(diào)制一樣,該技術(shù)會造成標(biāo)記數(shù)據(jù)流產(chǎn)生低吞吐量和高吞吐量的交替周期;2)不但不能增強(qiáng)流水印的隱蔽性,PN碼反而會增加被檢測到的概率,因其提高了低吞吐量周期的次數(shù);3)在擴(kuò)頻無線通信時,無線信號被擴(kuò)展到寬頻帶區(qū)域,而該技術(shù)將水印嵌入到單條數(shù)據(jù)流中,使得單流檢測成為可能.
基于此,通過定位數(shù)據(jù)流中的低吞吐量周期,然后檢測其中的異常序列(如圖8所示),提出基于TCP流控制機(jī)制的DSSS流水印移除方法,使得終端用戶可有效移除數(shù)據(jù)流中的擴(kuò)頻流水印,且不需要中間路由器、代理或中繼節(jié)點(diǎn)的支持.

Fig. 8 Throughput of a DSSS watermarked flow through Tor network圖8 通過Tor網(wǎng)絡(luò)的DSSS已標(biāo)記數(shù)據(jù)流的吞吐量
基于包時間的流水印技術(shù)會導(dǎo)致TCP數(shù)據(jù)流的內(nèi)在時間特性發(fā)生可觀察的改變.針對RAINBOW與SWIRL等流水印技術(shù),Luo等人[50]提出BACKLIT檢測系統(tǒng).采用請求響應(yīng)時間、IPD和突發(fā)長度等5種指標(biāo)(如表2所示),足以檢測針對塊傳輸(bulk transfer)和交互式流量的IBW,ICBW,SWIRL,RAINBOW這4種典型流水印技術(shù).

Table 2 Metrics Used by BACKLIT to Detect Timing-Based Flow Watermarks表2 BACKLIT為檢測基于包時間的流水印所采用的指標(biāo)

Fig. 9 The distributions of metrics R in normal HTTP flows and those in HTTP flows watermarked by IBW using different settings圖9 正常HTTP流和被不同設(shè)置IBW水印嵌入后的HTTP流在指標(biāo)R的分布差異
下面以IBW流水印的檢測為例進(jìn)行介紹.假設(shè)ξ是在BACKLIT檢測系統(tǒng)和遠(yuǎn)程服務(wù)器之間的最小往返時延(round-trip time, RTT).在超文本傳輸協(xié)議(HTTP)塊傳輸流量下,BACKLIT通過指標(biāo)R來檢查IBW流水印的存在性.指標(biāo)R表示數(shù)據(jù)包IPD大于特定門限值(正常流量中數(shù)據(jù)包IPD大于ξ的集合的均值和方差之和)的積累率(accumulative rate).正常HTTP流和被不同設(shè)置IBW水印嵌入后的HTTP流在指標(biāo)R的分布存在顯著差異(如圖9所示),因此可有效檢測IBW流水印.
在安全外殼(secure shell, SSH)交互式流量下,BACKLIT通過指標(biāo)T來檢查IBW流水印的存在性.指標(biāo)T表示RTT大于特定門限值(正常流量中數(shù)據(jù)包往返時延大于ξ的集合的均值和方差之和)的積累率.正常SSH流和被不同設(shè)置IBW流水印嵌入后的SSH流在指標(biāo)T的分布也存在顯著差異(如圖10所示),可用于有效檢測IBW流水印.

Fig. 10 The distributions of metrics T in normal SSH flows and those in SSH flows watermarked by IBW using different settings圖10 正常SSH流和被不同設(shè)置IBW水印嵌入后的SSH流在指標(biāo)T的分布差異
BACKLIT檢測系統(tǒng)可以很容易地部署于跳板和匿名網(wǎng)絡(luò)系統(tǒng)(如Tor),因為它不依賴于強(qiáng)大的攻擊者能力假設(shè),且可以主動或被動模式實(shí)現(xiàn).
Lin等人[47]提出針對RAINBOW和SWIRL流水印的已知流攻擊方式.已知流攻擊中,攻擊者可以觀察任意數(shù)據(jù)流,可以觀察獲得嵌入水印信息之前和之后的數(shù)據(jù)流,使其有能力來計算傳輸網(wǎng)絡(luò)與水印嵌入器所施加的真實(shí)時延,進(jìn)而有利于檢測基于包時間的流水印技術(shù).
1) RAINBOW流水印檢測
為檢測RAINBOW流水印,就需要區(qū)分向量w+d和d之間的差異,其中d是服從拉普拉斯分布(Laplacian distribution)Lap(0,β)的正常時延,w是嵌入水印信息造成的時延.
檢測算法為:使用一個移動時間窗口(moving time window)來掃描數(shù)據(jù)包到達(dá)時間,在該窗口的[-β4,β4]范圍內(nèi)計算時延抖動的比例.如果該比例低于門限值q,則標(biāo)記該窗口內(nèi)的數(shù)據(jù)包為“已標(biāo)記”.
該檢測方式可以使用單條數(shù)據(jù)流和多條數(shù)據(jù)流來檢測RAINBOW流水印.
2) SWIRL流水印檢測
為檢測SWIRL流水印,攻擊者使用均勻分布流量來與受控主機(jī)建立連接,即每秒均勻發(fā)送K個數(shù)據(jù)包.該類數(shù)據(jù)流的間隔質(zhì)心一定會落在[12,12+1K]之間,且與初始偏移無關(guān).只要K足夠大,量化質(zhì)心(quantized centroid)就不會改變.因此,每個已標(biāo)記數(shù)據(jù)流會擁有同樣的清除間隔(cleared interval)與占用間隔(occupied interval).通過從不同的數(shù)據(jù)流中觀察此類模式,提出類似于多流攻擊的新攻擊,用于檢測SWIRL流水印.值得注意的是,多流攻擊是基于時間間隔的,而此攻擊是基于數(shù)據(jù)包的.
輸出檢測[47]只能獲取水印嵌入后的已標(biāo)記數(shù)據(jù)流,一般在單條數(shù)據(jù)流上開展攻擊.
1)RAINBOW流水印檢測
假設(shè)水印信息不是持續(xù)不斷地嵌入到已標(biāo)記數(shù)據(jù)流中,即已標(biāo)記數(shù)據(jù)流中應(yīng)包含已嵌入部分(marked segment)和未嵌入部分(unmarked seg-ment),那么通過抽樣可發(fā)現(xiàn)一些異常.RAINBOW流水印嵌入之前和之后的數(shù)據(jù)流的IPD分布會發(fā)生大的偏差(如圖11所示).隨著RAINBOW流水印調(diào)制幅度和長度的增加,其被檢測到的概率也在增加.

Fig. 11 Histogram of the first 2 000 IPDs of one flow before and after being watermarked圖11 1條數(shù)據(jù)流嵌入水印之前和之后的前2 000個IPD的直方圖
2) SWIRL流水印檢測
通過對SWIRL流水印的研究發(fā)現(xiàn):①因為間隔選擇算法的問題,標(biāo)記間隔(mark interval)通常會位于整個水印周期的后部.直觀地,64個間隔中第1個間隔一定是基準(zhǔn)間隔(base interval),而第64個間隔一定是標(biāo)記間隔,最后幾個間隔通常都是標(biāo)記間隔.②初始偏移通常不足以打破標(biāo)記間隔的同步.
Lin等人[47]測試了清除子間隔(sub-interval)和占用子間隔的分布以及它們之間的相對位置,每個指定間隙(slot)與鄰居指定間隙的距離大于1.5倍子間隔長度的概率大于75%,這種情況稱之為孤立(isolation),即在已標(biāo)記區(qū)域的數(shù)據(jù)包要么與鄰居數(shù)據(jù)包較近(因它們分配在同一間隙內(nèi)),要么與其他數(shù)據(jù)包相隔較遠(yuǎn).因為孤立,已標(biāo)記間隔中的數(shù)據(jù)包傾向于組成短時的組.根據(jù)這些特性,可有效檢測SWIRL流水印.
Lin等人[47]對復(fù)制攻擊(如圖12所示)進(jìn)行了研究,可以對SWIRL流水印在不了解水印參數(shù)情況下進(jìn)行不完美的(imperfectly)復(fù)制.通過對SWIRL的研究發(fā)現(xiàn):①當(dāng)小部分?jǐn)?shù)據(jù)包丟失時,間隔質(zhì)心并不會改變;②SWIRL解碼器僅觀察1個數(shù)據(jù)包是否出現(xiàn)在右側(cè)間隙,而并不需要填充所有的指定間隙.

Fig. 12 The copy attack game圖12 復(fù)制攻擊示意圖
為了能復(fù)制其中的水印信息,攻擊者只需要按照前面記錄的時間模板對數(shù)據(jù)包進(jìn)行延遲即可.SWIRL流水印的提取算法會進(jìn)行自同步,因此攻擊者無需擔(dān)心這些水印信息在數(shù)據(jù)流中的真實(shí)位置.復(fù)制攻擊的工作流程如圖13所示.該復(fù)制攻擊可實(shí)時運(yùn)行,只需要2個小緩存區(qū).

Fig. 13 The best-effort copy attack on SWIRL scheme圖13 針對SWIRL方案的盡力而為的復(fù)制攻擊
目前流水印技術(shù)所面臨的主要攻擊、攻擊形式及攻擊者模型如表3所示,目前針對流水印技術(shù)的攻擊呈現(xiàn)以下特點(diǎn):
1) 從針對單一流水印的攻擊到針對多種流水印的攻擊發(fā)展,攻擊適用范圍逐步增大.如2009年提出的MSAC攻擊只用于檢測DSSS這一特定流水印,而2011年提出的BACKLIT檢測系統(tǒng)則用于檢測IBW,ICBW,SWIRL,RAINBOW這4種流水印.
2) 從單一攻擊形式向多重攻擊形式發(fā)展,攻擊能力逐步提升.如2006年提出的K-S測試只能對IPD流水印進(jìn)行存在性檢測,而2008年提出的多流攻擊不但可以針對IBW,ICBW,DSSS這3種典型流水印進(jìn)行存在性檢測,還可將水印信息從已標(biāo)記數(shù)據(jù)流中移除,甚至恢復(fù)出流水印信息及相關(guān)參數(shù).
3) 針對的攻擊對象由傳統(tǒng)流水印到新型流水印逐步演進(jìn).如K-S測試(2006年)針對的對象為IPD(2003年)傳統(tǒng)流水印;多流攻擊(2008年)針對的對象為IBW(2007年)、ICBW(2007年)和DSSS(2007年)傳統(tǒng)流水印;MSAC攻擊(2009年)針對的對象為DSSS(2007年)傳統(tǒng)流水印,而2012年Lin等人[47]提出可檢測RAINBOW和SWIRL新型流水印(分別提出于2009年和2011年)的已知流攻擊和輸出檢測,以及針對SWIRL流水印的復(fù)制攻擊.
4) 針對流水印的攻擊呈現(xiàn)不對稱性,部分流水印存在多種攻擊方式,而部分新型流水印則無針對性攻擊手段出現(xiàn).如IBW流水印面臨多流攻擊、BACKLIT的檢測、移除與恢復(fù),DSSS流水印面臨多流攻擊、MSAC攻擊、水印移除的檢測、移除與恢復(fù),而2013年提出的QIM流水印[31]和BotMosaic協(xié)同流水印[4]、2015年提出的基于包交叉分組間隔質(zhì)心雙盲流水印[41]和2016年提出的EICBSSW流水印[43]等則尚未發(fā)現(xiàn)有效的攻擊技術(shù)和手段.

Table 3 Comparison of Technologies of Attacks onFlow Watermarks
為提升流水印的隱蔽性和抗攻擊能力,現(xiàn)有流水印技術(shù)已經(jīng)提出一些解決方案來應(yīng)對和抵御多流攻擊、MSAC攻擊、K-S測試、BACKLIT檢測等檢測與攻擊.
針對多流攻擊,Houmansadr等人[53]提出嵌入位置隨機(jī)化方法,提出抗多流攻擊、基于間隔重心的流水印(MAR-ICBW)方案,通過將不同數(shù)據(jù)流中的水印嵌入位置進(jìn)行隨機(jī)化處理,可有效消除標(biāo)記數(shù)據(jù)流之間的依賴關(guān)系,因此能有效抵御多流攻擊.
嵌入位置隨機(jī)化方法會增加水印檢測器的計算復(fù)雜性和流水印技術(shù)的誤報率,針對該問題,王振興等人[54]提出基于水印信息重排序的多流攻擊反制方法(multi-flow attack resistance method based on watermark bit reordering, MFAR-WBR),對于不同的目標(biāo)數(shù)據(jù)流,采用不同的隨機(jī)種子來隨機(jī)選擇水印信息的不同排列進(jìn)行嵌入,有效消除了已標(biāo)記數(shù)據(jù)流之間的依賴關(guān)系.與嵌入位置隨機(jī)化方法相比,MFAR-WBR誤報率低,而且對水印檢測器性能影響小,是一種抵御多流攻擊的有效方法.
Houmansadr等人[17]提出的SWIRL方案采用“一流一印”方法,針對不同的數(shù)據(jù)流嵌入不同的水印信息,使得多條數(shù)據(jù)流的直方圖不再呈現(xiàn)可重復(fù)的模式,進(jìn)而可抵御多流攻擊.此外,Houmansadr等人[17]拓展了流水印技術(shù)的應(yīng)用場景,將SWIRL應(yīng)用于防御Tor擁塞攻擊[55].
針對MSAC攻擊,主要解決思路是“一流一碼”,對不同的數(shù)據(jù)流采取不同的PN碼,消除已標(biāo)記數(shù)據(jù)流的自相似性.Huang等人[21]和Pan等人[22]提出基于長PN碼的直序擴(kuò)頻流水印(long PN code based DSSS watermarking, LPNC-DSSS)技術(shù),每個水印比特都是用長PN碼的一部分來調(diào)制(如圖14所示),可抵御MSAC攻擊.另外,可使用大量長PN碼在不同階段進(jìn)行多流并行追蹤,而不用擔(dān)心PN碼之間的干擾.

Fig. 14 Shift of long PN code圖14 長PN碼移位
針對K-S測試,Houmansadr等人[27-28]提出的RAINBOW非盲流水印技術(shù)對K-S測試不可見.因為RAINBOW方案是非盲的(如圖15所示),為嵌入水印信息而對目標(biāo)數(shù)據(jù)流所造成的延遲就比較小,K-S測試難以準(zhǔn)確檢測RAINBOW流水印的存在性.

Fig. 15 Model of RAINBOW network flow watermarking scheme圖15 RAINBOW網(wǎng)絡(luò)流水印方案模型
張連成等人[56]引入擴(kuò)頻編碼,提出一種新的隱形流水印(invisible and private flow watermarking, IPFW)方案,其所使用的數(shù)據(jù)包對都是隨機(jī)選擇產(chǎn)生的,且對數(shù)據(jù)包所造成的時間延遲較小,某些選擇的數(shù)據(jù)包根本就不延遲,與網(wǎng)絡(luò)抖動處于同一數(shù)量級,因此K-S測試很難判斷數(shù)據(jù)流中是否被嵌入水印.
部分流水印技術(shù)在設(shè)計時的目標(biāo)是抵御多種攻擊方式.
張璐等人[37]提出基于時隙質(zhì)心的流水印(interval centroid based flow watermarking, ICBFW)技術(shù),可有效抵抗多流攻擊和MSAC攻擊.為抵御多流攻擊,對不同的數(shù)據(jù)流使用不同的時隙組分配方式,攻擊者一旦無法獲知準(zhǔn)確的時隙組分配方式,也就難以準(zhǔn)確定位承載特定信號的水印載體在數(shù)據(jù)流中的具體位置,從而無法簡單地通過疊加多條嵌入水印的數(shù)據(jù)流放大數(shù)據(jù)流特征的改變,進(jìn)而發(fā)現(xiàn)流水印的存在.在ICBFW流水印技術(shù)中,由于時隙組是隨機(jī)分配的,攻擊者在不確定時隙組具體分配方式的情況下難以得到相應(yīng)碼片所具體對應(yīng)的時隙質(zhì)心,進(jìn)而無法判斷數(shù)據(jù)流是否在短時間內(nèi)出現(xiàn)了自相似性,因此該技術(shù)對MSAC攻擊具有天然的免疫力.
張連成等人[23]提出可抵御MSAC和多流攻擊的擴(kuò)頻流水印(MSAC and multi-flow attacks resistant spread spectrum watermarking, MMAR-SSW)方案,使用多個正交PN碼來擴(kuò)展信號的不同比特位,并使用相同的PN碼序列來解擴(kuò)以恢復(fù)信號(如圖16所示).因在嵌入水印信息時采用隨機(jī)選擇的嵌入位置,可抵御多流攻擊.此外,由于這些PN碼是正交的,因此標(biāo)記數(shù)據(jù)流速率的時間序列的均方自相關(guān)就不會顯現(xiàn)出峰值,進(jìn)而可有效抵御MSAC攻擊.
通過將IBW流水印技術(shù)和擴(kuò)頻編碼技術(shù)相結(jié)合,張連成等人[57]提出基于時間間隔的擴(kuò)頻流水印(interval-based spread spectrum watermarking,IBSSW)技術(shù)(如圖17所示),使用多個正交PN碼作為水印嵌入位置隨機(jī)化的隨機(jī)種子,能抵御多流攻擊和MSAC攻擊.

Fig. 16 Process of spreading and despreading the MMAR-SSW watermark圖16 MMAR-SSW方案的擴(kuò)頻與解擴(kuò)

Fig. 17 IBSSW layered model圖17 IBSSW流水印分層模型
Gong等人[30-31]使用量化索引調(diào)制(quantiza-tion index modulation, QIM)來嵌入稀疏水印(sparse watermark)信息,并通過添加糾錯碼來應(yīng)對包丟失、包加入可能引入的水印不同步和提取錯誤問題,且可應(yīng)對大量的包丟失和包添加情況.實(shí)際測試結(jié)果表明,可抵御K-S測試、多流攻擊和BACKLIT的檢測.
Lin等人[42]提出基于間隔組質(zhì)心匹配的網(wǎng)絡(luò)流水印方法(network flow watermarking method based on centroid matching of interval group,NFWM-CMIG),基于數(shù)據(jù)包IPD質(zhì)心和密鑰來修改目標(biāo)數(shù)據(jù)流的時序信息,可更好抵抗數(shù)據(jù)包延遲、數(shù)據(jù)包刪除和數(shù)據(jù)包插入.經(jīng)過K-S測試、多流攻擊和KLD(kullback-leibler divergence)典型檢測工具的檢測,驗證了其良好的不可檢測性.
當(dāng)前流水印技術(shù)可抵御的各類攻擊匯總表如表4所示,目前主流的網(wǎng)絡(luò)流水印技術(shù)在抵御各類安全威脅時呈現(xiàn)以下特點(diǎn):
1) 從抵御單個攻擊向抵御多個攻擊演進(jìn),防御能力逐步提升.如Houmansadr等人[53]提出的MAR-ICBW方案和王振興等人[54]提出的水印信息重排序方法只可抵御多流攻擊這一種攻擊,而張璐等人[37]提出的ICBFW技術(shù)和張連成等提出的MMAR-SSW方案[23]與IBSSW技術(shù)[57]可抵御多流攻擊和MSAC攻擊這2種攻擊,Gong等人[30-31]提出的QIM流水印則可抵御K-S測試、多流攻擊和BACKLIT檢測3種攻擊的檢測.
2) 現(xiàn)有防御手段側(cè)重于抵御檢測手段,提升流水印隱蔽性,而對移除、恢復(fù)和復(fù)制等其他手段缺乏足夠關(guān)注.現(xiàn)有的防御手段主要針對的是多流攻擊、MSAC攻擊、K-S測試等流水印存在性檢測技術(shù),而對移除(會中斷追蹤者的追蹤)、恢復(fù)(會泄露流水印信息及參數(shù)等信息)、復(fù)制(會誤導(dǎo)追蹤者,使其追蹤到錯誤的攻擊源)等攻擊手段則缺乏有效抵御手段.
3) 現(xiàn)有防御手段集中于抵御傳統(tǒng)檢測手段,缺乏對最新檢測手段的抵御技術(shù)和方法.目前大多數(shù)防御手段所針對的攻擊方式集中于多流攻擊、MSAC攻擊、K-S測試等流水印存在性傳統(tǒng)檢測技術(shù),而對已知流攻擊、輸出檢測等新型檢測手段仍缺乏有效抵御手段.
Table4FlowWatermarkingTechnologiesWhichCanResistOneorMoreAttacks

表4 流水印技術(shù)可抵御攻擊匯總表
隱蔽性是流水印技術(shù)的典型特征和要求,然而,攻擊者為逃避追蹤,會對其攻擊數(shù)據(jù)流中可能存在的流水印信息進(jìn)行檢測、移除、恢復(fù)和復(fù)制等攻擊.為提高流水印的抗攻擊能力,部分流水印技術(shù)已經(jīng)針對多流攻擊、MSAC攻擊和K-S測試等檢測與攻擊方法進(jìn)行了研究和防范.可以預(yù)見,流水印的攻擊與抗攻擊研究將呈現(xiàn)出矛和盾的反復(fù)交替過程.在流水印安全威脅及對策方面,還存在以下問題:
1) 流水印抗攻擊能力有待進(jìn)一步加強(qiáng).目前針對時延規(guī)范化攻擊、已知流攻擊、輸出檢測、復(fù)制攻擊等仍缺乏有效的抵御方式和手段.如何進(jìn)一步提高網(wǎng)絡(luò)流水印技術(shù)的隱蔽性與抗攻擊能力是亟待解決的難題.目前可參考的主要策略有:調(diào)整的時延值盡可能小、盡可能對所嵌入的位置進(jìn)行隨機(jī)化、對嵌入位置的選擇范圍盡可能小等,當(dāng)然在使用具體策略時需要在魯棒性與隱蔽性之間做出取舍和權(quán)衡.
2) 流水印隱蔽性的統(tǒng)一評價體系與指標(biāo)缺乏.缺乏對流水印隱蔽性整體的理論上限與下限的相關(guān)研究,目前評價流水印技術(shù)隱蔽性的指標(biāo)多樣,相互之間難以有效對比,致使很難評價不同流水印技術(shù)之間的優(yōu)劣,不利于流水印技術(shù)的改善與革新.郭曉軍等人[58]提出對隱蔽性、水印容量、時空開銷、提取難度、魯棒性、實(shí)用性等評價指標(biāo)進(jìn)行有效量化,然后再借鑒現(xiàn)有綜合評價方法(如主成分分析法、數(shù)據(jù)分組絡(luò)分析法、模糊評價法等)對量化的指標(biāo)進(jìn)行有機(jī)融合以生成綜合評價模型的研究思路,為開展后繼研究奠定了基礎(chǔ).
3) 其他載體及多重載體流水印技術(shù)的攻擊手段亟待研究.現(xiàn)有攻擊技術(shù)多針對的是基于包時間的流水印技術(shù),而針對基于長度-時間的流水印[5]、多維流水印[59]、包序流水印[60]等流水印技術(shù)的檢測與攻擊手段尚缺乏研究.

ZhangLiancheng, born in 1982. PhD, associate professor. His main research interests include flow watermarking, IPv6 network security and SDN security.

WangYu, born in 1984. PhD, lecturer. His main research interests include flow watermarking and inter domain routing system security (stonchor@163.com).

KongYazhou, born in 1989. PhD candidate. His main research interests include IPv6 network security (coyote0916@163.com).

QiuHan, born in 1981. PhD, associate professor. Her main research interests include Internet routing security, modeling and evaluation of network security (qiuhan410@aliyun.com).