亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于t-SNE降維預(yù)處理的網(wǎng)絡(luò)流量異常檢測

        2021-02-27 01:29:48郝怡然盛益強(qiáng)王勁林
        計算機(jī)與現(xiàn)代化 2021年2期
        關(guān)鍵詞:特征檢測

        郝怡然,盛益強(qiáng),王勁林

        (1.中國科學(xué)院聲學(xué)研究所國家網(wǎng)絡(luò)新媒體工程技術(shù)研究中心,北京 100190;2.中國科學(xué)院大學(xué)電子電氣與通信工程學(xué)院,北京 100049)

        0 引 言

        網(wǎng)絡(luò)流量中經(jīng)常會出現(xiàn)偏離正常范圍的異常流量,主要是由DDOS攻擊、滲透攻擊等惡意的網(wǎng)絡(luò)行為引起的,這些異常行為通常會導(dǎo)致網(wǎng)絡(luò)質(zhì)量下降,甚至導(dǎo)致網(wǎng)絡(luò)直接癱瘓[1]。因此引入網(wǎng)絡(luò)安全態(tài)勢的預(yù)測來判斷網(wǎng)絡(luò)中的異常,進(jìn)而在網(wǎng)絡(luò)攻擊發(fā)生或者造成嚴(yán)重后果之前進(jìn)行預(yù)警。網(wǎng)絡(luò)安全態(tài)勢的預(yù)測是指根據(jù)態(tài)勢的歷史信息和當(dāng)前狀態(tài)對網(wǎng)絡(luò)未來的發(fā)展趨勢進(jìn)行預(yù)測。現(xiàn)有的主要安全態(tài)勢預(yù)測方法包括神經(jīng)網(wǎng)絡(luò)、機(jī)器學(xué)習(xí)(如支撐向量機(jī))等?;跈C(jī)器學(xué)習(xí)的異常檢測被認(rèn)為是一種網(wǎng)絡(luò)安全態(tài)勢預(yù)測的方法[2-3],現(xiàn)有的異常檢測算法主要是對網(wǎng)絡(luò)中的歷史數(shù)據(jù)進(jìn)行分析,進(jìn)而預(yù)測未來的網(wǎng)絡(luò)中是否具有攻擊行為?,F(xiàn)有的異常檢測方法主要分為基于規(guī)則的異常檢測[4]、基于統(tǒng)計的異常檢測[5]和基于機(jī)器學(xué)習(xí)的異常檢測[5]?;谝?guī)則的異常檢測通常需要通過人工經(jīng)驗構(gòu)建規(guī)則庫,該方法能夠準(zhǔn)確地找出符合規(guī)則的異常,但無法檢測未知的異常?;诮y(tǒng)計的異常檢測通常需要假設(shè)數(shù)據(jù)服從某種分布,之后利用數(shù)據(jù)進(jìn)行參數(shù)估計,該方法魯棒性較強(qiáng),但過于依賴假設(shè)的分布?;跈C(jī)器學(xué)習(xí)的異常檢測能夠檢測未知的異常[5],并且不需要假設(shè)數(shù)據(jù)的分布。但基于機(jī)器學(xué)習(xí)的異常檢測算法需要找到準(zhǔn)確刻畫網(wǎng)絡(luò)數(shù)據(jù)包的特征。然而,現(xiàn)有的異常檢測算法由于無法準(zhǔn)確提取網(wǎng)絡(luò)數(shù)據(jù)包的低維特征導(dǎo)致算法的性能不佳。因此,需要找到網(wǎng)絡(luò)數(shù)據(jù)包的準(zhǔn)確的低維特征表示,該低維特征表示能夠區(qū)分網(wǎng)絡(luò)數(shù)據(jù)包是正常的還是有攻擊的。

        由于網(wǎng)絡(luò)中的標(biāo)簽數(shù)據(jù)較難獲得,如果對所有的數(shù)據(jù)進(jìn)行標(biāo)記需要大量的人力,但如果忽略大量的無標(biāo)記數(shù)據(jù)則會忽略大量的信息。此外,網(wǎng)絡(luò)流量中的正常網(wǎng)絡(luò)數(shù)據(jù)包數(shù)量遠(yuǎn)遠(yuǎn)大于有攻擊的網(wǎng)絡(luò)數(shù)據(jù)包數(shù)量,并且通常網(wǎng)絡(luò)中會有很多新的攻擊出現(xiàn),如零日攻擊等。人們無法提前把所有可能出現(xiàn)的有攻擊的網(wǎng)絡(luò)數(shù)據(jù)包都找到并打上標(biāo)簽。因此本文提出一種基于t-SNE(t-distributed Stochastic Neighbor Embedding)降維的局部異常因子(Local Outlier Factor, LOF)算法,記為t-SNE LOF。該算法首先將網(wǎng)絡(luò)流量切分成網(wǎng)絡(luò)數(shù)據(jù)包,之后將網(wǎng)絡(luò)數(shù)據(jù)包采用t-SNE算法自動學(xué)習(xí)網(wǎng)絡(luò)數(shù)據(jù)包的低維特征,最后將t-SNE算法的輸入作為LOF算法的輸入檢測異常的網(wǎng)絡(luò)數(shù)據(jù)包。值得說明的是,該算法的訓(xùn)練集中僅有正常的網(wǎng)絡(luò)數(shù)據(jù)包,測試集中有少量的有攻擊的網(wǎng)絡(luò)數(shù)據(jù)包和部分正常的網(wǎng)絡(luò)數(shù)據(jù)包。由于采用t-SNE自動學(xué)習(xí)網(wǎng)絡(luò)數(shù)據(jù)包的低維特征,因此本文提出的t-SNE LOF算法能夠更準(zhǔn)確地檢測不在訓(xùn)練集中的攻擊。

        本文的主要貢獻(xiàn)如下:

        1)現(xiàn)有的網(wǎng)絡(luò)數(shù)據(jù)包特征大多都是高維非線性的[6],很難得到準(zhǔn)確刻畫網(wǎng)絡(luò)數(shù)據(jù)包的低維特征進(jìn)而進(jìn)行異常檢測。本文提出基于t-SNE降維的NLOF算法,該算法首先采用t-SNE算法自動學(xué)習(xí)網(wǎng)絡(luò)數(shù)據(jù)包的低維特征,之后將得到的低維特征作為NLOF算法的輸入進(jìn)行異常檢測。其中,NLOF算法首先采用k-means算法將網(wǎng)絡(luò)數(shù)據(jù)包聚類成為K個簇,并將網(wǎng)絡(luò)數(shù)據(jù)包數(shù)量小于N個的簇標(biāo)記為異常簇,之后將未被標(biāo)記為異常簇的網(wǎng)絡(luò)數(shù)據(jù)包作為LOF算法的輸入進(jìn)行異常檢測。由于采用t-SNE算法自動學(xué)習(xí)網(wǎng)絡(luò)數(shù)據(jù)包的低維特征,本文提出的算法能夠更準(zhǔn)確地檢測攻擊。這是因為異常檢測中提取網(wǎng)絡(luò)數(shù)據(jù)包特征時首次采用t-SNE算法提取低維的網(wǎng)絡(luò)數(shù)據(jù)包特征。此外,LOF算法僅能捕獲異常點,而本文提出的NLOF算法能夠同時捕獲異常點和異常簇。

        2)現(xiàn)有的網(wǎng)絡(luò)安全態(tài)勢預(yù)測算法,如基于神經(jīng)網(wǎng)絡(luò)的入侵檢測算法等,通常僅能檢測訓(xùn)練集中包含的攻擊。本文提出的基于t-SNE降維的NLOF算法能夠檢測不在訓(xùn)練集中的攻擊。

        3)實驗結(jié)果表明,基于t-SNE降維的LOF算法達(dá)到最優(yōu)性能時,準(zhǔn)確率為98.46%,精確度為98.38%,召回率為98.54%,錯誤率為0.66%,該算法比現(xiàn)有最新算法的準(zhǔn)確率、檢測率和F1分別高3.18個百分點、0.02個百分點和0.01個百分點?;趖-SNE降維的NLOF算法達(dá)到最優(yōu)性能時,準(zhǔn)確率為98.53%,精確度為98.86%,召回率為98.86%,錯誤率為0.32%,該算法比現(xiàn)有最新算法的準(zhǔn)確率、檢測率和F1分別高3.25個百分點、0.34個百分點和0.41個百分點。

        1 異常檢測技術(shù)

        現(xiàn)有的異常檢測技術(shù)已經(jīng)在數(shù)據(jù)清洗、金融欺詐檢測[7]等領(lǐng)域取得了較好的效果?,F(xiàn)有的異常檢測方法主要分為基于規(guī)則的異常檢測、基于統(tǒng)計的異常檢測和基于機(jī)器學(xué)習(xí)的異常檢測[6]。基于規(guī)則的異常檢測通常需要通過人工經(jīng)驗構(gòu)建規(guī)則庫,該方法能夠準(zhǔn)確地找出符合規(guī)則的異常,但無法檢測未知的異常?;诮y(tǒng)計的異常檢測通常需要假設(shè)數(shù)據(jù)服從某種分布,之后利用數(shù)據(jù)進(jìn)行參數(shù)估計,該方法魯棒性較強(qiáng),但過于依賴假設(shè)的分布。基于機(jī)器學(xué)習(xí)的異常檢測能夠檢測未知的異常[6-7],并且不需要假設(shè)數(shù)據(jù)的分布。

        LOF算法[8-10]基于樣本的局部密度信息判斷是否有異常的網(wǎng)絡(luò)數(shù)據(jù)包。該算法的優(yōu)點是同時考慮了數(shù)據(jù)集的局部屬性和全局屬性,即使在數(shù)據(jù)集中樣本分布不均勻的情況下,該算法仍然能夠獲得較好的效果,但該算法不適用于高維數(shù)據(jù)。

        Isolation Forest算法[11]從給定的特征集合中隨機(jī)地選擇特征,之后在特征的最大值和最小值之間隨機(jī)選擇一個分割值,并將小于該分割值的樣本作為該節(jié)點的左孩子,將大于該分割值的樣本作為該節(jié)點的右孩子。不斷地重復(fù)上述過程,至滿足終止條件為止,通常終止條件為所有節(jié)點均只包含一個樣本或者多個相同的樣本,或者樹的深度達(dá)到了限定的高度。這種特征的隨機(jī)劃分會使異常的網(wǎng)絡(luò)數(shù)據(jù)包在樹中生成的路徑更短,從而將異常的網(wǎng)絡(luò)數(shù)據(jù)包和正常的網(wǎng)絡(luò)數(shù)據(jù)包劃分。該算法的缺點是不適用于高維數(shù)據(jù)。

        K近鄰(k-Nearest Neighbor, KNN)算法[12]采用基于距離的方式檢測是否有異常點。但該算法不適用于高維數(shù)據(jù),且該算法僅可以找出全局異常點,無法找到局部異常點。

        以上算法的共同點是,都不適用于高維數(shù)據(jù)。但網(wǎng)絡(luò)數(shù)據(jù)包特征大多數(shù)都是高維的[6],因此,本文提出一種基于t-SNE降維的NLOF異常檢測算法以得到更好的異常檢測性能。

        2 基于半監(jiān)督的未知類別數(shù)據(jù)包的態(tài)勢預(yù)測

        2.1 定義

        異常檢測(Anomaly Detection)[13]:是指從數(shù)據(jù)中找到和預(yù)期的行為不一致的異常行為模式。其中,異常的行為模式通常是指異常、離群點等。

        奇異值檢測(Novelty Detection)[13]:是指從數(shù)據(jù)中檢測到之前從未觀察到的模式。常見的奇異值檢測算法有one class SVM算法等。

        高維空間和低維空間的區(qū)別:在高維空間中,很多基于距離的度量都會失效,比如歐氏距離,且高維空間會帶來維度災(zāi)難[14]。解決維度災(zāi)難的重要途徑是降維[6](Dimension Reduction),即通過一些手段將原始高維空間數(shù)據(jù)轉(zhuǎn)變?yōu)橐粋€低維子空間[6],在這個低維的子空間中樣本密度較高,更容易計算樣本間的距離。此外,現(xiàn)有的研究沒有對低維空間和高維空間定義非常明確的劃分界限。

        2.2 流程

        圖1是基于t-SNE NLOF異常檢測的算法流程圖。該異常檢測算法主要分為3個部分:1)將原始流量切分成網(wǎng)絡(luò)數(shù)據(jù)包;2)采用t-SNE算法自動預(yù)處理網(wǎng)絡(luò)數(shù)據(jù)包以獲得低維的網(wǎng)絡(luò)數(shù)據(jù)包特征;3)將得到的低維的網(wǎng)絡(luò)數(shù)據(jù)包特征作為NLOF算法的輸入進(jìn)行異常檢測。

        圖1 基于t-SNE NLOF異常檢測的算法流程圖

        數(shù)據(jù)預(yù)處理是提升整個入侵檢測系統(tǒng)性能的基礎(chǔ)[15],因為數(shù)據(jù)預(yù)處理提取的網(wǎng)絡(luò)數(shù)據(jù)包特征會決定整個模型性能的上限?,F(xiàn)有的網(wǎng)絡(luò)數(shù)據(jù)包特征通常都是高維的,無法適用于現(xiàn)有的異常檢測算法,因此本文提出一種基于t-SNE降維的NLOF異常檢測算法。該算法采用t-SNE自動學(xué)習(xí)得到低維的網(wǎng)絡(luò)數(shù)據(jù)包特征以得到更好的異常檢測性能。此外,LOF算法僅能捕獲異常點,提出的NLOF算法能夠同時捕獲異常點和異常簇。

        2.3 數(shù)據(jù)降維

        作為數(shù)據(jù)降維的準(zhǔn)備步驟,本文首先將網(wǎng)絡(luò)流量轉(zhuǎn)換成了網(wǎng)絡(luò)數(shù)據(jù)包的特征。將網(wǎng)絡(luò)流量轉(zhuǎn)換成網(wǎng)絡(luò)數(shù)據(jù)包的特征的過程是:首先采用SplitCap[16]將網(wǎng)絡(luò)流量中一組源IP和目的IP的交互劃分到同一個網(wǎng)絡(luò)數(shù)據(jù)包中[14],之后將網(wǎng)絡(luò)數(shù)據(jù)包格式化以提取網(wǎng)絡(luò)數(shù)據(jù)包特征。其中,網(wǎng)絡(luò)數(shù)據(jù)包格式化的流程是:首先將網(wǎng)絡(luò)數(shù)據(jù)包的每個字節(jié)映射成為一個特征,之后對每個網(wǎng)絡(luò)數(shù)據(jù)包的特征進(jìn)行截斷,僅保留每個網(wǎng)絡(luò)數(shù)據(jù)包的前r個字節(jié)。圖2是網(wǎng)絡(luò)數(shù)據(jù)包格式化的過程。

        圖2 格式化網(wǎng)絡(luò)數(shù)據(jù)包的包頭和負(fù)載信息

        之后對提取的網(wǎng)絡(luò)數(shù)據(jù)包特征采用t-SNE算法進(jìn)行降維,以得到能夠準(zhǔn)確刻畫網(wǎng)絡(luò)數(shù)據(jù)包的低維特征。t-SNE算法是一種非線性降維算法,該算法能夠?qū)?shù)據(jù)從高維空間映射到低維空間。采用t-SNE算法降維主要包括以下2個步驟:首先,采用SNE在高維空間構(gòu)建網(wǎng)絡(luò)數(shù)據(jù)包的概率分布,之后t-SNE算法在低維空間構(gòu)建網(wǎng)絡(luò)數(shù)據(jù)包的概率分布,使高維空間的概率分布和低維空間的概率分布盡可能地相似[17]。

        其中,采用SNE在高維空間構(gòu)建網(wǎng)絡(luò)數(shù)據(jù)包的概率分布的過程如下。給定一個包含N個網(wǎng)絡(luò)數(shù)據(jù)包的集合X={x1,x2,…,xN}。對任意2個網(wǎng)絡(luò)數(shù)據(jù)包xi和xj,采用SNE將網(wǎng)絡(luò)數(shù)據(jù)包之間的高維歐幾里得距離轉(zhuǎn)換為表示網(wǎng)絡(luò)數(shù)據(jù)包間相似性的條件概率pj|i,定義如下:

        (1)

        其中,σi是以網(wǎng)絡(luò)數(shù)據(jù)包xi為中心的高斯分布的標(biāo)準(zhǔn)差。

        為了避免不對稱的代價函數(shù)帶來的問題,采用公式(2)計算網(wǎng)絡(luò)數(shù)據(jù)包xi和xj間的距離pij。

        (2)

        假設(shè)t-SNE降維后的網(wǎng)絡(luò)數(shù)據(jù)包集合是Y={y1,y2,…,yN},那么該集合是高維空間X到低維空間Y的映射。也就是說,高維空間中的網(wǎng)絡(luò)數(shù)據(jù)包xi和xj在低維空間中分別對應(yīng)為yi和yj。之后,在低維空間中采用t-分布計算yi和yj之間的距離,得到網(wǎng)絡(luò)數(shù)據(jù)包之間的距離qij的計算公式為:

        (3)

        t-SNE算法的最終優(yōu)化目標(biāo)為KL散度,計算公式如下:

        (4)

        其中,由于最小化KL散度為非凸優(yōu)化,因此采用隨機(jī)梯度下降進(jìn)行求解。KL散度的梯度為:

        (5)

        2.4 基于正例樣本的異常檢測算法挖掘未知攻擊

        本文將降維后的低維網(wǎng)絡(luò)數(shù)據(jù)包特征作為NLOF算法的輸入。NLOF算法能夠計算每個網(wǎng)絡(luò)數(shù)據(jù)包的離群程度因子。離群因子較大的網(wǎng)絡(luò)數(shù)據(jù)包周圍的網(wǎng)絡(luò)數(shù)據(jù)包密度相對較低。因此,具有較大離群因子的網(wǎng)絡(luò)數(shù)據(jù)包稱為離群的網(wǎng)絡(luò)數(shù)據(jù)包,又被稱為異常的網(wǎng)絡(luò)數(shù)據(jù)包。反之,離群因子較小(接近1)的網(wǎng)絡(luò)數(shù)據(jù)包被認(rèn)為是正常的網(wǎng)絡(luò)數(shù)據(jù)包[11,15]。

        NLOF算法首先采用k-means算法將網(wǎng)絡(luò)數(shù)據(jù)包聚類成為K個簇,并將網(wǎng)絡(luò)數(shù)據(jù)包數(shù)量小于N個的簇標(biāo)記為異常簇,之后將未被標(biāo)記為異常簇的網(wǎng)絡(luò)數(shù)據(jù)包作為LOF算法的輸入進(jìn)行異常檢測。本文中,K的取值為4,N的取值為5。

        下面詳細(xì)介紹LOF算法的一些基本概念。

        第k距離(k-distance):網(wǎng)絡(luò)數(shù)據(jù)包p的第k距離是指,對于網(wǎng)絡(luò)數(shù)據(jù)包p和網(wǎng)絡(luò)數(shù)據(jù)包o之間的距離,任取一個自然數(shù)k,網(wǎng)絡(luò)數(shù)據(jù)包o滿足下面的條件:

        1)存在至少k個網(wǎng)絡(luò)數(shù)據(jù)包o′∈D/{p}滿足d(p,o′)≤d(p,o);

        2)最多存在k-1個網(wǎng)絡(luò)數(shù)據(jù)包o′∈D/{p}滿足d(p,o′)

        其中,d(p,o)表示網(wǎng)絡(luò)數(shù)據(jù)包p和網(wǎng)絡(luò)數(shù)據(jù)包o之間的距離。

        第k距離鄰域(Nk-distance(p))): 網(wǎng)絡(luò)數(shù)據(jù)包p的第k距離鄰域是指,一個包含所有和網(wǎng)絡(luò)數(shù)據(jù)包p之間距離沒有超過k-distance的網(wǎng)絡(luò)數(shù)據(jù)包的集合。

        Nk-distance(p)={q|d(p,q)≤k-distance(p)}

        (6)

        其中,Nk-distance(p))在后文中被簡化成Nk(p)。

        可達(dá)距離(reach-dist(p,o)):是指網(wǎng)絡(luò)數(shù)據(jù)包p和網(wǎng)絡(luò)數(shù)據(jù)包o之間第k距離和o、p之間真實距離的最大值。網(wǎng)絡(luò)數(shù)據(jù)包p和網(wǎng)絡(luò)數(shù)據(jù)包o之間可達(dá)距離的公式如下:

        reach-dist(p,o)=max(k-distance(o),d(p,o))

        (7)

        局部可達(dá)密度(lrdk(p)):網(wǎng)絡(luò)數(shù)據(jù)包p的局部可達(dá)密度是網(wǎng)絡(luò)數(shù)據(jù)包p的第k距離鄰域內(nèi)到p的平均可達(dá)距離的倒數(shù)。

        (8)

        局部離群因子(LOFk(p)):網(wǎng)絡(luò)數(shù)據(jù)包p的局部離群因子是指通過網(wǎng)絡(luò)數(shù)據(jù)包p的特征判斷該網(wǎng)絡(luò)數(shù)據(jù)包的離群程度。網(wǎng)絡(luò)數(shù)據(jù)包的局部離群因子越大,該網(wǎng)絡(luò)數(shù)據(jù)包是離群點的可能性就越高。局部離群因子的計算公式如下:

        (9)

        算法1基于t-SNE降維的NLOF異常檢測算法

        輸入:網(wǎng)絡(luò)流(fi)。

        輸出:測試集的評價結(jié)果。

        步驟1將網(wǎng)絡(luò)流切分成網(wǎng)絡(luò)數(shù)據(jù)包。

        采用Splitcap將網(wǎng)絡(luò)流切分成q個網(wǎng)絡(luò)數(shù)據(jù)包(p1,p2, …,pq)。

        步驟2網(wǎng)絡(luò)數(shù)據(jù)包格式化。

        取第i個網(wǎng)絡(luò)數(shù)據(jù)包的前r個字節(jié),將其中的每一個字節(jié)映射成一個特征。之后,能夠得到第i個網(wǎng)絡(luò)數(shù)據(jù)包的向量表示I=(veci1,veci2,…,vecir)。

        步驟3t-SNE降維。

        采用SNE在高維空間構(gòu)建網(wǎng)絡(luò)數(shù)據(jù)包的概率分布。

        t-SNE算法在低維空間構(gòu)建網(wǎng)絡(luò)數(shù)據(jù)包的概率分布,使高維空間的概率分布和低維空間的概率分布盡可能地相似。

        步驟4NLOF異常檢測。

        采用k-means算法將網(wǎng)絡(luò)數(shù)據(jù)包聚成多個簇。

        將網(wǎng)絡(luò)數(shù)據(jù)包個數(shù)小于N個的簇標(biāo)記為異常簇。

        將未標(biāo)記為異常的網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行如下計算:

        4.1計算網(wǎng)絡(luò)數(shù)據(jù)包p的第k距離。

        4.2比較所有網(wǎng)絡(luò)數(shù)據(jù)包和網(wǎng)絡(luò)數(shù)據(jù)包p之間的距離,獲得網(wǎng)絡(luò)數(shù)據(jù)包p的第k距離鄰域集合。

        4.3計算網(wǎng)絡(luò)數(shù)據(jù)包p和網(wǎng)絡(luò)數(shù)據(jù)包o之間第k距離和o、p之間真實距離的最大值,即可達(dá)距離。

        4.4計算網(wǎng)絡(luò)數(shù)據(jù)包p的第k距離鄰域內(nèi)到p的平均可達(dá)距離的倒數(shù),即網(wǎng)絡(luò)數(shù)據(jù)包p的局部可達(dá)密度。

        4.5通過網(wǎng)絡(luò)數(shù)據(jù)包p的特征判斷該網(wǎng)絡(luò)數(shù)據(jù)包的離群程度,即計算網(wǎng)絡(luò)數(shù)據(jù)包p的局部離群因子。

        步驟5訓(xùn)練評估模型。

        采用訓(xùn)練集數(shù)據(jù)訓(xùn)練t-SNE LOF模型。

        步驟6測試評估模型。

        采用測試集數(shù)據(jù)測試t-SNE LOF模型。

        返回測試集的評價結(jié)果。

        3 評 估

        3.1 數(shù)據(jù)集

        現(xiàn)有的入侵檢測的數(shù)據(jù)集有KDD CUP 1999[18]、NSL-KDD[19]、Kyoto 2009[20]、ISCX 2012[16]和DAPAR 1998[21]。其中,只有ISCX 2012和DAPAR 1998數(shù)據(jù)集是原始流量數(shù)據(jù)。因為ISCX 2012數(shù)據(jù)集較新,因此本文采用該數(shù)據(jù)集進(jìn)行實驗。表1是該數(shù)據(jù)集的描述。本文將數(shù)據(jù)劃分成訓(xùn)練集、測試集部分。其中,訓(xùn)練集的數(shù)據(jù)為6000個正常的網(wǎng)絡(luò)數(shù)據(jù)包,測試集中包含5000個正常的網(wǎng)絡(luò)數(shù)據(jù)包和10個有攻擊的網(wǎng)絡(luò)數(shù)據(jù)包。

        表1 ISCX 2012數(shù)據(jù)集的數(shù)據(jù)描述[22]

        3.2 評價指標(biāo)

        本文采用準(zhǔn)確率(ACC)、檢測率(DR)、錯誤率(FAR)和F1作為評價指標(biāo)[23]。其中,準(zhǔn)確率是描述正確檢測出是否有入侵的指標(biāo)。檢測率是描述有多少攻擊被檢測到的比例。錯誤率是指描述模型對非攻擊行為的誤判。計算公式如下:

        (10)

        (11)

        (12)

        Precision=TP/(TP+FP)

        (13)

        (14)

        其中,F(xiàn)N(False Negative)是指網(wǎng)絡(luò)數(shù)據(jù)包實際是有攻擊的,但是被預(yù)測成為正常;FP(False Positive)是指網(wǎng)絡(luò)數(shù)據(jù)包實際是正常的,但是被預(yù)測成為了有攻擊的;TN(True Negative)是指網(wǎng)絡(luò)數(shù)據(jù)包實際是正常的,也被預(yù)測成為了正常的;TP(True Positive)是指網(wǎng)絡(luò)數(shù)據(jù)包實際是有攻擊的,也被預(yù)測成為了有攻擊的;Precision是精確度,精確度是由TP/(TP+FP)計算得到的?;煜仃嚾绫?所示。

        表2 混淆矩陣

        3.3 幾種降維方法對算法性能影響的比較

        表3是基于t-SNE NLOF算法進(jìn)行異常檢測和基于LOF算法進(jìn)行異常檢測的性能比較。表4是采用t-SNE NLOF算法與采用其他的降維算法對異常檢測結(jié)果影響的比較。圖3是采用t-SNE算法和采用其他的降維算法對異常檢測結(jié)果影響的比較。圖3(a)是基于t-SNE LOF算法進(jìn)行異常檢測的結(jié)果圖。圖3(b)是基于LOF算法進(jìn)行異常檢測的結(jié)果圖。圖3(c)是基于主成分分析(Principal Component Analysis, PCA)算法降維,之后采用LOF算法進(jìn)行異常檢測的結(jié)果圖。圖3(d)是基于局部線性嵌入(Locally Linear Embedding, LLE)算法降維,之后采用LOF算法進(jìn)行異常檢測的結(jié)果圖。圖中灰色圈中為異常的網(wǎng)絡(luò)數(shù)據(jù)包,其余部分為正常的網(wǎng)絡(luò)數(shù)據(jù)包。從表3中可以看出,基于t-SNE LOF算法進(jìn)行異常檢測算法比基于LOF算法進(jìn)行異常檢測算法的準(zhǔn)確率、檢測率和F1分別高3.18個百分點、0.02個百分點和0.0001。基于t-SNE NLOF算法進(jìn)行異常檢測算法比基于LOF算法進(jìn)行異常檢測算法的準(zhǔn)確率、檢測率和F1分別高3.25個百分點、0.34個百分點和0.0041。從圖3可以看出,基于t-SNE NLOF算法進(jìn)行異常檢測算法得到的正常網(wǎng)絡(luò)數(shù)據(jù)包的決策邊界更加清晰,因此能夠更加準(zhǔn)確地劃分出有攻擊的網(wǎng)絡(luò)數(shù)據(jù)包?;贚OF算法進(jìn)行異常檢測算法得到的正常網(wǎng)絡(luò)數(shù)據(jù)包的決策邊界略模糊,容易將邊界處的正常的網(wǎng)絡(luò)數(shù)據(jù)包誤分為異常的網(wǎng)絡(luò)數(shù)據(jù)包。一個可能的解釋是,高維的網(wǎng)絡(luò)數(shù)據(jù)包特征中可能包含很多冗余信息,因此對LOF算法劃分正常網(wǎng)絡(luò)數(shù)據(jù)包的決策邊界造成了干擾,進(jìn)而導(dǎo)致有網(wǎng)絡(luò)數(shù)據(jù)包被誤分。從表4可以看出,本文提出的t-SNE LOF算法的準(zhǔn)確率、檢測率、精確度和F1值都比PCA LOF算法和LLE LOF算法高。也就是說,采用t-SNE算法降維后采用LOF算法進(jìn)行異常檢測能夠得到更高的異常檢測性能。一個可能的解釋是,采用t-SNE算法在降維時,通常使高維空間的概率分布和低維空間的概率分布盡可能地相似。該算法在降維時沒有信息損失。采用PCA算法降維時,只保留影響較大的特征,該算法在降維時有信息損失。因此,與PCA算法和LLE算法相比,t-SNE算法能夠更好地表征網(wǎng)絡(luò)數(shù)據(jù)包的低維特征。從表4可以看出,本文提出的t-SNE NLOF算法的準(zhǔn)確率、檢測率、精確度和F1值都比t-SNE LOF算法高。一個可能的解釋是,本文提出的t-SNE NLOF算法能夠檢測異常點和異常簇,因此具有優(yōu)于t-SNE LOF算法的性能。

        表3 t-SNE NLOF算法與LOF算法的性能比較

        表4 t-SNE NLOF算法與采用其他的降維算法對異常檢測結(jié)果的影響

        (a) t-SNE LOF

        3.4 與最新的技術(shù)比較

        現(xiàn)有的應(yīng)用于網(wǎng)絡(luò)安全態(tài)勢預(yù)測中的異常檢測算法主要有One class SVM[24]、Isolation Forest[25]、Elliptic Envelope和LOF[9]。這些算法通常無法很好地適用于高維特征,由于網(wǎng)絡(luò)數(shù)據(jù)包的特征大多都是高維的,因此導(dǎo)致現(xiàn)有的算法性能不高。表5給出了本文算法和現(xiàn)有最新算法的性能比較。從表5能夠看出,本文提出的t-SNE LOF算法比現(xiàn)有最新算法在準(zhǔn)確率和檢測率上分別提高3.18個百分點和0.02個百分點。本文提出算法的準(zhǔn)確率、精確度、檢測率和錯誤率分別為98.46%、98.38%、98.54%和0.66%。一個可能的解釋是,由于網(wǎng)絡(luò)數(shù)據(jù)包特征是高維的特征,且包含部分冗余信息。因此,對于Isolation Forest算法而言,部分冗余的網(wǎng)絡(luò)數(shù)據(jù)包特征會干擾異常檢測的性能,因此Isolation Forest算法的錯誤率較高。Elliptic Envelope算法通過訓(xùn)練集學(xué)習(xí)出一個橢圓型的決策邊界,采用該算法進(jìn)行異常檢測時如果內(nèi)圍分布是雙峰的或者內(nèi)圍分布不是正態(tài)分布則無法很好地擬合正常網(wǎng)絡(luò)數(shù)據(jù)包的邊界[26-28]。因此,Elliptic Envelope算法的性能相對不佳。LOF算法是基于密度的異常檢測算法,該算法考慮到數(shù)據(jù)集的局部和全局屬性。也就是說,即使異常的網(wǎng)絡(luò)數(shù)據(jù)包在具有不同潛在密度的數(shù)據(jù)集中,LOF算法仍然能夠表現(xiàn)得很好。由于高維的網(wǎng)絡(luò)數(shù)據(jù)包特征中可能包含很多冗余信息,因此對LOF算法劃分正常網(wǎng)絡(luò)數(shù)據(jù)包的決策邊界造成了干擾。因此,采用t-SNE LOF算法的準(zhǔn)確率和檢測率比LOF算法的準(zhǔn)確率和檢測率高。

        表5 與現(xiàn)有最新的算法的性能比較

        4 討 論

        一個準(zhǔn)確的正常行為的邊界通常很難得到,因為經(jīng)常會有正常的網(wǎng)絡(luò)數(shù)據(jù)包處于決策邊界的位置而產(chǎn)生誤判。因此,未來可以考慮對網(wǎng)絡(luò)數(shù)據(jù)包的原始特征進(jìn)行篩選,以降低冗余特征的干擾。

        本文將一個網(wǎng)絡(luò)數(shù)據(jù)包作為一個點,相當(dāng)于是捕獲一個網(wǎng)絡(luò)數(shù)據(jù)包構(gòu)成的圖中的點異常。由于很多的網(wǎng)絡(luò)攻擊事件是有關(guān)聯(lián)的,因此未來可以考慮采用集體異常(Collective Anomalies)算法捕獲有關(guān)聯(lián)的異常。

        5 結(jié)束語

        本文提出了一種基于t-SNE降維的NLOF異常檢測算法預(yù)測有攻擊的網(wǎng)絡(luò)數(shù)據(jù)包。實驗表明提出的算法比現(xiàn)有最新算法在準(zhǔn)確率、檢測率和F1值上分別高3.25個百分點、0.34個百分點和0.0041。本文提出算法的準(zhǔn)確率、精確度、檢測率和錯誤率分別為98.53%、98.86%、98.86%和0.32%。

        本文采用大量正常的網(wǎng)絡(luò)數(shù)據(jù)包訓(xùn)練模型,在測試時加入有攻擊的網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行檢測。由于正常的行為也一直在演進(jìn)和發(fā)展,因此即使是現(xiàn)在定義了對正常網(wǎng)絡(luò)數(shù)據(jù)包的良好的決策劃分邊界,在未來不一定能很好地劃分異常的網(wǎng)絡(luò)數(shù)據(jù)包。此外,隨著入侵者調(diào)整其網(wǎng)絡(luò)攻擊以逃避現(xiàn)有入侵檢測解決方案,異常的性質(zhì)會隨著時間不斷變化。因此,未來可以考慮對正常網(wǎng)絡(luò)數(shù)據(jù)包的決策邊界進(jìn)行修正以適應(yīng)不斷變化的網(wǎng)絡(luò)環(huán)境。

        猜你喜歡
        特征檢測
        抓住特征巧觀察
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        “幾何圖形”檢測題
        “角”檢測題
        新型冠狀病毒及其流行病學(xué)特征認(rèn)識
        如何表達(dá)“特征”
        不忠誠的四個特征
        抓住特征巧觀察
        亚洲女优中文字幕在线观看| 97色综合| 国产在线精彩自拍视频| 青青草国产手机观看视频| 国产成人精品a视频| 亚洲欧洲高潮| 强d乱码中文字幕熟女1000部| av影片手机在线观看免费网址| 久久久久久欧美精品se一二三四| 国产午夜三级一区二区三| 手机色在线| 久久99人妖视频国产| 国产午夜精品av一区二区麻豆| 国产亚洲av片在线观看18女人| 制服丝袜人妻中出第一页| 亚洲视频一区二区免费看| 东京热久久综合久久88| 国产午夜激无码av毛片| 果冻蜜桃传媒在线观看| 亚洲综合自拍偷拍一区| 国产人妻久久精品二区三区老狼| 四虎精品成人免费观看| 精品久久一区二区av| 亚洲av综合色区无码另类小说| 精品日韩欧美一区二区在线播放| 99久久精品无码专区无| 黄片免费观看视频播放| 人妻在卧室被老板疯狂进入| 中国精学生妹品射精久久| 中文字幕乱码av在线| 国产三级视频不卡在线观看| 初女破初的视频| 亚洲国产精品国语在线| 最新日本女优中文字幕视频| 久久99国产综合精品| 在线精品免费观看| 在线亚洲免费精品视频| 国内永久福利在线视频图片| 国产三级在线观看播放视频| 超清无码AV丝袜片在线观看| 国产偷国产偷亚洲综合av|