趙 菲
(鄭州工業(yè)應(yīng)用技術(shù)學(xué)院,河南 新鄭451100)
網(wǎng)絡(luò)技術(shù)在人們?nèi)粘Ia(chǎn)及生活中的作用越來越突出,技術(shù)的發(fā)展促進(jìn)了生產(chǎn)力的發(fā)展,然而網(wǎng)絡(luò)安全問題又會在不同程度上影響到社會穩(wěn)定與經(jīng)濟(jì)發(fā)展,因此各類網(wǎng)絡(luò)安全保障措施應(yīng)運(yùn)而生。入侵檢測技術(shù)與傳統(tǒng)的防火墻技術(shù)有著本質(zhì)上的不同,其部署于網(wǎng)絡(luò)中的關(guān)鍵位置,收集計算機(jī)所面臨的潛在的安全威脅行為,既能夠監(jiān)控來自外部的攻擊,又能夠?qū)崟r監(jiān)控計算機(jī)內(nèi)部的攻擊。傳統(tǒng)的網(wǎng)絡(luò)入侵檢測技術(shù)包括兩種:一是誤用檢測,該技術(shù)檢測率較低,且無法檢測新型的攻擊位置,但誤檢率低;二是異常檢測,具有良好的適應(yīng)性,能夠檢測新型攻擊,但誤檢率高。大數(shù)據(jù)技術(shù)的應(yīng)用能夠從海量的數(shù)據(jù)中提取隱含的知識或規(guī)則,提取用戶行為規(guī)則,能夠彌補(bǔ)上述兩種檢測技術(shù)的不足,提高入侵檢測系統(tǒng)的自適應(yīng)性與檢測效率。
數(shù)據(jù)挖掘技術(shù)是指利用適當(dāng)?shù)乃惴◤拇嬖谠肼暤暮A磕:龜?shù)據(jù)信息中挖掘出具有利用價值的數(shù)據(jù)信息,以滿足用戶信息需求。數(shù)據(jù)挖掘的主要對象為數(shù)據(jù)庫、結(jié)構(gòu)化或半結(jié)構(gòu)化的數(shù)據(jù)、文件等。按照實(shí)際應(yīng)用不同,采用不同的數(shù)據(jù)挖掘算法。
入侵檢測技術(shù)是指在計算機(jī)系統(tǒng)出現(xiàn)各類入侵行為后對威脅到網(wǎng)絡(luò)安全的入侵行為進(jìn)行檢測與監(jiān)控,及時發(fā)現(xiàn)存在的安全隱患,根據(jù)入侵檢測的基本情況不同,入侵檢測可以分為基于主機(jī)的入侵檢測、基于網(wǎng)絡(luò)的入侵檢測及混合式分布入侵檢測?;谥鳈C(jī)的入侵檢測主要分析計算機(jī)操作系統(tǒng)的事件日志、程序調(diào)用及端口調(diào)用記錄,將這些數(shù)據(jù)與攻擊簽名進(jìn)行分析,檢測二者的匹配度?;谥鳈C(jī)的入侵檢測可以在不額外增加設(shè)備的前提下確定攻擊是否成功,并能夠使用被加密的交換環(huán)境?;诰W(wǎng)絡(luò)的入侵檢測系統(tǒng)主要設(shè)置于重要的網(wǎng)段內(nèi),對網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行持續(xù)性檢測,對每個數(shù)據(jù)包展開特征分析,如果分析結(jié)果與某些規(guī)則相符則發(fā)出切斷網(wǎng)絡(luò)的警報,該技術(shù)可用于檢測未成功的攻擊,且經(jīng)濟(jì)性更高。混合式分布入侵檢測是前兩種入侵檢測技術(shù)的結(jié)合,不僅能夠發(fā)現(xiàn)攻擊信息,而且能夠分析系統(tǒng)的異常信息,具有良好的可操作性、互有和性及可融合性等優(yōu)點(diǎn),因此應(yīng)用比較廣泛[1-3]。
入侵檢測系統(tǒng)中應(yīng)用數(shù)據(jù)挖掘技術(shù)體現(xiàn)出以下3個方面的優(yōu)勢。首先,較強(qiáng)的適應(yīng)性。傳統(tǒng)的網(wǎng)絡(luò)入侵檢測系統(tǒng)以某種規(guī)則庫為基礎(chǔ),對網(wǎng)絡(luò)入侵行為進(jìn)行對比、檢測,規(guī)則庫不僅應(yīng)用范圍十分有限,而且具有較強(qiáng)的針對性,一旦計算機(jī)系統(tǒng)受到新型攻擊,或者攻擊行為距離跨度較大,則系統(tǒng)就無法及時做出跟蹤檢測,或無法進(jìn)行有效檢測,入侵效果不盡如人意。而將數(shù)據(jù)挖掘技術(shù)應(yīng)用于入侵檢測系統(tǒng)中,不僅能夠針對規(guī)則庫中的某些入侵行為做出對比、分析,而且能夠針對新的信息數(shù)據(jù)進(jìn)行檢測,大大提高了入侵檢測系統(tǒng)的適應(yīng)性。其次,低誤報率及漏報率。系統(tǒng)執(zhí)行各項操作時對信號匹配依賴性較強(qiáng),因此報警情況往往多于實(shí)際網(wǎng)絡(luò)入侵情況,從而出現(xiàn)誤報。應(yīng)用數(shù)據(jù)挖掘技術(shù)可以設(shè)置、分析網(wǎng)絡(luò)正常行為產(chǎn)生的信號,利用數(shù)據(jù)挖掘技術(shù)去除攻擊數(shù)據(jù),減少誤報率。應(yīng)用數(shù)據(jù)挖掘技術(shù)降低漏報率同樣如此,傳統(tǒng)的入侵檢測系統(tǒng)主要通過對比規(guī)則庫中的某些規(guī)則來識別攻擊,無法識別新型攻擊或經(jīng)過改動的攻擊方式,導(dǎo)致漏報。數(shù)據(jù)挖掘技術(shù)能夠分析各類攻擊行為,并及時出做報警處理,有效降低漏報率。最后,創(chuàng)建新型的入侵檢測模型。通常情況下網(wǎng)絡(luò)都處于一個正常的運(yùn)行狀態(tài),極少數(shù)情況會出現(xiàn)異常數(shù)據(jù),利用數(shù)據(jù)挖掘技術(shù)中的聚類分析可準(zhǔn)確過濾網(wǎng)絡(luò)中的正常數(shù)據(jù),并創(chuàng)建新型的入侵檢測模型[4-7]。
入侵檢測系統(tǒng)中常用的數(shù)據(jù)挖掘算法包括關(guān)聯(lián)分析算法、序列分析算法、聚類分析算法及分類分析算法等4種。
1)關(guān)聯(lián)分析算法就是分析給定的一組項目和一個記錄集合,挖掘項目之間的相關(guān)性,從而對網(wǎng)絡(luò)中各種入侵行為的相關(guān)性做出判斷。關(guān)聯(lián)規(guī)則的屬性描述采用置信度、支持度,挖掘?qū)?shù)據(jù)項之間的相關(guān)性,找出同一條記錄中不同字段之間的關(guān)系,即數(shù)據(jù)項之間的共同屬性特點(diǎn)及規(guī)律。挖掘關(guān)聯(lián)規(guī)則時,先找到所有大于最小支持度項目的組合,即產(chǎn)生頻集,再從頻集中生成關(guān)聯(lián)規(guī)則。
2)序列分析算法主要分析數(shù)據(jù)記錄之間的前后關(guān)系,很多入侵行為都是有先后順序的,有些行為必須發(fā)生在其他行為之后,聯(lián)系數(shù)據(jù)之間的關(guān)聯(lián)性與時間的關(guān)聯(lián)性,能夠根據(jù)攻擊行為發(fā)生的時間先后特征挖掘出攻擊行為規(guī)則,從而對入侵行為作出準(zhǔn)確判定。序列分析算法通過構(gòu)建序列模型,運(yùn)用頻繁事件、趨勢分析等具體算法完成分析挖掘。
3)聚類分析算法必須有一個大前提,即用戶的行為數(shù)據(jù)只能分為正常與異常兩種,通過該算法可以將不同事件流的數(shù)據(jù)特性向量的形式表現(xiàn)出來,再將各個向量組織到不同的行為類別。聚類分析算法是以特定的規(guī)則為基礎(chǔ),將數(shù)據(jù)合理地分為若干組,相比之下組內(nèi)數(shù)據(jù)比組織數(shù)據(jù)更加相似,有利于系統(tǒng)發(fā)現(xiàn)數(shù)據(jù)中的隱形模式。根據(jù)數(shù)據(jù)類型、用戶應(yīng)用目的不同,可以將聚類分析算法分為劃分方法、層次方法、基于密度的方法及基于網(wǎng)格的方法等若干種。假設(shè)給定數(shù)據(jù)集D包含n個對象和k值,可以利用劃分方法把數(shù)據(jù)集D劃分為k個部分,每個部分為一簇,同一簇中的對象必須具備相似性的特征,不同簇中的數(shù)據(jù)則具有相異性的特征,劃分方法要先指定簇數(shù)目或簇中心,再通過不斷迭代的方式直至目標(biāo)函數(shù)收斂。層次方法是比較經(jīng)典的方法,應(yīng)用也十分廣泛,該方法中數(shù)據(jù)被組織為若干組,形成對應(yīng)的樹進(jìn)行聚類。大部分劃分方法只能解決發(fā)現(xiàn)球狀簇的問題,而基于密度的方法則可以解決發(fā)現(xiàn)任意形狀簇的問題?;诰W(wǎng)格的方法就是把對象空間劃分為若干單元格,聚類操作在這些單元格形成的網(wǎng)格結(jié)構(gòu)上進(jìn)行,大大提高了數(shù)據(jù)處理的效率。
4)分類分析算法主要是把一個記錄集標(biāo)記成定義好的若干類,分類需要一批訓(xùn)練好的由數(shù)據(jù)記錄組成的訓(xùn)練集作為輸入,輸出結(jié)果表現(xiàn)為規(guī)則集形式的分類器。分類分析算法主要找出描述并區(qū)分?jǐn)?shù)據(jù)類或概念的模型,用到的具體算法相對較多,包括決策樹、貝葉斯理論、神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)(Support Vector Machines,SVM)等算法。
上述數(shù)據(jù)挖掘算法適用范圍各有不同,結(jié)合應(yīng)用將大大提高入侵檢測系統(tǒng)的有效性,比如應(yīng)用聚類分析算法可以區(qū)分正常數(shù)據(jù)與異常數(shù)據(jù),應(yīng)用關(guān)聯(lián)分析算法可以挖掘出同一數(shù)據(jù)記錄不同屬性之間的隱藏規(guī)則,應(yīng)用序列分析算法則可以準(zhǔn)確辨別有時間關(guān)聯(lián)的攻擊行為等。
基于數(shù)據(jù)挖掘技術(shù)的入侵檢測系統(tǒng)模型框架結(jié)構(gòu)基于模塊化設(shè)計,其工作流程如下:數(shù)據(jù)采集預(yù)處理模塊采集實(shí)時的網(wǎng)絡(luò)數(shù)據(jù),為整個入侵檢測系統(tǒng)的初始工作階段,對采集到的數(shù)據(jù)進(jìn)行預(yù)處理,形成訓(xùn)練數(shù)據(jù)集,再將這些數(shù)據(jù)集保存于訓(xùn)練數(shù)據(jù)模塊中。關(guān)聯(lián)規(guī)則與序列規(guī)模挖掘模塊分析數(shù)據(jù)集中產(chǎn)生的關(guān)聯(lián)規(guī)則與序列規(guī)則,發(fā)現(xiàn)正常模式后與預(yù)處理數(shù)據(jù)進(jìn)行對比,判斷數(shù)據(jù)是否異常,實(shí)時網(wǎng)絡(luò)數(shù)據(jù)處理后,再發(fā)送到異常檢測模塊。更新后的訓(xùn)練數(shù)據(jù)會進(jìn)入到基于誤用檢測規(guī)則挖掘模塊進(jìn)行篩選,通過分類規(guī)則挖掘算法進(jìn)行選擇,并用于后續(xù)的誤用檢測,基于大量挖掘數(shù)據(jù)可以形成一定的異常檢測模型與誤用檢測模型,再由檢測結(jié)果處理模塊對檢測結(jié)果進(jìn)行處理。數(shù)據(jù)經(jīng)過異常檢測模型與誤用檢測模型處理后,已經(jīng)基本完成網(wǎng)絡(luò)數(shù)據(jù)的判定,再將處理結(jié)果反饋給訓(xùn)練數(shù)據(jù)收集模塊,并對訓(xùn)練數(shù)據(jù)、收集模塊數(shù)據(jù)做出及時更新。
本研究提出基于分布式數(shù)據(jù)挖掘技術(shù)的網(wǎng)絡(luò)入侵檢測系統(tǒng),其可靠性高、用戶使用范圍比較廣泛。系統(tǒng)包括兩個部分:一是由主機(jī)、服務(wù)器、交換機(jī)、探測器等組成的系統(tǒng)硬件;二是由數(shù)據(jù)處理軟件及數(shù)據(jù)庫組成的系統(tǒng)軟件。按照功能設(shè)計結(jié)構(gòu),整個系統(tǒng)又包括外部采集硬件模塊、離線運(yùn)行模塊、在線檢測數(shù)據(jù)模塊、檢測引擎模塊及決策功能模塊等。其中外部采集硬件模塊主要為數(shù)據(jù)的輸出提供基礎(chǔ)保障,包括計算機(jī)、數(shù)據(jù)探測器、網(wǎng)絡(luò)環(huán)境等,組成整個系統(tǒng)運(yùn)行環(huán)境。離線運(yùn)行模塊是整個系統(tǒng)的工作核心,數(shù)據(jù)庫存儲于該模塊,主要包括數(shù)據(jù)承處理功能、數(shù)據(jù)訓(xùn)練集形成功能、異常檢測規(guī)則挖掘過程、誤用檢測規(guī)模挖掘過程、異常檢測規(guī)則庫形成功能、存儲過程、誤用檢測規(guī)則庫形成功能、存儲過程等。離線運(yùn)行部分對網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行處理,形成新的異常檢測規(guī)則庫及誤用檢測規(guī)則庫,后續(xù)的異常檢測及誤用檢測就以此為依據(jù)。系統(tǒng)中不同的探測器會向控制模塊發(fā)送不同的數(shù)據(jù)源,挖掘模塊再根據(jù)數(shù)據(jù)源選擇適用的工作策略,并根據(jù)數(shù)據(jù)源決定誤用檢測與異常檢測的順序;通過控制模塊可以對數(shù)據(jù)采集策略做出自動調(diào)整,對不同探測器發(fā)送的網(wǎng)絡(luò)數(shù)據(jù)源進(jìn)行控制。檢測引擎部分的主要作用是實(shí)時檢測網(wǎng)絡(luò)活動,通過網(wǎng)絡(luò)誤用檢測與異常檢測完成計算機(jī)網(wǎng)絡(luò)入侵檢測。
在系統(tǒng)外部網(wǎng)絡(luò)與外部路由器連接處安裝入侵檢測系統(tǒng)的最外層監(jiān)測器,主要監(jiān)測系統(tǒng)外部入侵行為;在網(wǎng)絡(luò)防火墻與信息管理層之間安裝中間層監(jiān)測器,主要對信息管理層與外部網(wǎng)絡(luò)信息的通信流進(jìn)行監(jiān)測與分析;在信息網(wǎng)、控制網(wǎng)及設(shè)備網(wǎng)中安裝內(nèi)部監(jiān)測器,主要對系統(tǒng)各子網(wǎng)中的網(wǎng)絡(luò)信息進(jìn)行監(jiān)測,并設(shè)置入侵檢測策略。值得一提的是,本文提出的網(wǎng)絡(luò)入侵檢測系統(tǒng)在設(shè)備層與控制層兩部分的監(jiān)測器數(shù)據(jù)采用兩條通道進(jìn)行數(shù)據(jù)的輸入與輸出,以滿足網(wǎng)絡(luò)控制實(shí)時性的要求。設(shè)備層與控制層都設(shè)置對應(yīng)的網(wǎng)絡(luò)接口偵聽數(shù)據(jù),并通過專用通道輸出檢測過的數(shù)據(jù),這種做法最大的優(yōu)勢可以減輕網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)呢?fù)擔(dān),減少重要數(shù)據(jù)的控制。此外,專用通道還能還可以作為備用的冗余線路應(yīng)用于應(yīng)急通信。信息管理層的入侵檢測系統(tǒng)可以防范一般的網(wǎng)絡(luò)入侵行為,其對于網(wǎng)絡(luò)信息的實(shí)時性要求不高;由于入侵檢測系統(tǒng)的數(shù)據(jù)分析能力十分強(qiáng)大,因此系統(tǒng)中的設(shè)備層與控制層能夠?qū)θ肭中袨榧肮收献龀鰧?shí)時檢測與診斷。
整個入侵檢測系統(tǒng)安裝部署完成后能夠進(jìn)行實(shí)時檢測與系統(tǒng)更新,當(dāng)然網(wǎng)絡(luò)管理人員需要根據(jù)入侵系統(tǒng)提供的反饋數(shù)據(jù)做出處理配合。當(dāng)系統(tǒng)發(fā)出報警信息時,要判斷報警信息的準(zhǔn)確性,報警準(zhǔn)確則要做出有針對性的處理;針對誤報則要收集相關(guān)數(shù)據(jù),分析誤報的原因,或者繼續(xù)監(jiān)測系統(tǒng)。此外,計算機(jī)網(wǎng)絡(luò)的入侵行為形式多樣且復(fù)雜,網(wǎng)絡(luò)管理人員要及時更新入侵檢測系統(tǒng)的數(shù)據(jù)庫,不斷添加新的入侵防御方式,才能更好地保證入侵檢測系統(tǒng)的安全運(yùn)行。
目前入侵檢測系統(tǒng)已經(jīng)成為網(wǎng)絡(luò)體系中一個十分關(guān)鍵的組件,也是網(wǎng)絡(luò)系統(tǒng)運(yùn)行過程中防御信息安全的重要策略;數(shù)據(jù)挖掘技術(shù)能夠從大量的數(shù)據(jù)中提取出隱含的知識或規(guī)則,將數(shù)據(jù)挖掘引入入侵檢測,對網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行處理,提取其中蘊(yùn)含的用戶行為規(guī)則,有助于提高入侵檢測系統(tǒng)自適應(yīng)性和效率,因此在網(wǎng)絡(luò)入侵檢測系統(tǒng)中應(yīng)用數(shù)據(jù)挖掘技術(shù)具有重要的現(xiàn)實(shí)意義。