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

基于Markov模型的HTTP參數(shù)排序隱蔽信道檢測(cè)方法

2020-02-19 11:26:44沈國(guó)良翟江濤戴躍偉
計(jì)算機(jī)工程 2020年2期
關(guān)鍵詞:排序檢測(cè)模型

沈國(guó)良,翟江濤,戴躍偉

(1.江蘇科技大學(xué) 電子信息學(xué)院,江蘇 鎮(zhèn)江 212003; 2.南京信息工程大學(xué) 計(jì)算機(jī)與軟件學(xué)院,南京 210000)

0 概述

1973年LAMPSON提出“covert channel”概念,其最初的定義是建立在多安全等級(jí)(Multi-Level Security,MLS)的自動(dòng)化信息系統(tǒng)(Automated Information System,AIS)中,主要針對(duì)在不同主體和對(duì)象間的訪問(wèn)控制及安全分類。如今,其主要針對(duì)高度互聯(lián)的網(wǎng)絡(luò),實(shí)體為網(wǎng)絡(luò)應(yīng)用程序或網(wǎng)絡(luò)節(jié)點(diǎn)[1],因而隱蔽信道的另一個(gè)更廣泛更具適應(yīng)性的定義為“策略上被拒絕但性質(zhì)上允許的通信信道”。根據(jù)該定義,隱蔽信道可以延伸到網(wǎng)絡(luò)傳輸?shù)母鱾€(gè)協(xié)議中,尤其是占據(jù)一半流量的HTTP協(xié)議,成為隱蔽通信的良好載體。

HTTP隱蔽信道分為存儲(chǔ)式隱蔽信道[2]、時(shí)間式隱蔽信道[3]和網(wǎng)絡(luò)行為隱蔽信道[4]。存儲(chǔ)式隱蔽信道主要是利用HTTP協(xié)議報(bào)文中部分不關(guān)鍵的字段名或值嵌入隱密消息以實(shí)現(xiàn)隱蔽通信,如將某些保留、可選用或未定義的字段修改為經(jīng)過(guò)編碼的隱蔽數(shù)據(jù)[5]。傳統(tǒng)的HTTP存儲(chǔ)式隱蔽信道包括對(duì)URI[6]、Cookies[7]、User-Agent[8]以及網(wǎng)頁(yè)重定向等元素進(jìn)行編碼嵌入隱蔽信息實(shí)現(xiàn)隱蔽通信。時(shí)間式隱蔽信道主要利用網(wǎng)絡(luò)傳輸HTTP數(shù)據(jù)包的時(shí)間特性來(lái)隱藏信息[9],通常使用數(shù)據(jù)包的收發(fā)時(shí)間以及包間時(shí)延等特性,例如On-off是一種典型的時(shí)間式隱蔽信道[10],它由信息發(fā)送端和接收端約定一個(gè)時(shí)間間隔,在此期間若有數(shù)據(jù)包發(fā)送代表隱秘信息“1”,無(wú)數(shù)據(jù)包發(fā)送則代表隱秘信息“0”。網(wǎng)絡(luò)行為隱蔽信道往往是在用戶訪問(wèn)網(wǎng)絡(luò)的行為中編碼嵌入消息并表現(xiàn)為用戶的一系列操作[11],如LiHB[12]通過(guò)數(shù)學(xué)組合的編碼方式將N個(gè)請(qǐng)求分配到M條流中,接收端只要解碼不同流對(duì)應(yīng)的請(qǐng)求數(shù)量就能接收到隱蔽信息。

為了對(duì)抗隱蔽通信的非法使用,實(shí)現(xiàn)網(wǎng)絡(luò)安全的可管可控,研究者們也陸續(xù)研究各種檢測(cè)算法。文獻(xiàn)[13]提出網(wǎng)絡(luò)場(chǎng)景檢測(cè)方法為用戶提供使用潛在隱蔽信道的場(chǎng)景,但是面對(duì)實(shí)際網(wǎng)絡(luò)中的復(fù)雜場(chǎng)景,其檢測(cè)性能并不理想。文獻(xiàn)[14]通過(guò)基于直方圖的算法對(duì)正常通信時(shí)間序列與隱蔽通信的時(shí)間序列分別建模,并提出一種基于Kolmogorov-Smimov(KS)統(tǒng)計(jì)量的檢測(cè)算法。文獻(xiàn)[15]根據(jù)時(shí)間式隱蔽信道的特點(diǎn),提出檢測(cè)波形形狀的檢測(cè)方法。上述2種方法對(duì)數(shù)據(jù)包的包間間隔等時(shí)間特性進(jìn)行統(tǒng)計(jì)分析,取得了較好的檢測(cè)效果,但不適用于檢測(cè)網(wǎng)絡(luò)行為信道。文獻(xiàn)[16]提出基于校正熵的統(tǒng)計(jì)檢測(cè)方法,并取得良好的檢測(cè)率,但該方法并不能實(shí)現(xiàn)對(duì)存儲(chǔ)式信道的檢測(cè)。針對(duì)存儲(chǔ)式信道的檢測(cè),文獻(xiàn)[17-18]采用基于SVM的機(jī)器學(xué)習(xí)檢測(cè)算法,利用正常數(shù)據(jù)和含密數(shù)據(jù)的差異進(jìn)行檢測(cè);文獻(xiàn)[19]提出基于K-means聚類的檢測(cè)方法,對(duì)HTTP協(xié)議GET消息編碼的隱蔽信道進(jìn)行檢測(cè)。

HTTP協(xié)議中的參數(shù)排序隱蔽信道利用請(qǐng)求報(bào)文自身排序編碼隱蔽信息,而上述檢測(cè)方法主要通過(guò)包間間隔提取特定屬性,無(wú)法對(duì)該信道進(jìn)行檢測(cè)。因此,根據(jù)信道需要頻繁改變其報(bào)文的特性,本文提出一種基于Markov模型的HTTP參數(shù)排序隱蔽信道檢測(cè)方法。

1 HTTP協(xié)議中的隱蔽信道

HTTP是萬(wàn)維網(wǎng)能夠可靠交換文件(包括文本、聲音、圖像等各種多媒體文件)的重要基礎(chǔ)。HTTP的報(bào)文分為請(qǐng)求報(bào)文和響應(yīng)報(bào)文。HTTP請(qǐng)求報(bào)文由請(qǐng)求行、請(qǐng)求頭部和請(qǐng)求正文組成,如圖1所示。其中,請(qǐng)求頭部包含有關(guān)客戶端環(huán)境以及請(qǐng)求正文的有用信息。請(qǐng)求頭部由“關(guān)鍵字∶值”對(duì)組成,每行一對(duì),關(guān)鍵字和值之間使用英文符號(hào)“∶”分隔。采用Wireshark捕獲到的HTTP請(qǐng)求報(bào)文如圖2所示,其中Host、Connection、User-Agent及Accept等都是比較常見(jiàn)的報(bào)文信息,提供了使用瀏覽器類型、接收對(duì)象類型等信息。

圖1 HTTP請(qǐng)求報(bào)文的一般格式

圖2 Wireshark捕獲的HTTP請(qǐng)求包

HTTP協(xié)議的參數(shù)排序通信隱藏算法[20]對(duì)序列{Ai|0≤i

圖3 參數(shù)排序隱蔽通信的原理

該方法不會(huì)在HTTP報(bào)文中插入額外的字符,只是通過(guò)改變其原有的排序達(dá)到隱藏消息的目的。因?yàn)樵诓煌僮飨到y(tǒng)、瀏覽器下對(duì)于同一功能產(chǎn)生的HTTP報(bào)文表述形式差別很大,所以在HTTP報(bào)文中這些關(guān)鍵字經(jīng)常被忽略。因此,利用上述特性構(gòu)建的HTTP參數(shù)排序隱蔽信道,不會(huì)引起正常通信的異常,并且在少量樣本下,人們無(wú)法判斷該數(shù)據(jù)包是正常通信或者隱蔽通信引起的關(guān)鍵字缺失。但是該隱蔽信道的通信與正常通信的區(qū)別在于,隱蔽通信為了傳輸信息需要頻繁改變報(bào)文,而正常通信的報(bào)文通常變化不會(huì)很大,且變化頻率較低。假設(shè)HTTP數(shù)據(jù)包的報(bào)文對(duì)應(yīng)一種狀態(tài),那么隱蔽通信的狀態(tài)轉(zhuǎn)換將比正常通信更為頻繁。因此,可以通過(guò)大量數(shù)據(jù)建立正常通信和隱蔽通信的模型來(lái)衡量?jī)烧叩牟町愋?。Markov模型是一種成熟的統(tǒng)計(jì)模型,其核心思想是每個(gè)狀態(tài)值只取決于前面一個(gè)狀態(tài)而與其他狀態(tài)無(wú)關(guān)[21]。本文將數(shù)據(jù)包報(bào)文轉(zhuǎn)化為對(duì)應(yīng)的狀態(tài),通過(guò)建立正常通信和隱蔽通信的Markov模型狀態(tài)轉(zhuǎn)移概率矩陣,用相對(duì)熵來(lái)衡量?jī)烧咧g的差異。

2 基于Markov模型的檢測(cè)算法

2.1 Markov鏈

Markov鏈?zhǔn)且粋€(gè)時(shí)間和狀態(tài)都是離散的馬爾可夫過(guò)程。假設(shè)數(shù)據(jù)鏈X={x1,x2,…,xn}中任意一個(gè)變量xt的值都在有限集E={0,1,…,n}中,即當(dāng)n≥1時(shí),i1,i2,…,in∈E,則式(1)成立。

p{xn=in|xn-1=in-1,xn-2=in-2,…,x1=i1}=

p{xn=in|xn-1=in-1}

(1)

數(shù)據(jù)鏈X={x1,x2,…,xn}即為一個(gè)具有可數(shù)狀態(tài)的Markov鏈,其每個(gè)狀態(tài)值只取決于前面一個(gè)狀態(tài)而與其他狀態(tài)無(wú)關(guān)。對(duì)于任意i,j∈E,從時(shí)刻n-1到時(shí)刻n的轉(zhuǎn)移概率由式(2)給出。

p(xn=in|xn-1=in-1)={xn=j|xn-1=i}=pij

(2)

(3)

序列X={x1,x2,…,xn}的狀態(tài)轉(zhuǎn)移概率矩陣可由下式給出:

(4)

Markov鏈的初始狀態(tài)為:

Q={q1,q2,…,qδ}

(5)

其中,qi表示狀態(tài)值為i(i=1,2,…,δ)的概率,qi滿足式(6)。

(6)

其中,N表示序列的總長(zhǎng)度,Ni表示序列中狀態(tài)值為i的總個(gè)數(shù)。

在HTTP協(xié)議中,客戶端發(fā)送的請(qǐng)求報(bào)文中的關(guān)鍵字可能出現(xiàn)或者不出現(xiàn),將所有可能排列情況視為獨(dú)立狀態(tài),一個(gè)HTTP數(shù)據(jù)包的報(bào)文狀態(tài)就是一個(gè)隨機(jī)且有限的狀態(tài)集,其當(dāng)前狀態(tài)只與上一個(gè)狀態(tài)有關(guān),因此,可以使用Markov鏈構(gòu)建HTTP數(shù)據(jù)包的狀態(tài)模型。

在HTTP參數(shù)排序隱蔽信道中,每一個(gè)關(guān)鍵字的出現(xiàn)與否都是組成某一時(shí)刻狀態(tài)的因素,由于關(guān)鍵字種類繁多且正常通信中使用極少數(shù),為了便于呈現(xiàn),本文選取其中4個(gè)最為常見(jiàn)的關(guān)鍵字構(gòu)建隱蔽信道,分別為Host、Connection、Accept和User-Agent。通過(guò)HTTP數(shù)據(jù)包關(guān)鍵字的狀態(tài)對(duì)應(yīng)的二進(jìn)制序列,計(jì)算得到HTTP數(shù)據(jù)包的狀態(tài)位。

Ek=8×EHost+4×EConnection+2×EAccept+1×

EUser-Agent

(7)

由于每一個(gè)關(guān)鍵字都有2種取值,因此可計(jì)算得到HTTP數(shù)據(jù)包共有16種狀態(tài)位,即E={0,1,…,15}。

2.2 Markov轉(zhuǎn)移概率矩陣

對(duì)一個(gè)HTTP包數(shù)據(jù)集Tn={t1,t2,…,tn},根據(jù)式(3)和式(4)求得其Markov鏈狀態(tài)轉(zhuǎn)移概率矩陣,建模過(guò)程為:提取數(shù)據(jù)包中的關(guān)鍵字,轉(zhuǎn)化為二進(jìn)制序列,利用式(7)計(jì)算得到HTTP包的狀態(tài),訓(xùn)練并得到Markov模型轉(zhuǎn)移概率矩陣。因?yàn)橐獧z測(cè)信道是否為隱蔽信道,所以除了要建立用于比較的實(shí)際HTTP包Markov模型轉(zhuǎn)移概率矩陣,還要建立每一個(gè)待測(cè)數(shù)據(jù)集的Markov模型轉(zhuǎn)移概率矩陣。

2.3 本文檢測(cè)算法

本文采用相對(duì)熵對(duì)建立的模型進(jìn)行比較,相對(duì)熵可以用來(lái)衡量2個(gè)概率分布之間的差異。假設(shè)p(x)和q(x)是離散隨機(jī)變量X中的2個(gè)概率分布,則p和q的相對(duì)熵為:

(8)

p(x)和q(x)分布相同,則相對(duì)熵等于0;兩者之間差異越大,則相對(duì)熵越大。本文利用相對(duì)熵的定義來(lái)計(jì)算正常數(shù)據(jù)流和待測(cè)數(shù)據(jù)流的Markov模型的狀態(tài)轉(zhuǎn)移概率矩陣的差異,計(jì)算公式為:

(9)

2個(gè)矩陣的差異越大,則其相對(duì)熵越大。因此,可以通過(guò)設(shè)定閾值來(lái)判斷數(shù)據(jù)流是否異常,大于閾值則為隱蔽通信數(shù)據(jù)流,小于閾值則為正常通信數(shù)據(jù)流。正常通信數(shù)據(jù)流由于HTTP包的報(bào)文信息比較穩(wěn)定,沒(méi)有出現(xiàn)4個(gè)關(guān)鍵字均不出現(xiàn)的情況,所以部分狀態(tài)值的數(shù)量為0,導(dǎo)致當(dāng)利用式(3)和式(4)計(jì)算數(shù)據(jù)流轉(zhuǎn)移概率矩陣時(shí),出現(xiàn)0元素及部分元素?zé)o意義,從而無(wú)法用式(9)計(jì)算2個(gè)模型之間的相對(duì)熵。因此,設(shè)定這些元素為一個(gè)很小的概率pij=1.0×10-6。同樣,將這種方法應(yīng)用到待測(cè)數(shù)據(jù)流的轉(zhuǎn)移概率矩陣建立中。基于Markov模型的檢測(cè)算法總體流程如圖4所示。

圖4 本文算法檢測(cè)流程

3 實(shí)驗(yàn)與結(jié)果分析

本文實(shí)驗(yàn)收集40 000個(gè)正常HTTP數(shù)據(jù)包和20 000個(gè)異常數(shù)據(jù)包。正常數(shù)據(jù)包通過(guò)Fiddler捕捉用戶電腦與互聯(lián)網(wǎng)之間的HTTP通信得到。將待發(fā)送消息編碼成二進(jìn)制信息,并以每4位嵌入一個(gè)HTTP包,根據(jù)第1節(jié)介紹的隱蔽信道構(gòu)建方式,結(jié)合發(fā)送的二進(jìn)制信息利用Fiddler篡改正常數(shù)據(jù)包報(bào)文中的4個(gè)關(guān)鍵字,獲取異常數(shù)據(jù)包。實(shí)驗(yàn)首先通過(guò)模型訓(xùn)練設(shè)置合適的相對(duì)熵閾值,這是判斷數(shù)據(jù)流是否異常的關(guān)鍵;其次設(shè)定一個(gè)合適的窗口大小,因?yàn)榇翱谶^(guò)小容易減小待測(cè)模型與正常模型之間的差異,從而降低檢測(cè)效果,窗口過(guò)大會(huì)影響檢測(cè)速度;最后計(jì)算在正常數(shù)據(jù)流中嵌入50%~100%的異常數(shù)據(jù)包時(shí)的檢測(cè)率。

3.1 相對(duì)熵閾值的選定

本文實(shí)驗(yàn)分別取10 000個(gè)正常和含密的HTTP數(shù)據(jù)包作為訓(xùn)練集,其余用作測(cè)試集。以1 000窗口大小分割測(cè)試集為20組,含密數(shù)據(jù)和正常數(shù)據(jù)各10組。計(jì)算每一組中各個(gè)狀態(tài)值的數(shù)量,并求出10組數(shù)據(jù)的均值,結(jié)果如圖5所示。可以看出,異常數(shù)據(jù)包狀態(tài)值從0到9數(shù)量較為均勻,在100上下浮動(dòng),狀態(tài)值大于8的數(shù)據(jù)包數(shù)量均在50左右;正常數(shù)據(jù)包狀態(tài)值低于8的數(shù)量為0,這是因?yàn)檎?shù)據(jù)包中都包含Host關(guān)鍵字,并且大部分狀態(tài)值都是15。根據(jù)建立訓(xùn)練集的Markov轉(zhuǎn)移概率矩陣與實(shí)際模型求相對(duì)熵,結(jié)果如圖6所示。

圖5 每組中的狀態(tài)值數(shù)量均值

圖6 訓(xùn)練集與正常模型相對(duì)熵的值

從圖6可知,異常數(shù)據(jù)流與選定的實(shí)際模型之間相對(duì)熵較大,正常數(shù)據(jù)流則偏小,結(jié)合圖5中的結(jié)果,這是因?yàn)檎?shù)據(jù)流中狀態(tài)值為12、14和15的數(shù)據(jù)包占多數(shù),與實(shí)際模型差異較小,而異常數(shù)據(jù)流中各個(gè)狀態(tài)位的數(shù)據(jù)包較為均勻,與實(shí)際模型差異較大。其中,與異常數(shù)據(jù)流的最小相對(duì)熵值接近2.5,與正常數(shù)據(jù)流的最大相對(duì)熵值接近1.5,因此,設(shè)定閾值為2,即當(dāng)測(cè)試集與實(shí)際模型的相對(duì)熵值超過(guò)2時(shí),判定為異常數(shù)據(jù)流,否則為正常數(shù)據(jù)流。

3.2 窗口大小的選定

為了分析窗口大小對(duì)檢測(cè)率的影響,在設(shè)定相對(duì)熵閾值為2,按不同窗口對(duì)測(cè)試集切割分為若干組,計(jì)算其檢測(cè)率,結(jié)果如圖7所示。

圖7 不同窗口下的檢測(cè)率

從圖7可以看出,窗口較小對(duì)實(shí)驗(yàn)的檢測(cè)率影響較大。這是因?yàn)檩^小數(shù)據(jù)包構(gòu)建的異常數(shù)據(jù)流模型容易在局部與實(shí)際模型相似,大幅減小了相對(duì)熵的值。而當(dāng)窗口大于等于1 000時(shí),該方法均可取得較好的檢測(cè)效果,因此,可將窗口設(shè)置為1 000。

3.3 嵌入率對(duì)檢測(cè)結(jié)果的影響

嵌入率是指在一個(gè)數(shù)據(jù)流中包含的異常數(shù)據(jù)包占總數(shù)據(jù)包的比例。在相對(duì)熵閾值為2,窗口大小為1 000情況下,計(jì)算不同嵌入率下的檢測(cè)率和誤報(bào)率,結(jié)果如圖8所示。由于嵌入率較低時(shí),檢測(cè)率偏低,因此在圖8中只顯示嵌入率大于50%的數(shù)據(jù)。

圖8 不同嵌入率下的檢測(cè)率和誤報(bào)率

Fig.8 Detection rate and false alarm rate at different embedding rates

從圖8可以看出,嵌入率在50%至60%的區(qū)間內(nèi),檢測(cè)率較低。這是因?yàn)閿?shù)據(jù)包中大量正常數(shù)據(jù)包的存在,使得由狀態(tài)15向狀態(tài)15的轉(zhuǎn)移依舊占據(jù)主導(dǎo)地位,導(dǎo)致與實(shí)際模型計(jì)算相對(duì)熵時(shí)偏小,最終影響檢測(cè)率。在嵌入率不小于70%時(shí),所有狀態(tài)值的數(shù)量趨于平均,加大了與實(shí)際模型的差異,檢測(cè)率可以保持在97%以上。當(dāng)嵌入率為100%時(shí),檢測(cè)率高達(dá)99%,并且保持極低的誤報(bào)率。

4 結(jié)束語(yǔ)

本文分析基于HTTP的二進(jìn)制排序隱蔽信道特征,利用隱蔽通信的狀態(tài)轉(zhuǎn)換比正常通信更頻繁的特點(diǎn),將基于Markov模型的檢測(cè)方法用于隱蔽信道的檢測(cè),并以待測(cè)數(shù)據(jù)包和正常數(shù)據(jù)包的轉(zhuǎn)移概率矩陣之間的相對(duì)熵作為判別標(biāo)準(zhǔn)。實(shí)驗(yàn)結(jié)果表明,該方法在窗口大小為1 000時(shí),能夠?qū)η度肼食^(guò)70%的異常數(shù)據(jù)流保持較高的檢測(cè)率。但是本文沒(méi)有考慮到該方法對(duì)于其他隱蔽通信方式的適用性,下一步將對(duì)其通用性進(jìn)行研究。

猜你喜歡
排序檢測(cè)模型
一半模型
排序不等式
“不等式”檢測(cè)題
“一元一次不等式”檢測(cè)題
“一元一次不等式組”檢測(cè)題
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
恐怖排序
節(jié)日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
主站蜘蛛池模板: 456亚洲人成高清在线| 中文字幕亚洲乱码熟女1区2区| 中文字幕有乳无码| 国产91丝袜在线播放动漫 | 亚洲视频色图| 精品国产成人a在线观看| 精品福利一区二区免费视频| 国产日韩AV高潮在线| 91无码人妻精品一区| 黄色网页在线观看| 日韩美女福利视频| 九一九色国产| 中国国产A一级毛片| 91国内在线视频| 在线日韩一区二区| 美女潮喷出白浆在线观看视频| 亚洲天堂网在线播放| 国产精品 欧美激情 在线播放| 免费国产在线精品一区| 日韩成人免费网站| 亚洲一区二区三区国产精品| 色天堂无毒不卡| 欧美人与牲动交a欧美精品 | 中国毛片网| 国产三区二区| 一级毛片在线直接观看| 全免费a级毛片免费看不卡| 日韩欧美高清视频| 高清不卡毛片| 九月婷婷亚洲综合在线| 女同国产精品一区二区| 亚洲天堂网站在线| 亚洲av无码片一区二区三区| 欧美精品综合视频一区二区| 97国内精品久久久久不卡| 蝴蝶伊人久久中文娱乐网| 亚洲日韩精品欧美中文字幕| 中文字幕在线免费看| 久久精品视频一| 5555国产在线观看| 成人免费视频一区| 免费中文字幕在在线不卡| A级全黄试看30分钟小视频| 日韩精品一区二区三区免费在线观看| 91九色最新地址| 亚洲欧美在线看片AI| 午夜一区二区三区| 国产成人1024精品下载| 蜜桃视频一区二区| 精品夜恋影院亚洲欧洲| AV熟女乱| 在线精品欧美日韩| 青草娱乐极品免费视频| 亚洲午夜综合网| 一级香蕉视频在线观看| 国产最新无码专区在线| 久久成人免费| 久久影院一区二区h| 国内视频精品| 亚洲天堂成人在线观看| h视频在线播放| 99人妻碰碰碰久久久久禁片| 天天综合网在线| 欧美日韩国产在线观看一区二区三区| 2021精品国产自在现线看| 天天摸天天操免费播放小视频| 无码日韩视频| 成人免费午夜视频| 成人欧美日韩| 久久夜色精品| 亚洲综合色婷婷| 人妻少妇乱子伦精品无码专区毛片| 婷婷综合色| A级毛片高清免费视频就| 国产在线观看第二页| 国产91线观看| 在线综合亚洲欧美网站| 亚洲色成人www在线观看| 中文字幕永久在线看| 天堂亚洲网| 日本人妻丰满熟妇区| 亚洲日本中文字幕乱码中文 |