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

下載本文檔

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

文檔簡介

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

19、加入到訓(xùn)練數(shù)據(jù)集中,否則將交給后續(xù)模塊處理。通過改進(jìn)7中的算法,該模型還可以快速地實(shí)時(shí)更新模型參數(shù)??紤]到在二維觀測(cè)值序列中r t 和t 相互獨(dú)立,即:(,|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。 通過對(duì)5的前向-反向(forward-backward算法做少量擴(kuò)展,可以得到多觀測(cè)序列下模型的參數(shù)重估算法。用o t 代表模型的第t 個(gè)觀測(cè)向量,它包括第t 個(gè)請(qǐng)求對(duì)象

20、r t 和r t 與r t -1之間的時(shí)間間隔t ,即o t =(r t ,t 。b ao 代表從第a 個(gè)到第b 個(gè)觀測(cè)向量序列,T o 1則代表整個(gè)觀測(cè)向量序列,其長度為T 。s t 代表模型在t 時(shí)刻所處的狀態(tài);t 代表當(dāng)前狀態(tài)還將輸出觀測(cè)值的個(gè)數(shù),1t T 。L 代表觀測(cè)序列的個(gè)數(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進(jìn)一步可以得到t (m ,d 和t (m ,d 的遞推公式:前向過程(Forward procedure :(,(1d p b r b d p o b d

21、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 d S n m =(8(1

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

23、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 可以得到多觀測(cè)序列下:=L l T t Mn l L l T t l mn l tl t n m n m a1111(111(,(,(15(5 狀態(tài)駐留時(shí)

24、間概率 定義:,(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)概率估計(jì)=L l Mm l Ll l m m m 11(1(11,m S ,(18考慮到在Web 訪問中,用戶的訪問焦點(diǎn)一般會(huì)隨著時(shí)間

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

26、練的模型的參數(shù),使用上述多觀測(cè)序列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 =1,2,L 。trans (

27、i ,j ,l表示在第l 個(gè)觀測(cè)序列中,從狀態(tài)i 跳轉(zhuǎn)到狀態(tài)j 的頻數(shù);states (i ,l是第l 個(gè)觀測(cè)序列中,從狀態(tài)i 出現(xiàn)的頻數(shù)。由上式可以得到1+L ij a 近似等于Lij a 和1(+L ij a 的線性組合。按照類似的方法,我們可以得到其它參數(shù)的近似估計(jì):(,(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 q i q turnin

28、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 個(gè)觀測(cè)序列中,從其它狀態(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估計(jì)獲得。另外,注意到上述四式中的系數(shù)僅與狀態(tài)i 出現(xiàn)的頻數(shù)(即: =Ll l

29、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)。因此,我們只需要計(jì)算出=Ll l i states 1,( 和=Ll t t l i q i q turnin 11,(的值,就可以獲得所有的系數(shù)并實(shí)現(xiàn)HSMM 模型參數(shù)的更新。由于這種參數(shù)估計(jì)算法的復(fù)雜度遠(yuǎn)低于對(duì)整個(gè)模型重新進(jìn)行參數(shù)估計(jì),因此適合用于在線計(jì)算。但是,由于上述算法是不斷根據(jù)新的觀測(cè)數(shù)據(jù)來實(shí)現(xiàn)動(dòng)態(tài)的模型參數(shù)更新,如果不加判- 8 -斷地利用所有進(jìn)入服務(wù)器的Web 訪問序列和上述算法來更新模型參數(shù),則很容易使模型

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

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

32、 ,并計(jì)算出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)對(duì)應(yīng)于該模型的平均對(duì)數(shù)或然概率。C. 模型實(shí)時(shí)更新。D. 重復(fù)A 、B 和C 。 (3 正常度判斷本文以訓(xùn)練數(shù)據(jù)集內(nèi)的所有序列的平均對(duì)數(shù)或然概率的均值lkh 作為正常行為的參考點(diǎn)。當(dāng)某個(gè)用戶l 的HTTP 請(qǐng)求序列達(dá)到一定長度時(shí),可得到該用戶的平均對(duì)數(shù)或然概率lkh (l。通過比較lkh (l和lkh ,可以得到該用戶相對(duì)于訓(xùn)練數(shù)據(jù)的正常度。差值越小的,正常度越高,優(yōu)先權(quán)也越高;

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

34、例如數(shù)據(jù)挖掘分析模型輸出的狀態(tài)序列,從而估計(jì)出用戶當(dāng)前的訪問主題、訪問興趣變化及訪問行為特征等。由于模型的狀態(tài)數(shù)遠(yuǎn)小于網(wǎng)站的頁面數(shù),對(duì)邏輯訪問序列的挖掘分析不但計(jì)算量小,而且結(jié)果更加簡單、明了。4.模型的驗(yàn)證本文使用World Cup 19988的實(shí)際流驗(yàn)證模型的有效性。我們選取了兩場(chǎng)比賽各自前后2.5小時(shí)的用戶Web訪問記錄作為模型驗(yàn)證數(shù)據(jù)。經(jīng)過數(shù)據(jù)預(yù)處理與隨機(jī)抽選,最終形成4組數(shù)據(jù)集:DS1、DS2、DS3和DS4。其中DS1、DS2和DS3都隨機(jī)(不重疊選自一場(chǎng)比賽,DS1和DS2是小流量用戶,DS3是大流量用戶。DS1用于模型的訓(xùn)練,DS2和DS3用于測(cè)試。DS4是選自另外一場(chǎng)比賽的用戶,用于模型測(cè)試。 (a (b (c (d圖3 Web用戶行為分類由于World Cup 1998是一個(gè)體育網(wǎng)站,用戶訪問的特點(diǎn)受賽事的時(shí)間表影響大。不同比賽期間,用戶關(guān)注的焦點(diǎn)對(duì)象也不同,即用戶的瀏覽行為也不同。由前文可知,HSMM 的狀態(tài)跳轉(zhuǎn)可以近似模擬用戶的邏輯訪問行為的變化,為此,我們通過分析各個(gè)數(shù)據(jù)集中各個(gè)狀態(tài)的分布情況,可以了解用戶的行為特點(diǎn)。對(duì)一個(gè)采用10狀態(tài)、最大停留時(shí)間為10的HSM

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論