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

基于iForest和LOF的流量異常檢測

2022-12-31 00:00:00杭菲璐郭威陳何雄張振紅易東陽
計算機應(yīng)用研究 2022年10期

摘要:異常檢測在現(xiàn)代大規(guī)模分布式系統(tǒng)的安全管理中起著重要作用,而網(wǎng)絡(luò)流量異常檢測則是組成異常檢測系統(tǒng)的重要工具。網(wǎng)絡(luò)流量異常檢測的目的是找到和大多數(shù)流量數(shù)據(jù)不同的流量,并將這些離群點視為異常。由于現(xiàn)有的基于樹分離的孤立森林(iForest)檢測方法存在不能檢測出局部異常的缺陷,為了克服這個缺陷,提出一種基于iForest和局部離群因子(LOF)近鄰集成的無監(jiān)督的流量異常檢測方法。首先,改進原始的iForest與LOF算法,在提升檢測精度的同時控制算法時間;然后分別使用兩種改進算法進行檢測,并將結(jié)果進行融合以得到最終的檢測結(jié)果;最后在自制數(shù)據(jù)集上對所提方法進行有效性驗證。實驗結(jié)果表明,所提方法能夠有效地隔離出異常,獲得良好的流量異常檢測效果。

關(guān)鍵詞:流量異常檢測;" 大規(guī)模多維數(shù)據(jù);" 孤立森林;" 特征離群系數(shù);" 局部離群因子

中圖分類號:TP393.08文獻標(biāo)志碼:A文章編號:1001-3695(2022)10-037-3119-05

doi: 10.19734/j.issn.1001-3695.2022.03.0121

Network traffic anomaly detection based on iForest and LOF

Hang Feilu1, Guo Wei1, Chen Hexiong1, Zhang Zhenhong1, Yi Dongyang2

(1. Information Center, Yunnan Power Grid Co., Ltd., Kunming 650034, China; 2. Network amp; Data Security Key Laboratory of Sichuan Province, University of Electronic Science amp; Technology of China, Chengdu 610054, China)

Abstract:

Network traffic anomaly detection is an important tool of anomaly detection system. The purpose of network traffic anomaly detection is to find the data different from most data in the traffic log, and treat these outliers as exceptions. The exis-ting isolation forest (iForest) method based on tree separation has a defect: which cannot detect local anomalies. In order to overcome the defect, this paper proposed an unsupervised traffic anomaly detection method based on iForest and LOF nearest neighbor integration. Firstly, it improved the original iForest and LOF algorithms to enhance the detection accuracy and control the algorithm time. Then, it used the two improved algorithms to detect, and fused the results of two algorithms to get the final detection result. Finally, this paper validated this method on the self-made dataset. Experimental results show that the proposed method can effectively isolate anomalies, and obtain good traffic anomaly detection effect.

Key words:traffic anomaly detection; large scale multidimensional data; isolation forest(iForest); characteristic outlier coefficient; local outlier factor(LOF)

0引言

網(wǎng)絡(luò)異常流量檢測通過對流量的檢測分析判斷,可以盡早地發(fā)現(xiàn)網(wǎng)絡(luò)中是否有入侵行為,為網(wǎng)絡(luò)安全管理提供依據(jù),因此,異常流量檢測逐漸成為網(wǎng)絡(luò)安全領(lǐng)域的研究重點[1]。網(wǎng)絡(luò)流量異常檢測是網(wǎng)絡(luò)安全領(lǐng)域中重要的一部分,傳統(tǒng)上通常使用關(guān)鍵字搜索或規(guī)則匹配等方法手動檢查流量日志,然而日志的復(fù)雜性以及數(shù)據(jù)量的增大使得人工檢測難以進行,因此提出了許多基于流量日志的異常檢測方法。網(wǎng)絡(luò)流量異常檢測的目的是找到流量日志中與大多數(shù)數(shù)據(jù)不同的數(shù)據(jù),并將這些離群點視為異常。常用的流量異常檢測算法一般分為以下幾類:

a)使用基于統(tǒng)計學(xué)的方法。這種方法一般會構(gòu)建一個概率分布模型,并通過該模型計算對象的概率,將具有低概率的對象視為異常點。

b)使用基于聚類的方法。大部分聚類算法基于數(shù)據(jù)特征的分布將數(shù)據(jù)聚集成簇,同樣也被用于單維或多維數(shù)據(jù)的異常檢測。但由于聚類方法不是專門用于異常檢測,所以檢測效果不明顯。

c)使用基于密度的方法。基于密度的方法如局部離群因子算法LOF,通過計算一個數(shù)值score來反映一個樣本的異常程度。LOF算法能有效避免數(shù)據(jù)密度分布不同對檢測帶來的影響,但LOF算法在面對高維數(shù)據(jù)時效果會有所下降。因為正常的數(shù)據(jù)點可能沒有足夠的鄰居或者異常點有很多的鄰居,這樣計算復(fù)雜度以及定義數(shù)據(jù)之間的距離有時會很困難。

d)使用專門的異常點檢測算法。對于聚類算法來說,主要任務(wù)還是將數(shù)據(jù)聚集成不同的簇,檢測異常點只是一個附帶的結(jié)果,而iForest算法的目的就是專門檢測異常點。不同于之前的算法先尋找正常的數(shù)據(jù)范圍,然后將不在正常區(qū)域的點視為異常點。iForest明確地隔離異常值,是一種非常有效的異常檢測算法,它適用于高維數(shù)據(jù),但它分割的過程是隨機的,這會導(dǎo)致異常檢測的結(jié)果不穩(wěn)定。iForest 的主要優(yōu)點是它的線性執(zhí)行時間,這使得它與其他方法相比非常有效,因此對于大型數(shù)據(jù)集的挑戰(zhàn)是一個非常有吸引力的選擇。iForest顯示出在高維數(shù)據(jù)集中檢測全局異常的能力[2],并且檢測效果可以與LOF[3]和ORCA[4]等最先進的方法相競爭。

本文結(jié)合iForest和LOF的特點提出了一種iForest和LOF融合的改進算法來進行流量異常檢測。首先采用改進的iFo-rest算法和改進的LOF算法對原始數(shù)據(jù)進行檢測,然后對兩種算法的結(jié)果進行融合。與現(xiàn)有基于最近鄰的異常檢測器(如LOF)不同,該算法可以高效地獲取離群值。

1相關(guān)工作

1.1iForest算法

iForest是一個獨特的異常檢測器,因為它使用一種隔離機制來檢測異常。在孤立森林中,異常被定義為容易被孤立的離群點,可以將其理解為分布稀疏且離密度高的群體較遠的點。在特征空間里,分布稀疏的區(qū)域表示事件發(fā)生在該區(qū)域的概率很低,因而可以認(rèn)為落在這些區(qū)域里的數(shù)據(jù)是異常的。孤立森林是一種適用于連續(xù)數(shù)據(jù)的無監(jiān)督異常檢測方法,即不需要有標(biāo)記的樣本來訓(xùn)練,但特征需要是連續(xù)的。該算法的核心是由若干樹iTree組成的森林forest。iTree是一棵隨機二叉樹,為了構(gòu)建iTree,需要通過隨機抽樣的方式從數(shù)據(jù)集D中選取n個樣本構(gòu)成一個數(shù)據(jù)子集D1,然后從D1={d1,d2,…,dn}中隨機選取一個屬性X和一個分離值p;最后,根據(jù)屬性X的值對每個數(shù)據(jù)di進行劃分;如果di(X)lt;p,則將數(shù)據(jù)放在左子節(jié)點,反之,將數(shù)據(jù)放在右子節(jié)點。在這種模式下,一個iTree將被迭代構(gòu)成,直到滿足以下任一條件:樹達到了限制的高度;節(jié)點上只有一個樣本;節(jié)點上的樣本所有特征都相同。在這種隨機分割的策略下,異常點通常具有較短的路徑。iForest具有時間復(fù)雜度低、精度高、適應(yīng)高維數(shù)據(jù)的優(yōu)點,但容易丟失數(shù)據(jù)局部密度信息,因此對全局離群點的檢測優(yōu)勢較大,不擅長處理局部離群點。由于iTree的結(jié)構(gòu)是隨機的,單一圖形的結(jié)果不可靠,但通過大量的iTree使該算法的魯棒性得到了較大的提高。

王燕晉等人[5]通過構(gòu)建孤立森林算法和二叉樹模型,加強了信息數(shù)據(jù)挖掘、檢測、識別過程的運算精準(zhǔn)度,但該方法適用性還有待提高。肖峰[6]提出基于孤立森林算法的計算機網(wǎng)絡(luò)潛在攻擊檢測方法。對提取的計算機網(wǎng)絡(luò)潛在攻擊譜特征進行聚類分析,結(jié)合孤立森林學(xué)習(xí)算法實現(xiàn)攻擊檢測,但算法檢測時效性還有待提高。徐迪等人[7]針對配電網(wǎng)線損異常檢測問題提出了一種基于聚類和孤立森林算法的檢測方法,該方法預(yù)設(shè)了線損異常的概率已知,概率未知時的線損異常判定問題需要進一步研究。楊曉暉等人[8]提出了基于隨機超平面的隔離機制和多粒度掃描機制,使改進的孤立森林算法對復(fù)雜異常數(shù)據(jù)模式有更好的穩(wěn)健性,但由于未考慮到關(guān)聯(lián)屬性特性,增加了算法的不確定性。李倩等人[9]提出了一種基于模糊孤立森林算法的數(shù)據(jù)異常檢測方法,有效地解決了樣本數(shù)據(jù)對于每一屬性的異常程度不同的問題,但增加了時間開銷。趙嫚等人[10]提出了一種基于模糊聚類和孤立森林的異常檢測方法,適用于實際數(shù)據(jù)集中異常點較少的用電數(shù)據(jù)異常檢測,但對于異常點較多的數(shù)據(jù)適用效果較差。李新鵬等人[11]提出一種根據(jù)異常偏差率大小篩選子森林異常檢測器的更新策略,解決了模型隨機更新導(dǎo)致異常檢測器整體性能下降的問題,但該方法的綜合性能及適用性還有待提高。

1.2LOF算法

LOF通過計算一個數(shù)值score來反映一個樣本的異常程度。這個數(shù)值的計算方法是:一個樣本點周圍的樣本點所處位置的平均密度比上該樣本點所在位置的密度。比值越大于1,則該點所在位置的密度越小于其周圍樣本所在位置的密度,這個點就越有可能是異常點。局部離群因子算法能有效避免數(shù)據(jù)密度分布不同對檢測帶來的影響,但由于計算LOF值時需要查找每個數(shù)據(jù)點的可達距離,導(dǎo)致檢測成本非常高,難以滿足對高維數(shù)據(jù)進行高效檢測的需求。

王巨灝等人[12]針對目前臺區(qū)線損異常存在的判定問題,提出了基于KNN和LOF算法的臺區(qū)線損異常檢測方法,所提出方法具有良好的檢測性能,但該方法沒有與其他算法進行比較,說服力還有待提高。劉芳等人[13]提出了快速的top-n局部離群點檢測算法(MTLOF),但沒有提升算法的準(zhǔn)確率。曾冬洲等人[14]應(yīng)用主成分分析法和LOF相結(jié)合的方法設(shè)計了變壓器異常檢測模型,可以實現(xiàn)動態(tài)實時數(shù)據(jù)的異常檢測,但該方法沒有與其他算法進行比較,說服力還有待提高。司方遠等人[15]提出一種基于AP-LOF離群組檢測的配電網(wǎng)連接驗證方法,避免了判定閾值對檢測結(jié)果的影響,能夠準(zhǔn)確有效地對臺區(qū)內(nèi)的離群組用戶進行校驗,提高了配電網(wǎng)連接驗證效率,但該方法只與LOF算法進行實驗比較,說服力還有待提高。Xu 等人[16]提出了一種優(yōu)化方法,即聯(lián)合調(diào)整LOF超參數(shù)k進行離群點檢測的啟發(fā)式策略,但該方法不能保證調(diào)整后的參數(shù)將使精確度最高。仇開等人[17]提出一種加權(quán)LOF結(jié)合上下文判斷的云環(huán)境中服務(wù)運行數(shù)據(jù)異常檢測方法,能夠有效檢測出云環(huán)境中的服務(wù)運行數(shù)據(jù)異常,但是該方法在準(zhǔn)確率方面沒有提高。賀寰燁等人[18]提出了一種基于密度空間的局部離群因子算法LOFBDS,有良好的檢測效果,但在計算和時間消耗上還存在優(yōu)化空間。

2基于iForest和LOF的流量異常檢測方法

2.1數(shù)據(jù)預(yù)處理

本文方法將捕獲的流量數(shù)據(jù)包保存為pcap格式的本地文件。首先對截取的原始pcap包進行預(yù)處理,經(jīng)過流處理程序后,pcap文件中的數(shù)據(jù)包(packet)以流(flow)為單位進行歸并,并提取流的若干特征存成csv格式的流量日志。該流量日志中包含的流特征如下:每條流的用戶IP、連接時間、持續(xù)時間、協(xié)議類型、出流量大小、出流量峰值、出流量均值、入流量大小、入流量峰值、入流量均值、出包大小、出包峰值、出包均值、入包大小、入包峰值、入包均值等。

此外,原始數(shù)據(jù)中存在一些列的屬性為字符串如TCP、IP等,這些字符串類型的數(shù)據(jù)是沒辦法進行訓(xùn)練的,需要通過一個詳細的對應(yīng)表將這些字符串類型的屬性轉(zhuǎn)換為離散的數(shù)字并進行歸一化。圖1為數(shù)據(jù)預(yù)處理流程。

2.2改進的iForest算法

iForest算法復(fù)雜度較低,但該算法僅對全局稀疏性敏感,不善于處理局部相對稀疏點。由于人為引入了隨機因素,算法存在精度低和穩(wěn)定性差等問題,iForest不適用于特別高維的數(shù)據(jù)。由于每次切數(shù)據(jù)空間都是隨機選取一個維度,建完樹后仍然有大量的維度信息沒有被使用,導(dǎo)致算法可靠性降低;高維空間還可能存在大量噪聲維度或無關(guān)維度,影響樹的構(gòu)建。針對算法的特點,本文對iForest算法進行了改進,改進iForest算法的具體步驟如下:

a)隨機選擇數(shù)據(jù)子集。與原始的iForest算法一樣,通過隨機抽樣的方式從數(shù)據(jù)集D中選取n個樣本構(gòu)成若干個數(shù)據(jù)子集Di={d1,d2,…,dn},放入樹的根節(jié)點。

b)通過分割建立iTree。不斷地分割數(shù)據(jù)子集D1最終形成一棵iTree,再由多棵iTree組成森林forest。原始的iForest算法在構(gòu)建iTree的過程中每次分割由隨機選取的一個屬性X和一個分離值p來決定,然而當(dāng)異常需要通過同時考慮多個屬性來檢測時,僅僅選取個別屬性來分離異常效果很差。本文引入與原屬性非軸平行的隨機超平面來進行分割。在每個節(jié)點中,給定足夠的隨機生成超平面的實驗,最終能夠產(chǎn)生一個足夠好的超平面。盡管單個超平面可能不是最優(yōu)的,但由于集成學(xué)習(xí)器的聚集能力,所得模型作為一個整體仍然是高效的。具體實現(xiàn)為,在構(gòu)造樹的每一次分割中,利用隨機生成的超平面構(gòu)造一個分離超平面f。

f(X)=∑j∈QcjXjσ(Xj)(1)

其中:Q有q個屬性指標(biāo),從{1,2,…,d}中隨機選取而不替換;cj是一個系數(shù),在[-1,1]隨機選取;Xj是X的第j個屬性值,σ(·)計算標(biāo)準(zhǔn)差。這個樹構(gòu)建過程繼續(xù)遞歸地處理過濾后的子集,直到子集的大小小于或等于2。構(gòu)建多棵iTree后組成森林forest。

c)判斷異常數(shù)據(jù)點。iForest算法由葉子節(jié)點到樹根節(jié)點的距離來計算異常值、判斷異常點。在iForest中,樣本點a的路徑長度h(a)為從孤立樹的根節(jié)點到葉子節(jié)點所經(jīng)過的邊的數(shù)量。給定一個包含n個樣本的數(shù)據(jù)集,樹的平均路徑長度為

c(n)=2H(n-1)-2(n-1)n(2)

其中:c(n)為給定樣本數(shù)n時,路徑長度的平均值。H(n-1)的計算公式如下:

H(n-1)=ln(n-1)+ξ(3)

其中:ξ為歐拉常數(shù),約為0.577 2。樣本a的iForest異常得分定義為

s(a,n)=2-E(h(a))c(n)(4)

其中:h(a)表示樣本點a從孤立樹的根節(jié)點到葉子節(jié)點所經(jīng)過的邊的數(shù)量;E(h(a))是樣本a在一批孤立樹中h(a)的平均值。從式(2)中可以看出,當(dāng)E(h(a))→c(n)時,s→0.5,即當(dāng)所有點的得分s都在0.5左右時,樣本中沒有明顯的異常值;當(dāng)E(h(a))→0時,s→1,該對象是一個異常值。當(dāng)E(h(a))→n-1時,s→0,該對象是正常值。

改進的iForest使用一個簡單而有效的機制,在構(gòu)造iTree的過程中引入了隨機超平面,當(dāng)異常檢測依賴于多個屬性時,在超平面中使用更多的屬性可以獲得更好的檢測性能。

2.3改進的LOF算法

LOF算法的具體步驟如下:

a)對于每一個數(shù)據(jù)點,計算它與其他數(shù)據(jù)點間的歐氏距離dist(di,dj);

b)對于每一個數(shù)據(jù)點,計算k距離k_dist(di):將數(shù)據(jù)點di到其他數(shù)據(jù)點的距離按從小到大排序,數(shù)據(jù)點到第k個數(shù)據(jù)點的距離即為k距離。

c)對于每一個數(shù)據(jù)點,找到它的k距離鄰域Nk(di):到數(shù)據(jù)點di的距離小于k_dist(di)的數(shù)據(jù)點集合。

d)計算第k可達距離reach_distk(dr,di):數(shù)據(jù)點di的k距離和數(shù)據(jù)點di到數(shù)據(jù)點dr之間距離的最大值。

reach_distk(dr,di)=max{k_dist(di),dist(dr,di)}(5)

e)計算局部可達密度lrdk(di),數(shù)據(jù)點di的k距離鄰域內(nèi)的所有數(shù)據(jù)點到數(shù)據(jù)點di的平均可達距離的倒數(shù)。

lrdk(di)=1(∑ds∈Nk(di)reach_distk(ds,di)|Nk(di)|)(6)

f)計算局部離群因子LOF(di),數(shù)據(jù)點di的k距離鄰域中所有點的局部可達密度與數(shù)據(jù)點di的局部可達密度之比的平均數(shù)。

LOF(di)=∑dt∈Nk(di)lrdk(dt)lrdk(di)|Nk(di)|(7)

g)根據(jù)局部離群因子判斷異常點,最終得到的LOFk(di)既是數(shù)據(jù)點di的異常值。

使用LOF算法求出對象的LOF值,通過判斷LOF是否近似于1來確定離群度。如果LOF遠遠大于1,則認(rèn)為是離群值;反之,如果接近于1,則認(rèn)為是正常點。LOF值的計算可以根據(jù)定義得到,但隨著實例數(shù)量的增加,計算成本也不斷增加,到達普通用戶難以接受的程度。因此,本文改進LOF算法首先通過聚類來排除部分正常點,然后在剩下的集合中計算LOF,在保證正確率的前提下大大節(jié)省了時間,具體過程如下:

首先,隨機選取n個點作為初始聚集的簇心a=a1,a2,…,an,分別計算每個樣本點到n個簇核心的距離,找到離該點最近的簇核心,將它歸屬到對應(yīng)的簇,所有點都歸屬到簇之后,數(shù)據(jù)集就分為了n個簇。然后,針對每個簇心aj,重新計算每個簇的重心,將其定為新的簇心。

aj=1ci∑x∈cix(8)

其中:ci表示簇心ai所在簇的一點。反復(fù)迭代改變簇心的位置,直到聚類中心的距離變化小于設(shè)定的閾值。最后,計算聚類內(nèi)部點到聚類中心的距離s(ci,ai),并將距離按照從小到大排序,按比例θ篩選出距離聚類中心最近的點,作為聚類中心密集點,θ的取值為[0,0.5]。在本實驗中,θ設(shè)置為0.2。

對于聚類中心密集點,由于接近中心且較為密集,它們的LOF值近似為1,不是值得關(guān)注的離群點,所以將它們的LOF值標(biāo)記為1,將其余點標(biāo)記為噪聲點,并對噪聲點進行進一步的分析處理。最后在剩余噪聲點組成的數(shù)據(jù)集上使用LOF算法,通過式(7)計算LOF值,找出異常點。

改進的 LOF 算法輸入為數(shù)據(jù)集D,鄰居數(shù)k,輸出異常點。對于每個噪聲數(shù)據(jù)點,進行k個鄰居查詢,得到k個鄰居,各數(shù)據(jù)對象的局部離群因子可由式(7)求得;對計算得到的局部離群因子進行降序排序,前n個數(shù)據(jù)點為異常點。

2.4結(jié)果融合

算法的整體流程如圖2所示。將改進后的iForest和LOF兩個算法輸出的結(jié)果映射到同一空間并計算得出最終的異常值。判斷所考察數(shù)據(jù)點是否為異常點,需要從其在全局?jǐn)?shù)據(jù)空間所處位置以及鄰域密度差異兩方面來考慮。iForest根據(jù)數(shù)據(jù)全局信息計算數(shù)據(jù)點異常分?jǐn)?shù),LOF根據(jù)數(shù)據(jù)點鄰域信息計算LOF值,因此,本文方法從數(shù)據(jù)點的全局分布下的異常信息以及局部離群程度來綜合確定最終離群點。結(jié)合兩個算法所得數(shù)據(jù)點a的異常分?jǐn)?shù)s_iForest(a)以及s_lof(a),分別計算它們的Z-score值,將它們標(biāo)準(zhǔn)化到同一空間。

zs_iforest(a)=s_iforest(a)-mean_iforeststd_iforest(9)

zs_lof(a)=s_lof(a)-mean_lofstd_lof(10)

其中:mean_iForest、std_iForest、mean_lof、std_lof分別是各自算法結(jié)果中所有異常值的均值與標(biāo)準(zhǔn)差。最后,據(jù)式(11)計算得到數(shù)據(jù)點a最終的異常值score(a)。其中,β為融合權(quán)重,由于LOF算法檢測更精確,具有更高可信度,且孤立森林算法具有隨機性,經(jīng)過實驗驗證,賦予LOF值較大權(quán)重,取值為[0.6,0.8]。

score(a)=(1-β)×zs_iforest(a)+β×zs_lof(a)(11)

最后輸出所有用戶的異常值,并從大到小進行排序。排名越靠前用戶越有可能是異常用戶。

3實驗與結(jié)果分析

3.1實驗細節(jié)

實驗中的模型均是用Python 3.6實現(xiàn),實驗環(huán)境為Windows 10,CPU為i7-10700。

3.2實驗數(shù)據(jù)

本文所用到的數(shù)據(jù)集是從本實驗室出口交換機自行收集得到的真實上網(wǎng)流量,包含120個上網(wǎng)節(jié)點。初始原始數(shù)據(jù)為10 GB的pcap格式文件,經(jīng)過流處理程序處理,將每個pcap文件中的數(shù)據(jù)包(packet)以流(flow)為單位進行歸并,并提取出n維流特征信息:每條流的用戶IP、連接時間、出流量大小、出流量峰值、出流量均值、入流量大小、入流量峰值、入流量均值、出包大小、出包峰值、出包均值、入包大小、入包峰值、入包均值等。本次實驗截取了2021年6月28日24 h的數(shù)據(jù),包含一千萬條數(shù)據(jù)信息。部分流量日志截圖如圖3所示。

3.3實驗結(jié)果與分析

由于收集的真實數(shù)據(jù)集沒有標(biāo)簽,本文算法為無監(jiān)督算法。將數(shù)據(jù)集放入模型中,分別對原始iForest算法、原始LOF算法和本文算法進行測試,結(jié)果如表1所示。

從表1可以看出,原始iForest算法和原始LOF算法的結(jié)果有較大差別,對于部分相同源IP的異常流量檢測結(jié)果相差較大,比如對于源IP 192.168.0.31,原始iForest算法得到的得分為負(fù),說明該算法認(rèn)為該用戶為異常用戶的可能性很低;而原始LOF算法計算出的異常得分卻很高,認(rèn)為該用戶極有可能是異常用戶。這是由于iForest是根據(jù)數(shù)據(jù)全局信息計算數(shù)據(jù)點異常分?jǐn)?shù),而LOF根據(jù)數(shù)據(jù)點鄰域信息計算LOF值。單一的異常檢測方法對所有數(shù)據(jù)采用同一種異常標(biāo)準(zhǔn),這就導(dǎo)致無法綜合考慮數(shù)據(jù)的全局和局部信息。當(dāng)大規(guī)模多維數(shù)據(jù)集的正常點與離群點的比例極其不平衡時,采用統(tǒng)一標(biāo)準(zhǔn)的單一異常檢測方法無法準(zhǔn)確檢測出異常點。

通過本文方法融合兩者結(jié)果,既利用了iForest算法對全局?jǐn)?shù)據(jù)空間處理的優(yōu)勢,也發(fā)揮了LOF算法對鄰域密度處理的優(yōu)勢,結(jié)合數(shù)據(jù)的全局異常信息以及局部離群程度來綜合確定異常點,提高了異常數(shù)據(jù)的檢測精度。最終得到的異常分?jǐn)?shù)與異常用戶排名更加合理。

將最終異常得分歸一化后通過抖動圖可視化如圖4所示。抖動圖將每個數(shù)據(jù)點從原始位置移動一個小的隨機數(shù),目的是確保沒有兩個點完全落在彼此之上。圖4中每一個點代表一個源IP即用戶,橫軸表示歸一化后的異常得分,得分接近1表示算法認(rèn)為該用戶有很大幾率是異常用戶,在圖中表現(xiàn)為靠近右側(cè);而得分接近0則表示算法認(rèn)為該用戶有很大幾率是正常用戶,在圖中表現(xiàn)為靠近左側(cè)。

由圖4可以看出,異常得分較高的點即潛在異常用戶分布稀疏,而異常得分較低的正常點聚集在圖片的左側(cè)。這說明本文方法能夠較為明顯地從流量日志中分離出異常的用戶。

為了更加精確地衡量算法的精確性,對用數(shù)據(jù)集中異常源IP進行標(biāo)注,數(shù)據(jù)集共有225個有效用戶數(shù)據(jù),其中包含17個異常用戶,異常用戶占比為7.56%。為了體現(xiàn)本文算法的優(yōu)勢,除了原始iForest與LOF算法,還同CBLOF[19]、HBOS[20]、OneClassSVM[21]這三種無監(jiān)督異常檢測算法進行了比較。其中,CBLOF算法是基于聚類的LOF算法,通過引入聚類思想分離出異常點,在實驗中表現(xiàn)出較好的效果;HBOS算法是一種單變量方法的組合,對大數(shù)據(jù)集友好,在全局異常檢測問題上表現(xiàn)良好;OneClassSVM算法有能力捕獲數(shù)據(jù)集的形狀,因此對于強非高斯數(shù)據(jù)有更加優(yōu)秀的效果。將六種不同的算法運用到標(biāo)注后的數(shù)據(jù)集進行測試。圖5、6給出了六種不同算法下的ROC曲線和對應(yīng)的AUC值。該曲線的橫坐標(biāo)為假陽性率(1 positive rate,F(xiàn)PR),縱坐標(biāo)為真陽性率(true positive rate,TPR)。其中AUC為ROC曲線下方的面積,可以通過比較AUC的大小來評估算法的性能。ROC曲線一般會位于y=x這條線的上方,所以AUC的值為0.5~1.0,AUC越接近于1.0,說明算法的精確度越高。

從圖5可以看出,本文方法的AUC值整體高于兩個原始算法以及另外三種無監(jiān)督異常檢測算法,而iForest算法的AUC值高于LOF算法。在橫軸的假陽性率達到0.4時,本文方法縱軸的真陽性率已經(jīng)接近100%,而原始iForest的真陽性率為90%左右,原始LOF僅為85%左右。從圖6可以看出,在橫軸的假陽性率達到0.4時,其余三種無監(jiān)督異常檢測算法的真陽性率則在70%~80%。通過上述分析可以得出,在相同數(shù)據(jù)集下,本文算法相比于原始iForest和原始LOF算法應(yīng)用于流量異常檢測上具有更高的精確度,證明本文方法更加適用于流量異常檢測分析。

4結(jié)束語

在真實網(wǎng)絡(luò)環(huán)境中進行流量異常的檢測,往往面臨著流量數(shù)據(jù)規(guī)模較大和缺乏有效標(biāo)注數(shù)據(jù)這兩個挑戰(zhàn)性問題。因此研究一種基于無監(jiān)督學(xué)習(xí)的快速流量異常檢測方法能夠處理大規(guī)模的高維流量數(shù)據(jù),是本文的研究目標(biāo)。

針對這一目標(biāo),本文提出了一種基于iForest和LOF的改進型流量異常檢測方法。該方法對原始iForest和LOF算法進行改進并對結(jié)果進行融合,在一定程度上彌補了兩種算法的缺點并保留了優(yōu)點,最后通過實驗驗證了該方法的可行性和有效性。但該方法還存在運行時間較長的問題,下一步的研究方向是如何提升算法的運行效率。

參考文獻:

[1]李杰鈴,張浩. 半監(jiān)督異常流量檢測研究綜述 [J]. 小型微型計算機系統(tǒng),2020,41(11): 2371-2379. (Li Jieling,Zhang Hao. Survey on semi-supervised anomaly traffic detection [J]. Journal of Chinese Computer Systems,2020,41(11): 2371-2379. )

[2]Liu F T,Ting K M,Zhou Zhihua. Isolation forest[C]// Proc of the 8th IEEE International Conference on Data Mining. Washington DC: IEEE Computer Society,2008: 413-422.

[3]Breunig M M,Kriegel H P,Ng R T,et al. LOF: identifying density-based local outliers [J]. ACM SIGMOD Record,2000,29(2): 93-104.

[4]Bay S D,Schwabacher M. Mining distance-based outliers in near linear time with randomization and a simple pruning rule[C]// Proc of the 9th ACM SIGKDD International Conference on Knowledge Disco-very and Data Mining. New York: ACM Press,2003: 29-38.

[5]王燕晉,易忠林,鄭思達,等. 基于孤立森林算法的電力用戶數(shù)據(jù)異??焖僮R別研究 [J]. 電子設(shè)計工程,2022,30(3): 11-14,19. (Wang Yanjin,Yi Zhonglin,Zheng Sida,et al. Research on fast identification of power user data abnormal based on isolation forest algorithm [J]. Electronic Design Engineering,2022,30(3): 11-14,19. )

[6]肖峰. 基于孤立森林算法的計算機網(wǎng)絡(luò)潛在攻擊檢測方法 [J]. 河北北方學(xué)院學(xué)報: 自然科學(xué)版,2021,37(11): 13-18. (Xiao Feng. Detection method of potential attack on computer network based on isolated forest algorithm [J]. Journal of Hebei North University: Natural Science Edition,2021,37(11): 13-18. )

[7]徐迪,陸煜鋅,肖勇,等. 基于孤立森林算法的配電網(wǎng)線損異常判定 [J]. 電力系統(tǒng)保護與控制,2021,49(16): 12-18. (Xu Di,Lu Yuxin,Xiao Yong,et al. Identification of abnormal line loss for a distribution power network based on an isolation forest algorithm [J]. Power System Protection and Control,2021,49(16): 12-18. )

[8]楊曉暉,張圣昌. 基于多粒度級聯(lián)孤立森林算法的異常檢測模型 [J]. 通信學(xué)報,2019,40(8): 133-142. (Yang Xiaohui,Zhang Shengchang. Anomaly detection model based on multi-grained cascade isolation forest algorithm [J]. Journal on Communications,2019,40(8): 133-142. )

[9]李倩,韓斌,汪旭祥. 基于模糊孤立森林算法的多維數(shù)據(jù)異常檢測方法 [J]. 計算機與數(shù)字工程,2020,48(4): 862-866. (Li Qian,Han Bin,Wang Xuxiang. Multidimensional data anomaly detection method based on fuzzy isolated forest algorithm [J]. Computer amp; Digital Engineering,2020,48(4): 862-866. )

[10]趙嫚,李英娜,李川,等. 基于模糊聚類和孤立森林的用電數(shù)據(jù)異常檢測 [J]. 陜西理工大學(xué)學(xué)報: 自然科學(xué)版,2020,36(4): 38-43. (Zhao Man,Li Yingna,Li Chuan,et al. Anomaly detection of power consumption data based on fuzzy clustering and isolated forest [J]. Journal of Shaanxi University of Technology: Natural Science Edition,2020,36(4): 38-43. )

[11]李新鵬,高欣,閻博,等. 基于孤立森林算法的電力調(diào)度流數(shù)據(jù)異常檢測方法 [J]. 電網(wǎng)技術(shù),2019,43(4): 1447-1456. (Li Xinpeng,Gao Xin,Yan Bo,et al. An approach of data anomaly detection in power dispatching streaming data based on isolation forest algorithm [J]. Power System Technology,2019,43(4): 1447-1456.)

[12]王巨灝,蔡嘉輝,王琨,等. 基于KNN與LOF算法的臺區(qū)線損異常檢測 [J]. 電工技術(shù),2021(24): 175-177. (Wang Juhao,Cai Jia-hui,Wang Kun,et al. Detection of abnormal line loss in station area based on KNN and LOF algorithm [J]. Electric Engineering,2021(24): 175-177. )

[13]劉芳,齊建鵬,于彥偉,等. 基于密度的 top-n 局部異常點快速檢測算法 [J]. 自動化學(xué)報,2019,45(9): 1756-1771. (Liu Fang,Qi Jianpeng,Yu Yanwei,et al. A fast algorithm for density-based top-n local outlier detection [J]. Acta Automatica Sinica,2019,45(9): 1756-1771. )

[14]曾冬洲,鄭宗華. 基于局部離群因子算法的變壓器異常檢測 [J]. 電氣開關(guān),2021,59(2): 12-15,20. (Zeng Dongzhou,Zheng Zonghua. Transformer anomaly detection based on local outlier factor algorithm [J]. Electric Switchgear,2021,59(2): 12-15,20. )

[15]司方遠,韓英華,趙強,等. 基于AP-LOF離群組檢測的配電網(wǎng)連接驗證 [J]. 東北大學(xué)學(xué)報: 自然科學(xué)版,2020,41(8): 1070-1074. (Si Fangyuan,Han Yinghua,Zhao Qiang,et al. Verification of distribution network connectivity based on AP-LOF outlier group detection [J]. Journal of Northeastern University: Natural Science,2020,41(8): 1070-1074. )

[16]Xu Zekun,Kakde D,Chaudhuri A. Automatic hyperparameter tuning method for local outlier factor,with applications to anomaly detection [C]// Proc of IEEE International Conference on Big Data. Pisca-taway,NJ: IEEE Press,2019.

[17]仇開,姜瑛. 加權(quán)LOF結(jié)合上下文判斷的云環(huán)境中服務(wù)運行數(shù)據(jù)異常檢測方法 [J]. 計算機工程與科學(xué),2020,42(6): 951-958. (Qiu Kai,Jiang Ying. A service running data anomaly detection method based on weighted LOF and context judgment in cloud environment [J]. Computer Engineering amp; Science,2020,42(6): 951-958. )

[18]賀寰燁,林果園,顧浩,等. 云虛擬機異常檢測場景下改進的LOF算法[J]. 計算機工程與應(yīng)用,2020,56(23): 80-86. (He Huanye,Lin Guoyuan,Gu Hao,et al. Improved LOF algorithm in cloud virtual machine anomaly detection scenario [J]. Computer Engineering and Applications,2020,56(23): 80-86. )

[19]He Zengyou,Xu Xiaofei,Deng Shengchun. Discovering cluster-based local outliers [J]. Pattern Recognition Letters,2003,24(9-10): 1641-1650.

[20]Goldstein M,Dengel A. Histogram-based outlier score (HBOS): a fast unsupervised anomaly detection algorithm [EB/OL]. (2012). https://citeseerx.ist.psu.edu/viewdoc/dowhload?doi=10.1.1:401.5686 amp; rep=repl amp; type=pdf.

[21]Chen Yunqiang,Zhou X S,Huang T S. One-class SVM for learning in image retrieval [C]// Proc of International Conference on Image Processing. Piscataway,NJ: IEEE Press,2001: 34-37.

收稿日期:2022-03-14;修回日期:2022-05-07基金項目:國家自然科學(xué)基金資助項目(62072074,62076054,62027827,61902054,62002047);國家重點研發(fā)計劃前沿科技創(chuàng)新專項資助項目(2019QY1405);四川省科技創(chuàng)新基地(平臺)和人才計劃資助項目(2020JDJQ0020);四川省科技支撐計劃資助項目(2020YFSY0010)

作者簡介:杭菲璐(1984-),男,云南昭通人,工程師,碩士研究生,主要研究方向為網(wǎng)絡(luò)安全攻防技術(shù)(16182038@qq.com);郭威(1986-),男,云南昆明人,工程師,主要研究方向為網(wǎng)絡(luò)與網(wǎng)絡(luò)安全維護與管理;陳何雄(1984-),男,云南曲靖人,工程師,碩士研究生,主要研究方向為網(wǎng)絡(luò)技術(shù)及網(wǎng)絡(luò)安全運維;張振紅(1989-),男,云南曲靖人,工程師,碩士研究生,主要研究方向為網(wǎng)絡(luò)安全及信息系統(tǒng)運維;易東陽(1999-),男,四川樂山人,主要研究方向為網(wǎng)絡(luò)安全技術(shù).

主站蜘蛛池模板: 日本精品视频一区二区 | 伊人婷婷色香五月综合缴缴情| 97精品久久久大香线焦| 亚洲国产精品VA在线看黑人| 2021国产精品自拍| 午夜视频www| 狠狠色狠狠综合久久| 国产亚洲精| 欧美精品成人一区二区视频一| 毛片基地视频| 九色综合视频网| 亚洲男女在线| 亚洲最大在线观看| 国产婬乱a一级毛片多女| 久久96热在精品国产高清| 成人午夜亚洲影视在线观看| 久久国产高清视频| 欧美精品影院| 自拍偷拍欧美| 欧美精品三级在线| 亚洲日韩日本中文在线| 亚洲有无码中文网| 亚洲欧美极品| 亚洲精品在线91| 欧美亚洲欧美区| 亚洲系列无码专区偷窥无码| 免费国产黄线在线观看| 亚欧成人无码AV在线播放| 她的性爱视频| 欧美亚洲国产一区| 免费无码在线观看| 亚洲无码91视频| 国产又色又爽又黄| 国产精品自在在线午夜区app| 永久在线精品免费视频观看| 91精品伊人久久大香线蕉| 91亚洲精品国产自在现线| 国产亚洲精品91| 黄色网在线免费观看| 国产精品综合久久久| 婷五月综合| 久久久久亚洲Av片无码观看| 国产99精品久久| 精品无码人妻一区二区| 精品一区二区三区无码视频无码| 午夜啪啪网| 亚洲欧洲日韩久久狠狠爱| 中文字幕久久精品波多野结| 国产网站黄| 亚洲一区无码在线| 久热中文字幕在线观看| 亚洲人成成无码网WWW| 欧美国产综合视频| 亚洲 欧美 日韩综合一区| 91在线丝袜| 在线欧美a| 91麻豆精品国产91久久久久| 美女内射视频WWW网站午夜 | 91美女视频在线观看| 国产女人在线视频| 欧美成人综合在线| 久久精品国产在热久久2019| 好久久免费视频高清| 亚洲精品无码在线播放网站| 日韩麻豆小视频| 激情六月丁香婷婷| 国产成人高精品免费视频| 国产三级国产精品国产普男人| 玩两个丰满老熟女久久网| 国产一区二区三区在线观看视频| 9cao视频精品| 97免费在线观看视频| 超清无码一区二区三区| 国产三级视频网站| 91九色国产在线| 亚洲 欧美 日韩综合一区| 亚洲视频一区在线| 日韩国产综合精选| 国产h视频免费观看| 99视频在线精品免费观看6| 最新日本中文字幕| 亚洲国产精品日韩欧美一区|