基于Web資源聚類分析的異常行為檢測_第1頁
基于Web資源聚類分析的異常行為檢測_第2頁
基于Web資源聚類分析的異常行為檢測_第3頁
基于Web資源聚類分析的異常行為檢測_第4頁
基于Web資源聚類分析的異常行為檢測_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、基于Web資源聚類分析的異常行為檢測1謝逸,余順爭中山大學(xué)電子與通信工程系,廣東廣州(510275E-mail(xieyicn摘要:本文針對大型活動網(wǎng)站的入侵檢測,提出一種基于隱半馬爾可夫模型(HSMM的Web資源聚類方法,與傳統(tǒng)的基于Web頁面內(nèi)容的聚類不同,該方法僅需要用戶的HTTP 請求序列,而不需要網(wǎng)站和頁面的相關(guān)信息;利用該模型,我們得到用戶對各個Web資源子集的訪問特征,我們進一步引入邏輯行為來描述這種用戶訪問特征,并通過分析用戶的邏輯行為實現(xiàn)異常訪問行為的檢測。文章詳細介紹了模型建立的理論依據(jù)和方法,推導(dǎo)出模型參數(shù)的估計算法,及一種快速的模型參數(shù)實時更新算法。并指出了如何把該模型

2、應(yīng)用于實際的網(wǎng)絡(luò)環(huán)境。最后使用World Cup 1998實際采集的數(shù)據(jù)驗證了模型的有效性。結(jié)果表明該方法不但可以很好地實現(xiàn)用戶行為分類,而且可以有效識別出異常的用戶行為,從而起到入侵檢測的作用。關(guān)鍵詞:聚類,用戶行為,異常檢測,隱半馬爾可夫模型中圖分類號:TP31.引言隨著Internet的普及,網(wǎng)絡(luò)上共享的計算機資源成為主要的攻擊目標(biāo),網(wǎng)絡(luò)入侵數(shù)量的增加及其所帶來的嚴重危害,使計算機安全成為人們關(guān)注的焦點。入侵檢測系統(tǒng)(Intrusion Detection System, IDS是用于檢測正在發(fā)生的攻擊和試圖進行攻擊的計算機系統(tǒng)。異常入侵檢測(Anomaly Intrusion Dete

3、ction 是目前使用的主要手段之一。它是根據(jù)用戶行為與活動輪廓存在的偏離程度來判斷是否發(fā)生入侵,常用的方法有神經(jīng)網(wǎng)絡(luò)、模式預(yù)測、機器學(xué)習(xí)、統(tǒng)計分析等1。與一般的入侵檢測系統(tǒng)所關(guān)注的對象不同,本文主要研究大型活動網(wǎng)站(例如:體育比賽、重大商務(wù)/政治活動、大型文藝表演等對分布式拒絕服務(wù)(Distributed Denial-of-Service, DDoS攻擊的檢測。大型活動網(wǎng)站具有與一般網(wǎng)站不同的特點:第一,訪問時間集中。由于活動網(wǎng)站的信息內(nèi)容受活動時間表的影響很大,這導(dǎo)致它的訪問量集中在某些特定的時間段,而其余時間的訪問量則很低;第二,訪問內(nèi)容集中。在特定時段內(nèi)(例如某一場比賽,與該時段中進

4、行的活動有關(guān)的頁面會被高頻率訪問,而其它頁面的訪問量則較低;第三,訪問峰值持續(xù)時間短。通常情況下,各種現(xiàn)場活動的持續(xù)時間一般都在2-3小時內(nèi),因此網(wǎng)站的訪問峰值區(qū)不會持續(xù)很長時間。因此,總的來說,大型活動網(wǎng)站具有峰值時段業(yè)務(wù)量非常巨大、突發(fā)性強的特點。這些特點與DDoS的的洪水式(flooding攻擊類似,因此使用一1本課題得到高等學(xué)校博士學(xué)科點專項科研基金(項目編號:20040558043資助.- 1 -般的異常檢測方法2難以有效區(qū)分突發(fā)性強的、業(yè)務(wù)量大的正常流和異常攻擊流,從而導(dǎo)致高誤檢率和高漏檢率。而目前用于防御DDoS攻擊的主要思路是基于分組的檢測和過濾3。這種方法首先檢測出攻擊流或攻

5、擊分組,然后對這些分組實行過濾,它最大的缺陷是很容易把正常的分組誤判為DDoS攻擊分組,從而造成正常數(shù)據(jù)的丟失。與現(xiàn)有的DDoS檢測不同,本文從應(yīng)用層出發(fā),首先根據(jù)用戶的HTTP請求對服務(wù)器上的Web資源(頁面及各種可被用戶請求的對象進行聚類,于是用戶的一系列HTTP請求就變成是對不同Web資源子集的請求,我們進一步引入邏輯訪問行為來表述用戶在不同Web資源子集上的跳轉(zhuǎn)關(guān)系,由于邏輯訪問行為在一定程度上反映了用戶的真實行為,因此可以根據(jù)用戶邏輯訪問行為的統(tǒng)計特征來進行異常檢測。為此,本文將采用隱半馬爾可夫模型(Hidden semi-Markov Model, HSMM4,5,6來實現(xiàn)Web資

6、源聚類與描述用戶邏輯訪問行為的隨機變化過程,最終實現(xiàn)異常行為檢測的目的。2.用戶行為與Web資源聚類模型從用戶進入網(wǎng)站到獲取目的頁面的這一個過程是用戶在該Web服務(wù)器上的瀏覽過程。從用戶端看,用戶的瀏覽過程是用戶根據(jù)網(wǎng)頁上提供的鏈接一頁一頁往下瀏覽的過程,它主要體現(xiàn)在用戶對頁面的點擊行為上;而從服務(wù)器端看,用戶的這個瀏覽過程是通過一系列的HTTP請求/響應(yīng)構(gòu)成的。由于一個頁面通常包含多個內(nèi)嵌的鏈接,例如:圖片、廣告條、背景音樂和框架頁面等,因此用戶的每一次瀏覽行為(例如:點擊頁面鏈接、前進、后退、刷新等都會觸發(fā)瀏覽器發(fā)出一系列的HTTP請求,這些HTTP請求到達服務(wù)器后除了使目標(biāo)服務(wù)器做出響應(yīng)

7、(返回對應(yīng)的對象以外,其屬性(源地址、請求時間、請求對象等也會記錄在服務(wù)器的日志文件中。因此從理論上講,如果知道網(wǎng)站的頁面結(jié)構(gòu),就可以通過log文件的記錄分析出用戶的瀏覽行為(點擊序列,也就是說log文件中的HTTP請求記錄是反映用戶瀏覽行為的“軌跡”。但是在實際的網(wǎng)絡(luò)環(huán)境中,一般無法從log文件中的記錄精確地獲取用戶的訪問行為。這是由于log無法區(qū)分用戶點擊所產(chǎn)生的HTTP請求和瀏覽器自動發(fā)出的HTTP請求,因此從log記錄無法精確知道用戶的點擊行為;其次,網(wǎng)絡(luò)中的各級代理(proxy、緩存(cache和用戶主機本身的緩存也會對用戶的HTTP請求做出響應(yīng),因此用戶瀏覽行為觸發(fā)瀏覽器發(fā)出的HT

8、TP請求可能不會全部到達Web服務(wù)器。也就是說即使完全相同的用戶瀏覽(或點擊行為,由于用戶主機及中間各級緩存程度的不同,log記錄的用戶瀏覽器發(fā)出的HTTP請求序列會存在差異;另外,對于同時打開多個瀏覽器窗口的用戶,其不同點擊行為所產(chǎn)生的HTTP請求在log文件中的記錄是相互交疊在一起,因此更加難以區(qū)分出用戶的行為。因此,用戶的真實訪問行為是“隱藏”在log記錄下的隨機變量。為此,本文不直接研究用戶真實的訪問行為,而是按下述方法間接得到用戶訪問行為的統(tǒng)計特征:Web資源聚類??紤]到用戶對活動網(wǎng)站的訪問具有很強的目的性,例如:某一場足球比賽、某一個重大會議、某一特定內(nèi)容。即在特定時段內(nèi),正常用戶

9、的訪問總是和該時段內(nèi)網(wǎng)站的活動主題相關(guān)。按活動主題的不同,可以把服務(wù)器的Web資源分為若干子集,每一個子集內(nèi)的Web資源對應(yīng)一個活動主題。這樣,對于某個特定的網(wǎng)站活動時間段,正常用- 2 - 3 -戶向目的服務(wù)器發(fā)出的HTTP 請求的內(nèi)容大部分將落在那些與活動主題相關(guān)的Web 資源子集上。傳統(tǒng)的Web 頁面聚類方法,通常都需要預(yù)先為每個聚類定義一個主題,然后根據(jù)Web 頁面的文本內(nèi)容進行數(shù)據(jù)挖掘,然后實現(xiàn)聚類。這種方法計算量大,不適合在線運算;而且它需要預(yù)先知道網(wǎng)站的主題結(jié)構(gòu)并采集每一Web 頁面的文本,這為實際應(yīng)用帶來了不便;更重要的是,由于我們最終目標(biāo)是利用異常行為檢測來發(fā)現(xiàn)網(wǎng)絡(luò)攻擊,而非

10、研究用戶感興趣的主題是什么,因此我們不需要知道網(wǎng)站的主題和頁面的內(nèi)容。所以我們根據(jù)用戶的訪問對服務(wù)器上的Web 資源進行分類:把正常用戶的HTTP 請求序列中經(jīng)常在一起出現(xiàn)的請求對象聚為一個Web 資源子集。 HTTP 請求序列Web Web 資源聚類圖1 Web 資源聚類與HTTP 請求序列定義邏輯訪問行為。Web 資源聚類后,每個Web 資源子集對應(yīng)一類近似的主題,使用一個符號表示(如圖1的s 1,s 2,s 3,s 4。根據(jù)Web 資源的聚類結(jié)果,用戶的HTTP 請求序列可以轉(zhuǎn)化為Web 資源子集符號序列(如圖1的s 2s 1s 3。因此與HTTP 請求對應(yīng)的Web 資源子集可以反映出用

11、戶當(dāng)前的訪問焦點(主題、目的和興趣特征,而用戶在子集間的跳轉(zhuǎn)關(guān)系則反映了該用戶的訪問特征的變化,進一步揭示了用戶的訪問行為及其變化。因此,我們可以進一步認為一個Web 資源子集對應(yīng)(或等價一種典型的用戶邏輯訪問行為,并用對應(yīng)的Web 資源子集符號表示。從物理含義上看,一個邏輯訪問行為并不等價于用戶的一次真實訪問行為(例如用戶對某個頁面的點擊,它可以是用戶的一次點擊行為,也可以是用戶對某個特定主題連續(xù)幾次點擊行為的組合;從內(nèi)容上看,一個邏輯訪問行為既代表一類近似的用戶訪問行為也代表與某一個主題相關(guān)的Web 資源的集合(Web 資源子集,它把Web 資源聚類與用戶行為聯(lián)系在一起。 用戶行為特征分析

12、。通過上述處理后,我們可以把用戶訪問網(wǎng)站后在log 留下的HTTP 記錄整理為一個邏輯訪問行為序列。通過分析用戶的邏輯訪問行為序列(包括邏輯訪問行為的編號及其在序列中的次序,可以知道用戶當(dāng)前的訪問主題及用戶訪問焦點的變化。因此,邏輯訪問序列間接反映了用戶真實行為的輪廓。由于分類后的Web 資源子集(邏輯行為個數(shù)遠小于網(wǎng)站的總體Web 資源的個數(shù),所以計算復(fù)雜度也隨之降低;而且由于每一個Web 資源子集都對應(yīng)一類近似的主題和用戶行為,具有明確的含義,因此分析用戶在Web 資源子集間的跳轉(zhuǎn)關(guān)系更具有實際意義,而且比直接分析頁面間的跳轉(zhuǎn)關(guān)系更好地反映出用戶瀏覽行為的變化趨勢。 引入Web 資源聚類和

13、用戶邏輯訪問行為是為了可以更清晰、簡練地提取出用戶的瀏覽行為特征及其變化。而對用戶行為特征的分析則可以進一步實現(xiàn)從正常數(shù)據(jù)流中檢測異常流的目的。 由于用戶對大型活動網(wǎng)站的訪問具有很強的目的性。因此大部分用戶的瀏覽行為的統(tǒng)計特征(點擊速度、瀏覽的內(nèi)容或請求對象、瀏覽時間、瀏覽過程等具有一定的相似性,因此從log文件中分析出來的不同用戶的邏輯訪問行為序列也應(yīng)該具有一定的統(tǒng)計相似性。我們可以把這種統(tǒng)計特征看作是用戶的正常的、合法的行為。對于攻擊者來說,為了達到攻擊的目的,就必須設(shè)法使大量的數(shù)據(jù)發(fā)向目標(biāo)主機,因此,從服務(wù)器端來看,攻擊者在不同邏輯訪問行為上的切換頻率遠大于普通正常用戶,這是時間間隔上的

14、差異;另一方面,攻擊者一般比較難同步模擬正常用戶的瀏覽行為,比較容易而又常見的是,攻擊者隨機生成一些簡單的數(shù)據(jù)流來形成攻擊流。即使攻擊者能夠選擇當(dāng)前用戶高頻訪問的對象來形成攻擊流,這些數(shù)據(jù)流所形成的序列的先后次序也難以模擬正常用戶瀏覽行為的次序關(guān)系,這就使得攻擊者和正常用戶在請求的內(nèi)容和先后次序上存在差異,這些請求上的差異最終導(dǎo)致攻擊者的邏輯訪問序列不同于正常用戶。利用這些統(tǒng)計特征上的差異,通過與代表正常行為的HSMM模型的比較,可以從用戶訪問行為的角度區(qū)分出攻擊流?;谏鲜隹紤],本文選取以下兩個觀測量來描述用戶的邏輯訪問行為:(1 用戶向服務(wù)器請求的對象序列;(2到達服務(wù)器的相鄰HTTP請求

15、的時間間隔。由于正常用戶的訪問行為一般僅與其前后的訪問行為有關(guān),因此假定用戶的邏輯訪問行為符合馬爾科夫鏈的特性??紤]到用戶邏輯訪問行為是一個被“隱藏”了的、即不能直接觀測到的隨機變量,以及用戶每一個邏輯訪問行為使服務(wù)器收到HTTP請求的個數(shù)是一個隨機變量,本文使用HSMM來建立正常用戶的邏輯訪問行為模型。設(shè)一個用戶的多個邏輯訪問行為(例如點擊一系列的頁面可以用一個狀態(tài)鏈來表示,一個狀態(tài)代表用戶的一種邏輯訪問行為,不同的狀態(tài)代表不同類型的邏輯訪問行為,所有狀態(tài)的集合表示為S=1,2,M;每一類邏輯訪問行為使瀏覽器發(fā)出的、且到達服務(wù)器的HTTP 請求是不同的,這些HTTP請求可以看作是模型在給定狀

16、態(tài)下的觀測值,對于給定的狀態(tài)它以一定的概率出現(xiàn),其集合表示為V=1,2,K;來自于該用戶的相鄰HTTP請求之間的時間間隔是給定狀態(tài)下的另一個獨立隨機變量,它可以看作是模型在給定狀態(tài)下的另一個觀測值,為了分析方便并考慮到實際的Web服務(wù)器都是以秒為單位記錄HTTP請求到達的時間,我們將時間間隔離散為整數(shù),并將其集合表示為I=1,2,;對于用戶的某一邏輯訪問行為,服務(wù)器能夠收到的HTTP請求的個數(shù)是另外一個隨機變量,它可以認為是模型在給定狀態(tài)下,輸出的觀測值的個數(shù),其集合表示為1,2,D。把用戶發(fā)出的HTTP請求序列表示為O=(r1,1, (r2,2, (r T,T,其中r tV表示用戶向Web服

17、務(wù)器請求的對象,tI表示服務(wù)器收到HTTP請求r t與r t-1之間的時間間隔,O是模型的二維觀測值序列。用B=b m(v,q表示模型的輸出概率矩陣,b m(v,q表示在mS狀態(tài)所對應(yīng)的邏輯訪問行為下Web服務(wù)器收到請求r t=v且與前一個到達請求之間的時間間隔為t=q的概率,其中vV,qI,且滿足v,q b m(v,q=1。用P=p m(d表示在給定狀態(tài)m下模型輸出觀測值個數(shù)為d1,2,D的概率,它代表在mS狀態(tài)所對應(yīng)的瀏覽行為下,由用戶瀏覽器發(fā)出的、且到達服務(wù)器的HTTP請求的個數(shù),且滿足d p m(d=1,即,P相當(dāng)于HSMM模型中的狀態(tài)停留時間概率矩陣。用=i表示模型初始狀態(tài)的概率向量

18、,i表示初始狀態(tài)為iS的概率。用A=a mn表示模型的狀態(tài)轉(zhuǎn)移概率矩陣,a mn表示從狀態(tài)mS轉(zhuǎn)移到nS的概率,也即用戶從與狀態(tài)m對應(yīng)的邏輯訪問行為跳轉(zhuǎn)到與狀態(tài)n對應(yīng)的另一邏輯訪問行為的概率。- 4 - 5 - 圖2 模型系統(tǒng)框圖模型的建立與實測方法見圖2所示。首先采集用戶HTTP 請求數(shù)據(jù)作為模型的觀測序列,經(jīng)過預(yù)處理后形成模型的訓(xùn)練序列對模型進行訓(xùn)練(即Web 資源聚類;模型參數(shù)確定后可以用于實測,實測數(shù)據(jù)通過預(yù)處理后進入模型,并輸出平均對數(shù)或然概率及用戶的邏輯訪問序列(狀態(tài)序列;在正常度判決模塊中比較當(dāng)前數(shù)據(jù)與模型訓(xùn)練數(shù)據(jù)的平均對數(shù)或然概率從而得到該用戶行為的正常度值,如果該用戶的正常度

19、處于正常范圍,則用戶數(shù)據(jù)將被加入到訓(xùn)練數(shù)據(jù)集中,否則將交給后續(xù)模塊處理。通過改進7中的算法,該模型還可以快速地實時更新模型參數(shù)??紤]到在二維觀測值序列中r t 和t 相互獨立,即:(,|Pr,|Pr,|,Pr,(q b v b m s q m s v r m s q v r q v b m m t t t t t t t m =(1其中,(P B A =為HSMM 模型參數(shù),S m I q V v 且滿足v b m (v =1和q b m (q =1。 通過對5的前向-反向(forward-backward算法做少量擴展,可以得到多觀測序列下模型的參數(shù)重估算法。用o t 代表模型的第t 個觀測

20、向量,它包括第t 個請求對象r t 和r t 與r t -1之間的時間間隔t ,即o t =(r t ,t 。b ao 代表從第a 個到第b 個觀測向量序列,T o 1則代表整個觀測向量序列,其長度為T 。s t 代表模型在t 時刻所處的狀態(tài);t 代表當(dāng)前狀態(tài)還將輸出觀測值的個數(shù),1t T 。L 代表觀測序列的個數(shù)。首先,分別定義前后向變量為:|,Pr,(1=d m s o d m t t t t (2,|Pr,(1=+d m s o d m t t T t t (3進一步可以得到t (m ,d 和t (m ,d 的遞推公式:前向過程(Forward procedure :(,(1d p b

21、r b d p o b d m m t m t m m m t m m =(4(1,(1,(,(11d p b r b a n b r b d m d m m t m t m m n nm t t m t m t t += ,.,2,1,.2,1,T t D d S n m = (5后向過程(Backward procedure: 1,(=d m T (6- 6 -+=mn d t n t n t n mn t d n d p b r b a m 1111,(1,(71,1,(,(111>=+d d m b r b d m t t m t m t , ,.,2,1,.2,1,T t D

22、d S n m =(8(1 或然概率計算L l d m o dm l T lT l ,.,2,1,(|Pr,(1=(9本文使用平均的對數(shù)或然概率l T T o l |Prlog 1,l=1,2,L (即熵作為觀測序列l(wèi) 與模型符合程度的度量。(2 狀態(tài)序列估計 定義,|Pr(1(=l t T t l o m s m ,(10其中1t T l , m S, l=1,2,L則第l 個觀測序列在t 時的狀態(tài)可以按如下方法估計:(max arg (m s l t Sm l t=, 1t T l , l=1,2,L , (11(3 輸出概率在多觀測序列下b m (v 和b m (q 的最大或然概率估計:

23、=Ll T t l L l T vr t l mltlt t m m v b 11(1:(12=Ll T t l Ll T qt l mltlt tm m q b 11(1:(13其中m S , v V , q I ,(4狀態(tài)轉(zhuǎn)移概率: 定義:=1(11(,(1,(,Pr,(1d l n t n t n mn l t t T l d n d p b r b a m n s m s o n m tt l t (14其中m ,n S, l=1,2,L , t =1,2,T 可以得到多觀測序列下:=L l T t Mn l L l T t l mn l tl t n m n m a1111(111(

24、,(,(15(5 狀態(tài)駐留時間概率 定義:,(1,(,Pr,(11(1d m d p b r b a n d m s m s o d m l m t m t m m n nm l t t t T l tt lt =, m S, d 1,2,D , l =1,2,L , t =1,2,T(16由此可得:- 7 -=L l T t Dd l L l T t l m l tl t d m d m d p1111(111(,(,(,其中i S ,d 1,2,D ,l=1,2,L(17(6 初始狀態(tài)概率估計=L l Mm l Ll l m m m 11(1(11,m S ,(18考慮到在Web 訪問中,

25、用戶的訪問焦點一般會隨著時間的變化而變化,如果用于描述Web 訪問行為的模型不能自適應(yīng)地隨之變化,則模型會逐漸失效,并把一些新的、正常的Web 訪問行為誤判為異常,從而導(dǎo)致錯誤的結(jié)論。因此在實際應(yīng)用中應(yīng)該盡量避免這種情況出現(xiàn)。7介紹了一種基于HMM 的算法可以用于實時更新模型參數(shù)。本文在上述多觀測序列HSMM 模型參數(shù)重估的基礎(chǔ)上,通過對該算法的擴展,可以得到一種實時更新HSMM 模型參數(shù)的快速算法,具體如下:設(shè)(,(,(d p v b a Lm k L m L m L mn L =是有L 個觀測序列的HSMM 的模型參數(shù);(,(,(d p v b a l m k l m l m l mn l

26、 =是第l 個觀測序列單獨訓(xùn)練的模型的參數(shù),使用上述多觀測序列HSMM 模型的參數(shù)重估方法,可以得到:1(1111111111111(11111(11,(1,(,(,(,(,(,|,|,+=+=+=+=+=+=+=L ijL l L ij L l L l L l L l L l T t jT l j t i t L l T t T l j t i t L ijal i states L i states a l i states l i states l i states l j i trans o s q s q p o s q s q p a l lll (19其中i ,j S , l =

27、1,2,L 。trans (i ,j ,l表示在第l 個觀測序列中,從狀態(tài)i 跳轉(zhuǎn)到狀態(tài)j 的頻數(shù);states (i ,l是第l 個觀測序列中,從狀態(tài)i 出現(xiàn)的頻數(shù)。由上式可以得到1+L ij a 近似等于Lij a 和1(+L ij a 的線性組合。按照類似的方法,我們可以得到其它參數(shù)的近似估計:(,(1,(,(,(1(1111k L i l k L i l Ll k L i v b l i states L i states v b l i states l i states v b +=+ (20(,(,(,(,(1(1111111111d p l i q i q turnin l i

28、 q i q turnin d p l i q i q turnin l i q i q turnin d p L i L l t t t t L i L l t t Ll t t L i +=+=+=+=, (21其中i S ,d 1,2,D ,l =1,2,L ;turning (q t -1i ,q t =i ,l 表示在第l 個觀測序列中,從其它狀態(tài)跳轉(zhuǎn)到i 狀態(tài)的頻數(shù)。(1(11(1(+L i L i L i L L L L ,i S ,(22由(16、(17、(18和(19得到:在系數(shù)給定的前提下,L +1可以由L 和 (L +1估計獲得。另外,注意到上述四式中的系數(shù)僅與狀態(tài)i 出

29、現(xiàn)的頻數(shù)(即: =Ll l i states 1,(, i =1,2,M 及由其它狀態(tài)跳轉(zhuǎn)到狀態(tài)i 的頻數(shù)(即: =Ll t t l i q i q turnin 11,(, i =1,2,M 有關(guān)。因此,我們只需要計算出=Ll l i states 1,( 和=Ll t t l i q i q turnin 11,(的值,就可以獲得所有的系數(shù)并實現(xiàn)HSMM 模型參數(shù)的更新。由于這種參數(shù)估計算法的復(fù)雜度遠低于對整個模型重新進行參數(shù)估計,因此適合用于在線計算。但是,由于上述算法是不斷根據(jù)新的觀測數(shù)據(jù)來實現(xiàn)動態(tài)的模型參數(shù)更新,如果不加判- 8 -斷地利用所有進入服務(wù)器的Web 訪問序列和上述算法來

30、更新模型參數(shù),則很容易使模型逐漸被一些惡意的攻擊者所訓(xùn)練,從而喪失異常檢測的能力。為此,在我們的模型系統(tǒng)框圖中(圖2,采用如下方法進行處理:對于一個新的觀測序列(記為L +1,首先通過L 來判斷它的正常度,如果正常度處于正常范圍內(nèi),則可以使用上述算法估計出模型新的參數(shù)L +1;否則就交給異常處理模塊進行處理。這樣,可以避免模型被攻擊者所訓(xùn)練。3. 模型的應(yīng)用上述模型可以在真實網(wǎng)絡(luò)環(huán)境下應(yīng)用,具體的使用步驟如下:(1 建立模型A. 選擇一組(L 個用戶的HTTP 請求序列作為模型的訓(xùn)練數(shù)據(jù)TD 。B. 對數(shù)據(jù)進行預(yù)處理,形成L 個二維觀測序列L l r r r O l T l T l l l l

31、 l l l ,.,2,1,(,(,(2(2(1(1(=L C. 初始化模型參數(shù)集合。D. 根據(jù)(4、(5分別計算前后向變量,(d m l t 和,(d m l t ,l =1,2,L 。E. 由(7、(11、(13分別計算(m l t 、,(n m l t 和,(n m l t ,l =1,2,L 。F. 由(9、(10、(12、(14和(15分別估計出模型的各個參數(shù)G. 重復(fù)DF ,直到模型的平均對數(shù)或然概率收斂到預(yù)定的區(qū)間。 (2 實測用戶序列模型參數(shù)確定后可應(yīng)用于實際用戶的HTTP 請求序列的統(tǒng)計異常檢測,即計算各個請求序列對于給定模型的或然概率:A. 當(dāng)收到第l 個用戶t 時刻發(fā)來的

32、Web 請求時,記錄下r t ,并計算出t 。B. 通過前向算法,利用,(,(,(2(2(1(1(l t l t l l l l l r r r O L =可以得到,(d m l t ,由,(d m l t 及(6可以算出該用戶在1, t 區(qū)間內(nèi)對應(yīng)于該模型的平均對數(shù)或然概率。C. 模型實時更新。D. 重復(fù)A 、B 和C 。 (3 正常度判斷本文以訓(xùn)練數(shù)據(jù)集內(nèi)的所有序列的平均對數(shù)或然概率的均值lkh 作為正常行為的參考點。當(dāng)某個用戶l 的HTTP 請求序列達到一定長度時,可得到該用戶的平均對數(shù)或然概率lkh (l。通過比較lkh (l和lkh ,可以得到該用戶相對于訓(xùn)練數(shù)據(jù)的正常度。差值越小的

33、,正常度越高,優(yōu)先權(quán)也越高;差值越大的,正常度越低,優(yōu)先權(quán)也越低。依據(jù)正常度,可以將該用戶的后續(xù)Web 請求送入相應(yīng)的隊列進行排隊服務(wù)。最低優(yōu)先權(quán)的Web 請求分組,在網(wǎng)絡(luò)資源不夠時,將被過濾掉。由此達到保護正常Web 請求和化解攻擊流的目的。(4 邏輯訪問序列給定模型的狀態(tài)數(shù)與模型最大停留次數(shù),模型根據(jù)訓(xùn)練數(shù)據(jù)集對訪問行為分類。分類的結(jié)果體現(xiàn)在模型的輸出概率矩陣B 和狀態(tài)停留時間概率矩陣P 上,用戶在不同邏輯訪問行為上的轉(zhuǎn)換體現(xiàn)在狀態(tài)轉(zhuǎn)移概率矩陣A 上。在進行實測時,模型根據(jù)訓(xùn)練數(shù)據(jù)得到的模型參數(shù)計算出用戶序列的邏輯訪問序列(即狀態(tài)序列。實際上,由于模型的狀態(tài)是用戶真實行為的高度抽象,可以進

34、一步使用其它的序列分析方法(例如數(shù)據(jù)挖掘分析模型輸出的狀態(tài)序列,從而估計出用戶當(dāng)前的訪問主題、訪問興趣變化及訪問行為特征等。由于模型的狀態(tài)數(shù)遠小于網(wǎng)站的頁面數(shù),對邏輯訪問序列的挖掘分析不但計算量小,而且結(jié)果更加簡單、明了。4.模型的驗證本文使用World Cup 19988的實際流驗證模型的有效性。我們選取了兩場比賽各自前后2.5小時的用戶Web訪問記錄作為模型驗證數(shù)據(jù)。經(jīng)過數(shù)據(jù)預(yù)處理與隨機抽選,最終形成4組數(shù)據(jù)集:DS1、DS2、DS3和DS4。其中DS1、DS2和DS3都隨機(不重疊選自一場比賽,DS1和DS2是小流量用戶,DS3是大流量用戶。DS1用于模型的訓(xùn)練,DS2和DS3用于測試。

35、DS4是選自另外一場比賽的用戶,用于模型測試。 (a (b (c (d圖3 Web用戶行為分類由于World Cup 1998是一個體育網(wǎng)站,用戶訪問的特點受賽事的時間表影響大。不同比賽期間,用戶關(guān)注的焦點對象也不同,即用戶的瀏覽行為也不同。由前文可知,HSMM 的狀態(tài)跳轉(zhuǎn)可以近似模擬用戶的邏輯訪問行為的變化,為此,我們通過分析各個數(shù)據(jù)集中各個狀態(tài)的分布情況,可以了解用戶的行為特點。對一個采用10狀態(tài)、最大停留時間為10的HSMM,從圖3可見盡管DS3屬于大流量客戶,但狀態(tài)的出現(xiàn)頻率在DS13中基本近似:集中在第5和第10個狀態(tài)。而DS4則顯示出明顯的差異:第10個狀態(tài)的出現(xiàn)次數(shù)明顯低于DS1

36、3,而其它狀態(tài)的出現(xiàn)次數(shù)則高于DS13。我們進一步找出高頻率出現(xiàn)狀態(tài)所對應(yīng)的訪問對象,發(fā)現(xiàn)狀態(tài)5對應(yīng)的是與主頁相關(guān)的內(nèi)容,而狀態(tài)10對應(yīng)的是與該場比賽有關(guān)- 9 -的訪問對象。也就是說狀態(tài)5和10是該時段用戶的訪問焦點,基本描述出用戶的典型瀏覽行為。而對于DS4,狀態(tài)5(主頁同樣是具有高訪問量,但由于其焦點不在狀態(tài)10所代表的對象上,因此狀態(tài)10在DS4中出現(xiàn)次數(shù)很少。也就是說,相對于DS13中用戶的邏輯訪問行為,DS4所表現(xiàn)出來的是一種“異?!钡脑L問行為。由此可見,模型的狀態(tài)可以高度概括用戶的真實訪問行為。通過對狀態(tài)出現(xiàn)概率的統(tǒng)計,可以分辨出用戶當(dāng)前的訪問興趣、主題。對于活動型網(wǎng)站,在特定時

37、間段中,正常用戶的訪問行為具有相似性,因此其狀態(tài)序列的統(tǒng)計特性也具有相似性。而對于攻擊者來說,其狀態(tài)序列則不具備正常用戶的統(tǒng)計特性,從而表現(xiàn)出“異?!?。因此,HSMM的狀態(tài)既實現(xiàn)了用戶行為的分類,也提供了一種判斷異常行為的方法。 圖4 平均或然概率分布圖5 平均或然概率累加分布表1 平均或然概率的均值與方差數(shù)據(jù)集DS1 DS2 DS3 DS4均值-5.325-7.068-7.249-7.337方差 3.247 4.257 4.257 4.402 利用上述的HSMM模型,可以進一步檢測出活動型網(wǎng)站流行為的異常性。通過對4個數(shù)據(jù)集的平均或然概率分布的分析(圖4、圖5及表1,可以看到DS13的平均或

38、然概率分布主體基本處于一個區(qū)域內(nèi),而DS4的分布范圍則偏低,而且比較分散。這表明模型可以區(qū)分出兩種不同類型的訪問行為,由于DS13的用戶僅關(guān)心與第一場比賽相關(guān)的頁面,所以他們的行為顯示出很高的相似性;而DS4關(guān)心的是另一場比賽,而網(wǎng)站對于不同的賽事,其頁面結(jié)構(gòu)也不一樣,這導(dǎo)致DS4與DS13的訪問行為存在很大的差別,也就是說DS4的Web訪問行為相對于DS13的行為是“異常的”。由于攻擊行為通常都明顯不同于正常的訪問,因此可以使用由正常訪問行為訓(xùn)練的模型來區(qū)分出攻擊行為。5.總結(jié)本文應(yīng)用HSMM和用戶的HTTP請求進行Web資源分類,分類的結(jié)果可以歸納出相應(yīng)的邏輯訪問行為,通過邏輯訪問行為實現(xiàn)

39、對用戶真實行為的抽象概括和分類,并根據(jù)訪問流的邏輯行為相對于模型的或然概率來檢測異常的攻擊行為。文章詳細介紹了模型的建立依據(jù)和多觀測序列下的參數(shù)估計算法,提出一種適合實時更新HSMM模型參數(shù)的算法;并指出了如何把該模型應(yīng)用于實際的網(wǎng)絡(luò)環(huán)境。我們用World Cup 1998實際采集的數(shù)據(jù)驗證了這種算法。模擬分析結(jié)果顯示,用10個- 10 - 狀態(tài)數(shù)的 HSMM 可以精確描述 World Cup 1998 中局部時段內(nèi)的訪問行為特性。通過對用戶 狀態(tài)序列的統(tǒng)計分析, 可以得到用戶當(dāng)前的邏輯訪問行為, 從而進一步判斷用戶的行為是否 和其它正常用戶的類似,如果用戶的邏輯訪問行為出現(xiàn)異常則有可能出現(xiàn)攻

40、擊行為。另外, 使用平均對數(shù)或然概率的統(tǒng)計特性(分布、均值、方差和狀態(tài)的出現(xiàn)概率同樣可以描述訪問 行為的正常程度。此外,從推導(dǎo)中可見,實測中的或然概率僅涉及到 HSMM 的前向算法, 因此該算法適合實時檢測。 參考文獻 1 蔣建春, 馬恒太, 任黨恩等. 網(wǎng)絡(luò)安全入侵檢測: 研究綜述J.軟件學(xué)報, 2000, 11 (11 2 C. Manikopoulos and S. Papavassiliou. Network Intrusion and Fault Detection: A Statistical Anomaly Approach J. IEEE Communications Maga

41、zine, October 2002, pp. 76-82. 3 R. K. C. Chang. Defending against Flooding-Based Distributed Denial-of-Service Attacks: A Tutorial J. IEEE Communications Magazine, October 2002, pp. 43-51. 4 L.R. Rabiner. A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition A. Proc. of

42、 IEEE, Vol. 77, No. 2, pp. 257-286, February 1989. 5 S.-Z. Yu, and H. Kobayashi. An Efficient Forward-Backward Algorithm for an Explicit Duration Hidden Markov Model J. IEEE Signal Processing Letters, Vol. 10, No. 1, January 2003, pp. 11-14. 6 S.-Z. Yu, Z. Liu, M. S. Squillante, C. Xia, and L. Zhang

43、. A Hidden Semi-Markov Model for Web Workload Self-Similarity A. Proc. of The 21st IEEE International Performance, Computing, and Communications Conference (IPCCC 2002, pp. 65-72, April 3-5, 2002, Phoenix, AZ. 7 謝錦輝, 高麗青. 關(guān)于 HMM 相對可靠性度量 J. 自動化學(xué)報, 1993, 19(5,637640. 8 /html/contrib/Wo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論