• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于概率分布的異常檢測(cè)模型訓(xùn)練方法

    2019-04-22 07:23:50
    宿州學(xué)院學(xué)報(bào) 2019年1期
    關(guān)鍵詞:概率分布調(diào)用算法

    裘 昱

    安徽省軍區(qū)數(shù)據(jù)信息室,安徽合肥,230000

    異常檢測(cè)是入侵檢測(cè)的一個(gè)重要方面[1]。入侵檢測(cè)是通過檢測(cè)各類系統(tǒng)數(shù)據(jù)(如網(wǎng)絡(luò)數(shù)據(jù)包、系統(tǒng)日志等)來區(qū)分正常數(shù)據(jù)與異常數(shù)據(jù),從而保護(hù)計(jì)算機(jī)系統(tǒng)的一種網(wǎng)絡(luò)安全技術(shù)。對(duì)傳統(tǒng)異常檢測(cè)模型的訓(xùn)練,需要用一個(gè)“完全干凈”(不含異常數(shù)據(jù))的數(shù)據(jù)集來對(duì)檢測(cè)模型進(jìn)行訓(xùn)練[2]。這種方法存在幾個(gè)方面問題:(1)這種數(shù)據(jù)集通常很難得到;(2)如果數(shù)據(jù)集中包含有某些異常數(shù)據(jù),由此得到的檢測(cè)模型將無法檢測(cè)出此類異常數(shù)據(jù);(3)這種模型將很難“在線(online)”訓(xùn)練,因?yàn)闊o法保證“在線”時(shí)的訓(xùn)練數(shù)據(jù)滿足要求[3]。為此,本文提出了一種基于概率分布的,無須“完全干凈”的數(shù)據(jù)集就能夠進(jìn)行異常檢測(cè)模型訓(xùn)練的方法。

    1 異常檢測(cè)

    1.1 數(shù)據(jù)集模型

    本文使用“混合數(shù)據(jù)(正常和異常數(shù)據(jù)均存在)集”來表示訓(xùn)練用數(shù)據(jù)集。在這個(gè)“混合數(shù)據(jù)集”中,每個(gè)數(shù)據(jù)元素均可以表示為:若它的出現(xiàn)為小概率λ,那么它是個(gè)異常數(shù)據(jù);或者它的出現(xiàn)為概率(1-λ),那么它是個(gè)正常數(shù)據(jù)。

    本文假設(shè),一個(gè)任意給定的系統(tǒng)程序運(yùn)行序列,如果此序列發(fā)生的概率為(1-λ),則它是一個(gè)正常的系統(tǒng)調(diào)用序列,即為正常數(shù)據(jù);如果一個(gè)系統(tǒng)程序運(yùn)行序列發(fā)生的概率為λ,那么它是個(gè)異常的系統(tǒng)調(diào)用序列,即為入侵?jǐn)?shù)據(jù)。

    在本文的方法中,數(shù)據(jù)集中的某個(gè)數(shù)據(jù)元素xi,要么它屬于概率為(1-λ)的主分布M(Majority),要么它屬于概率為λ的異常分布A(Anomalous)。這樣,對(duì)于整個(gè)數(shù)據(jù)集D,則有:

    D=(1-λ)M+λA

    (1)

    因此,數(shù)據(jù)集D就被分為兩個(gè)子數(shù)據(jù)集:正常數(shù)據(jù)的數(shù)據(jù)子集(簡(jiǎn)稱正常數(shù)據(jù)集)和異常數(shù)據(jù)的數(shù)據(jù)子集(簡(jiǎn)稱異常數(shù)據(jù)集),本文使用Mt(At)來表示對(duì)數(shù)據(jù)元素xt分類之后(即t時(shí)刻)的正常(異常)子數(shù)據(jù)集。初始時(shí),沒有任何異常數(shù)據(jù)被檢測(cè),所以M0=D,A0=φ。

    1.2 概率分布模型

    可以使用任何一種機(jī)器學(xué)習(xí)算法來得到概率分布模型。對(duì)于正常數(shù)據(jù)集,有函數(shù)lm,其輸入是正常數(shù)據(jù)集中的數(shù)據(jù)元素mt,輸出是該數(shù)據(jù)元素的概率分布Pmt。同樣,對(duì)于異常數(shù)據(jù)集,有函數(shù)Ia,其輸入是異常數(shù)據(jù)元素at,輸出是該異常數(shù)據(jù)的概率分布Pat,即:

    Pmt(x)=lm(mt)(x)

    (2)

    Pat(x)=la(at)(x)

    (3)

    對(duì)于函數(shù)lm和la,可以是任何概率模型生成算法(如樸素貝葉斯算法等)。注意,由于異常數(shù)據(jù)集初始化時(shí)為空,對(duì)于概率模型生成算法la來說即沒有數(shù)據(jù)用來訓(xùn)練,因此,Pat實(shí)際上是一個(gè)先驗(yàn)概率分布。

    1.3 異常數(shù)據(jù)的檢測(cè)

    在本文的方法中,異常數(shù)據(jù)的檢測(cè)等同于判定一個(gè)給定的數(shù)據(jù)元素是屬于分布A還是屬于分布M,并據(jù)此將該數(shù)據(jù)元素放入相應(yīng)的數(shù)據(jù)子集中。

    在時(shí)刻t,數(shù)據(jù)集D分布的可能性L(Likelihood)定義為:

    (4)

    為了計(jì)算方便,使用對(duì)數(shù)來簡(jiǎn)化計(jì)算,由此得到LL(Log Likelihood)的計(jì)算方法:

    (5)

    判定某個(gè)數(shù)據(jù)元素是否是異常數(shù)據(jù),即判定它在特征空間中是否為奇異點(diǎn)(outlier)。

    算法如下:

    (1)對(duì)于一個(gè)給定的數(shù)據(jù)元素xi,計(jì)算其從主分布Mt-1移至異常分布At-1之后的LLt的值,并計(jì)算該值與移動(dòng)之前的LLt-1值的差值。即:

    Mt=Mt-1{xt}

    (6)

    At=At-1∪{xt}

    (7)

    K=LLt-LLt-1

    (8)

    (2)設(shè)定閾值c,如果K值大于閾值c,則判定此數(shù)據(jù)元素為一個(gè)異常數(shù)據(jù),并將它從正常數(shù)據(jù)集移至異常數(shù)據(jù)集,否則,此數(shù)據(jù)元素保留在正常數(shù)據(jù)集中。即:

    Mt=Mt-1

    (9)

    At=At-1

    (10)

    (3)對(duì)數(shù)據(jù)集D中所有的數(shù)據(jù)元素重復(fù)上述過程,最后,得到從原數(shù)據(jù)集D分解出的兩個(gè)數(shù)據(jù)子集:正常數(shù)據(jù)集和異常數(shù)據(jù)集。

    這里閾值c的選擇會(huì)影響到模型對(duì)異常數(shù)據(jù)的檢測(cè)。c值越小誤報(bào)律會(huì)下降,但檢測(cè)率也會(huì)隨之下降;c值越大,檢測(cè)律上升的同時(shí)也帶來了誤報(bào)律大的問題[4]。

    2 異常檢測(cè)

    2.1 數(shù)據(jù)集描述

    本文所使用的兩個(gè)數(shù)據(jù)集是在兩臺(tái)計(jì)算機(jī)上采集到的系統(tǒng)程序調(diào)用序列(包括正常程序和入侵程序)的記錄集。

    第一個(gè)數(shù)據(jù)集來自MIT Lincoln Labs(麻省理工學(xué)院林肯實(shí)驗(yàn)室),數(shù)據(jù)為某部裝有Solaris操作系統(tǒng)的計(jì)算機(jī)一段時(shí)間內(nèi)的系統(tǒng)程序調(diào)用記錄。其中包含的異常數(shù)據(jù)來自3個(gè)入侵程序:eject、ps(LL)和ftpd。

    第二個(gè)數(shù)據(jù)集來自University of New Mexico(新墨西哥大學(xué)),數(shù)據(jù)為操作系統(tǒng)15個(gè)月內(nèi)的系統(tǒng)程序調(diào)用記錄。其中包含的異常數(shù)據(jù)來自4個(gè)入侵程序:named、xlock、login和ps。

    表1和表2是這兩個(gè)數(shù)據(jù)集的基本信息匯總。

    表1 Lincoln Labs數(shù)據(jù)集基本信息

    表2 University of New Mexico數(shù)據(jù)集基本信息

    2.2 異常檢測(cè)

    假設(shè)異常數(shù)據(jù)記錄的產(chǎn)生是隨機(jī)的。對(duì)于la函數(shù),在時(shí)刻t能夠得到異常概率分布Pat。對(duì)于lm函數(shù),本文使用定階馬爾可夫鏈(Fixed Order Markov Chain) 算法,在正常數(shù)據(jù)集上得到正常概率分布Pmt。

    其概率模型的建立方法是:對(duì)于某個(gè)給定的系統(tǒng)調(diào)用序列xt,在長(zhǎng)度L(L值事先確定)的系統(tǒng)調(diào)用序列后,若出現(xiàn)了xt,便計(jì)數(shù)一次。也就是說,它是某個(gè)特定程序的前L個(gè)系統(tǒng)調(diào)用后的條件概率。即:

    P(Xt|Xt-1,Xt-2,…,Xt-L)

    (11)

    為了避免概率為0的情形出現(xiàn),對(duì)每個(gè)計(jì)數(shù)初始化為一個(gè)非常小的值(0.01),并設(shè)置L=3。

    原則上,必須在處理每一個(gè)數(shù)據(jù)之后,重新對(duì)機(jī)器學(xué)習(xí)算法來訓(xùn)練,以得到LL值。但實(shí)際上只需對(duì)擁有同樣前綴的數(shù)據(jù)進(jìn)行計(jì)算,因此,對(duì)數(shù)據(jù)集D只需掃描兩次。第一次掃描假設(shè)所有元素都是正常數(shù)據(jù),得到各種系統(tǒng)調(diào)用序列的概率分布;第二次掃描是計(jì)算當(dāng)一個(gè)數(shù)據(jù)判定為異常數(shù)據(jù)時(shí)的K值。

    2.3 算法比較

    STIDE算法和t-STIDE算法有著良好的入侵檢測(cè)效果[5]。它們用于訓(xùn)練和測(cè)試的數(shù)據(jù)集是從表2數(shù)據(jù)集中抽取出的正常數(shù)據(jù)記錄。

    STIDE(sequence time-delay embedding)算法對(duì)在訓(xùn)練集中看到過的系統(tǒng)調(diào)用序列(序列長(zhǎng)度為6)在測(cè)試集中進(jìn)行掃描。它認(rèn)為任何一個(gè)在訓(xùn)練集中沒有看到過,而出現(xiàn)在測(cè)試集中的系統(tǒng)調(diào)用序列即為異常。t-STIDE算法是STIDE算法的變種,它使用一個(gè)閾值,只有當(dāng)某個(gè)數(shù)據(jù)在訓(xùn)練集中未出現(xiàn)過,但在測(cè)試集中出現(xiàn)了,且數(shù)量超過這個(gè)閾值(通常為數(shù)據(jù)總數(shù)的0.001%)時(shí),才認(rèn)為它是一個(gè)異常。

    2.4 實(shí)驗(yàn)結(jié)果

    實(shí)驗(yàn)對(duì)比主要考查兩個(gè)指標(biāo):檢測(cè)率(intrusion detection rate)和誤報(bào)率(false positive rate)。

    檢測(cè)率反映的是模型的正確性,誤報(bào)率反映的是模型的健壯性,通常檢測(cè)模型必須在這兩者之間尋求平衡。針對(duì)某一確定的訓(xùn)練/測(cè)試數(shù)據(jù)集,用得到的ROC(Receiver Operating Characteristic)曲線來反映檢測(cè)率與誤報(bào)率之間的關(guān)系。

    首先,將本文的算法與上述兩個(gè)算法在同一個(gè)混合數(shù)據(jù)集(異常數(shù)據(jù)的總數(shù)不超過數(shù)據(jù)總數(shù)的5%)上進(jìn)行訓(xùn)練。接著,將本文的算法在混合數(shù)據(jù)集(異常數(shù)據(jù)的總數(shù)不超過數(shù)據(jù)總數(shù)的5%)上進(jìn)行訓(xùn)練,對(duì)兩個(gè)比較算法使用正常數(shù)據(jù)集進(jìn)行訓(xùn)練,結(jié)果分別見圖1和圖2。

    圖1 本文方法與t-STIDE算法的檢測(cè)效果比較(a)-(d)分別代表四種入侵程序產(chǎn)生的異常數(shù)據(jù)的檢測(cè)情況,其中(a)ftpd,(b)ps,(c)xlock,(d)named

    (1)實(shí)驗(yàn)1:同時(shí)使用混合數(shù)據(jù)集。對(duì)于STIDE和t-STIDE算法來說,這個(gè)數(shù)據(jù)集既是訓(xùn)練集也是測(cè)試集。結(jié)果,STIDE算法沒有檢測(cè)出任何異常數(shù)據(jù),原因是對(duì)于STIDE算法來說,測(cè)試集中的所有系統(tǒng)調(diào)用序列(正常與異常數(shù)據(jù))在訓(xùn)練集中都曾經(jīng)見過。對(duì)于t-STIDE算法,由于閾值必須事先根據(jù)數(shù)據(jù)元素總數(shù)(這在實(shí)際環(huán)境下是不可能事先知道的)決定,所以并不能保證設(shè)定的閾值是正確或合適的,比如對(duì)于由入侵程序ftpd和ps產(chǎn)生的異常數(shù)據(jù),算法就沒有檢測(cè)出來。本文算法與t-STIDE算法的檢測(cè)效果的比較見圖1。圖中,本文算法的ROC曲線用AD標(biāo)識(shí)。

    (2)實(shí)驗(yàn)2:本文算法使用混合數(shù)據(jù)集,STIDE和t-STIDE算法使用正常數(shù)據(jù)集。STIDE算法和t-STIDE算法使用正常數(shù)據(jù)集中的1/3數(shù)據(jù)進(jìn)行訓(xùn)練,余下的作為測(cè)試用數(shù)據(jù)。檢測(cè)效果的比較見圖2。圖中,本文算法的ROC曲線用AD標(biāo)識(shí)。

    圖2 本文方法與STIDE算法和t-STIDE算法的檢測(cè)效果比較(a)-(d)分別代表四種入侵程序產(chǎn)生的異常數(shù)據(jù)的檢測(cè)情況,其中(a)ftpd,(b)ps,(c)xlock,(d)named

    可以看出,圖1中本文提出的算法具有較優(yōu)的檢測(cè)效果。圖2中本文的算法在檢測(cè)效果上與其余兩個(gè)算法不相上下。總體上,本文提出的基于概率分布的異常檢測(cè)模型訓(xùn)練方法具有較好的檢測(cè)效果。

    3 幾點(diǎn)假設(shè)

    本文提出的異常檢測(cè)的方法是基于以下三點(diǎn)假設(shè)[6]:

    (1)對(duì)于正常數(shù)據(jù),可以建立它的概率分布模型。

    (2)異常數(shù)據(jù)從本質(zhì)上與正常數(shù)據(jù)不同。

    (3)訓(xùn)練數(shù)據(jù)集中的正常數(shù)據(jù)從數(shù)量上遠(yuǎn)遠(yuǎn)超過異常數(shù)據(jù)。

    對(duì)于系統(tǒng)程序調(diào)用來說,正常的調(diào)用過程應(yīng)該非常有規(guī)律并能有效地建立模型。由于異常數(shù)據(jù)是以入侵為目的,它們調(diào)用過程往往較為特殊,這就有條件將它們檢測(cè)出來[7]。

    對(duì)于第三個(gè)假設(shè),本文也做了進(jìn)一步的研究,方法是調(diào)整數(shù)據(jù)集中的異常數(shù)據(jù)總數(shù),來觀察不同比例下的異常數(shù)據(jù)的檢測(cè)效果,如圖3。實(shí)驗(yàn)結(jié)果顯示,隨著異常數(shù)據(jù)所占比例的增加,模型的檢測(cè)能力明顯下降。從圖3中可以看出,對(duì)于含有較少的異常數(shù)據(jù)(這些數(shù)據(jù)記錄由ftpd、ps(LL)、xlock和named軟件生成)的數(shù)據(jù)集,算法模型擁有較好的檢測(cè)能力。當(dāng)數(shù)據(jù)集中含有較多的異常數(shù)據(jù)時(shí)(這些異常數(shù)據(jù)記錄由login、ps(NUM)軟件生成),算法模型的檢測(cè)能力下降明顯。

    圖3 模型對(duì)異常數(shù)據(jù)不同比例的數(shù)據(jù)集檢測(cè)效果比較

    4 總 結(jié)

    本文提出了一種只需“混合數(shù)據(jù)集”的基于概率分布的異常檢測(cè)模型訓(xùn)練方法。評(píng)估了此方法的檢測(cè)效果,并將其與其他兩個(gè)傳統(tǒng)的異常檢測(cè)模型訓(xùn)練方法的檢測(cè)效果進(jìn)行了比較。實(shí)驗(yàn)結(jié)果顯示,本文的方法又有較好的檢測(cè)效果,令人滿意。

    猜你喜歡
    概率分布調(diào)用算法
    離散型概率分布的ORB圖像特征點(diǎn)誤匹配剔除算法
    核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
    基于MapReduce的改進(jìn)Eclat算法
    Travellng thg World Full—time for Rree
    LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
    進(jìn)位加法的兩種算法
    關(guān)于概率分布函數(shù)定義的辨析
    科技視界(2016年19期)2017-05-18 10:18:46
    基于概率分布的PPP項(xiàng)目風(fēng)險(xiǎn)承擔(dān)支出測(cè)算
    基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
    一種改進(jìn)的整周模糊度去相關(guān)算法
    雷山县| 多伦县| 京山县| 张家港市| 丽水市| 呼图壁县| 钦州市| 津市市| 凤阳县| 辽源市| 海林市| 晋中市| 内乡县| 宁河县| 贡觉县| 威信县| 冷水江市| 建始县| 利川市| 杭锦后旗| 仙桃市| 松溪县| 齐齐哈尔市| 黑河市| 石柱| 南丹县| 吉木萨尔县| 南昌市| 正镶白旗| 凌海市| 东乡县| 青神县| 长顺县| 五寨县| 鸡泽县| 西青区| 合江县| 东安县| 青阳县| 威海市| 策勒县|