1 入侵檢測(cè)
1.1 入侵檢測(cè)概述
入侵檢測(cè)就是檢測(cè)入侵行為,入侵檢測(cè)(Intrusion Detection),顧名思義,就是對(duì)入侵行為的發(fā)覺(jué)。他通過(guò)對(duì)計(jì)算機(jī)網(wǎng)絡(luò)或計(jì)算機(jī)系統(tǒng)中若干關(guān)鍵點(diǎn)收集信息并對(duì)其進(jìn)行分析,從中發(fā)現(xiàn)網(wǎng)絡(luò)或系統(tǒng)中是否有違反安全策略的行為和被攻擊的跡象。入侵檢測(cè)(Intrusion Detection)是對(duì)入侵行為的檢測(cè)。它通過(guò)收集和分析網(wǎng)絡(luò)行為、安全日志、審計(jì) 入侵檢測(cè)圖片數(shù)據(jù)、其它網(wǎng)絡(luò)上可以獲得的信息以及計(jì)算機(jī)系統(tǒng)中若干關(guān)鍵點(diǎn)的信息,檢查網(wǎng)絡(luò)或系統(tǒng)中是否存在違反安全策略的行為和被攻擊的跡象。入侵檢測(cè)作為一種積極主動(dòng)地安全防護(hù)技術(shù),提供了對(duì)內(nèi)部攻擊、外部攻擊和誤操作的實(shí)時(shí)保護(hù),在網(wǎng)絡(luò)系統(tǒng)受到危害之前攔截和響應(yīng)入侵。
誤用檢測(cè)是將入侵者活動(dòng)用一種模式來(lái)表示,入侵檢測(cè)系統(tǒng)的目標(biāo)是檢測(cè)主體活動(dòng)是否符合這些模式。在目前的商業(yè)產(chǎn)品中誤用檢測(cè)最通常的形式是將每一個(gè)攻擊事件的模式定義為一個(gè)獨(dú)立的特征,從而建立入侵特征庫(kù)。它可以將已有的入侵方法檢查出來(lái),但對(duì)新的入侵方法無(wú)能為力。
異常檢測(cè) (Anomaly detection) 的假設(shè)是入侵者活動(dòng)異常于正常主體的活動(dòng)。根據(jù)這一理念建立主體正?;顒?dòng)的“活動(dòng)簡(jiǎn)檔”,將當(dāng)前主體的活動(dòng)狀況與“活動(dòng)簡(jiǎn)檔”相比較,當(dāng)違反其統(tǒng)計(jì)規(guī)律時(shí),認(rèn)為該活動(dòng)可能是“入侵”行為。異常檢測(cè)的難題在于如何建立“活動(dòng)簡(jiǎn)檔”以及如何設(shè)計(jì)統(tǒng)計(jì)算法,從而不把正常的操作作為“入侵”或忽略真正的“入侵”行為。異常檢測(cè)是指通過(guò)攻擊行為的特征庫(kù),采用特征匹配的方法確定攻擊事件。誤用檢測(cè)的優(yōu)點(diǎn)是檢測(cè)的誤報(bào)率低,檢測(cè)快,但誤用檢測(cè)通常不能發(fā)現(xiàn)攻擊特征庫(kù)中沒(méi)有事先指定的攻擊行為,所以無(wú)法檢測(cè)層出不窮的新攻擊 .
本文介紹了數(shù)據(jù)挖掘技術(shù)在入侵檢測(cè)中的應(yīng)用,從大量的審計(jì)數(shù)據(jù)中提取入侵或正常的行為模式,將這些模式應(yīng)用于誤用檢測(cè)和異常檢測(cè)。
1.2 入侵檢測(cè)的內(nèi)容
入侵檢測(cè)主要包括以下內(nèi)容:檢測(cè)并分析用戶和系統(tǒng)的活動(dòng);檢查系統(tǒng)配置和漏洞;評(píng)估系統(tǒng)關(guān)鍵資源和數(shù)據(jù)文件的完整性;識(shí)別已知的攻擊行為;統(tǒng)計(jì)分析日常行為;操作系統(tǒng)日志管理,識(shí)別違反安全策略的用戶活動(dòng)。
1.3 入侵檢測(cè)的機(jī)制
(1)模式匹配。模式匹配就是將收集到的信息與已知的網(wǎng)絡(luò)入侵進(jìn)行比較,發(fā)現(xiàn)違背安全策略的入侵行為。這種檢測(cè)方法只需收集相關(guān)的數(shù)據(jù)集合就能進(jìn)行判斷,減少了系統(tǒng)占用,其技術(shù)已相當(dāng)成熟,檢測(cè)準(zhǔn)確率和效率也相當(dāng)高。
(2)異常檢測(cè)。異常檢測(cè)首先給系統(tǒng)對(duì)象(用戶、文件、目錄和設(shè)備等)創(chuàng)建一個(gè)統(tǒng)計(jì)描述,包括統(tǒng)計(jì)正常使用時(shí)的測(cè)量屬性,如訪問(wèn)次數(shù)、操作失敗次數(shù)和延時(shí)等。測(cè)量屬性的平均值被用來(lái)與網(wǎng)絡(luò)系統(tǒng)的行為進(jìn)行比較,當(dāng)觀察值在正常值范圍之外時(shí),入侵檢測(cè)系統(tǒng)就會(huì)判斷有入侵發(fā)生。異常檢測(cè)的優(yōu)點(diǎn)是可以檢測(cè)到未知入侵和復(fù)雜的入侵,缺點(diǎn)是誤報(bào)、漏報(bào)率高。異常檢測(cè)是指根據(jù)非正常行為(系統(tǒng)或用戶)和使用計(jì)算機(jī)非正常資源來(lái)檢測(cè)入侵行為。其關(guān)鍵在于建立用戶及系統(tǒng)正常行為輪廓(Profile),檢測(cè)實(shí)際活動(dòng)以判斷是否背離正常輪廓。
(3)協(xié)議分析。協(xié)議分析是在傳統(tǒng)模式匹配技術(shù)基礎(chǔ)之上發(fā)展起來(lái)的一種新的入侵檢測(cè)技術(shù)。它充分利用了網(wǎng)絡(luò)協(xié)議的高度有序性,并結(jié)合了高速數(shù)據(jù)包捕捉、協(xié)議分析和命令解析,來(lái)快速檢測(cè)某個(gè)攻擊特征是否存在,這種技術(shù)正逐漸進(jìn)入成熟應(yīng)用階段。協(xié)議分析大大減少了計(jì)算量,即使在高負(fù)載的高速網(wǎng)絡(luò)上,也能逐個(gè)分析所有的數(shù)據(jù)包。
2 數(shù)據(jù)挖掘概述
2.1 數(shù)據(jù)挖掘的方法
數(shù)據(jù)挖掘通常又被稱作數(shù)據(jù)庫(kù)中的知識(shí)發(fā)現(xiàn)(KDD),是一個(gè)用來(lái)從大型數(shù)據(jù)庫(kù)中提取出有價(jià)值知識(shí)的過(guò)程。
將數(shù)據(jù)挖掘技術(shù)應(yīng)用到入侵檢測(cè)之中的目的就是為了從大量審計(jì)數(shù)據(jù)中挖掘出隱含在其中的用戶感興趣的有價(jià)值信息,而后再將所得到的知識(shí)以一種可理解的方式表示出來(lái),最后使用得到的知識(shí)去檢測(cè)是否有入侵發(fā)生。
數(shù)據(jù)挖掘的目標(biāo)是從數(shù)據(jù)庫(kù)中發(fā)現(xiàn)隱含的、有意義的知識(shí),按其功能可分為以下幾類:
(1)關(guān)聯(lián)分析
關(guān)聯(lián)分析能尋找數(shù)據(jù)庫(kù)中大量數(shù)據(jù)的相關(guān)聯(lián)系,常用的2種技術(shù)為關(guān)聯(lián)規(guī)則和序列模式。關(guān)聯(lián)規(guī)則是發(fā)現(xiàn)一個(gè)事物與其他事物間的相互關(guān)聯(lián)性或相互依賴性,可用于如分析客戶在超市買(mǎi)牙刷的同時(shí)又買(mǎi)牙膏的可能性;關(guān)聯(lián)規(guī)則關(guān)聯(lián)規(guī)則是形如X→Y的蘊(yùn)涵式,其中且, X和Y分別稱為關(guān)聯(lián)規(guī)則的先導(dǎo)(antecedent或left-hand-side, LHS)和后繼(consequent或right-hand-side, RHS) 。序列模式分析將重點(diǎn)放在分析數(shù)據(jù)之間的前后因果關(guān)系,如買(mǎi)了電腦的顧客則會(huì)在3個(gè)月內(nèi)買(mǎi)殺毒軟件。序列模式挖掘 (sequence pattern mining )是指挖掘相對(duì)時(shí)間或其他模式出現(xiàn)頻率高的模式。一個(gè)序列模式的例子是“ 9 個(gè)月以前購(gòu)買(mǎi)奔騰 PC 的客戶很可能在一個(gè)月內(nèi)訂購(gòu)新的 CPU 芯片”。由于很多商業(yè)交易、電傳記錄、天氣數(shù)據(jù)和生產(chǎn)過(guò)程都是時(shí)間序列數(shù)據(jù),在針對(duì)目標(biāo)市場(chǎng)、客戶吸引、氣象預(yù)報(bào)等的數(shù)據(jù)分析中,序列模式挖掘是很有用途的。
(2)聚類
輸入的數(shù)據(jù)并無(wú)任何類型標(biāo)記,聚類就是按一定的規(guī)則將數(shù)據(jù)劃分為合理的集合,即將對(duì)象分組為多個(gè)類或簇,使得在同一個(gè)簇中的對(duì)象之間具有較高的相似度,而在不同簇中的對(duì)象差別很大。
(3)自動(dòng)預(yù)測(cè)趨勢(shì)和行為
數(shù)據(jù)挖掘自動(dòng)在大型數(shù)據(jù)庫(kù)中進(jìn)行分類和預(yù)測(cè),尋找預(yù)測(cè)性信息,自動(dòng)地提出描述重要數(shù)據(jù)類的模型或預(yù)測(cè)未來(lái)的數(shù)據(jù)趨勢(shì)。
(4)概念描述
概念描述就是對(duì)某類對(duì)象的內(nèi)涵進(jìn)行描述并概括出這類對(duì)象的有關(guān)特征。對(duì)于數(shù)據(jù)庫(kù)中龐雜的數(shù)據(jù),人們期望以簡(jiǎn)潔的描述形式來(lái)描述匯集的數(shù)據(jù)集。
(5)偏差檢測(cè)
偏差包括很多潛在的知識(shí),如分類中的反常實(shí)例、不滿足規(guī)則的特例、觀測(cè)結(jié)果與模型預(yù)測(cè)值的偏差、量值隨時(shí)間的變化等。
2.2 數(shù)據(jù)挖掘的過(guò)程
把數(shù)據(jù)挖掘引入到入侵檢測(cè)的優(yōu)越之處在于可以從大量的網(wǎng)絡(luò)數(shù)據(jù)以及主機(jī)的日志數(shù)據(jù)中提取出人們需要的、事先未知的知識(shí)和規(guī)律??梢詫⑷肭謾z測(cè)看作是一個(gè)數(shù)據(jù)的分析過(guò)程,對(duì)大量的安全數(shù)據(jù)應(yīng)用特定的數(shù)據(jù)挖掘算法,以達(dá)到建立一個(gè)具有自適應(yīng)性以及良好的擴(kuò)展性能的入侵檢測(cè)系統(tǒng)。
應(yīng)用到入侵檢測(cè)上的數(shù)據(jù)挖掘算法主要集中在關(guān)聯(lián)、序列、分類和聚類這四個(gè)基本模型之上。
3 數(shù)據(jù)挖掘在入侵檢測(cè)中的應(yīng)用
3.1 數(shù)據(jù)挖掘技術(shù)在入侵檢測(cè)中的應(yīng)用
(1)關(guān)聯(lián)規(guī)則挖掘的應(yīng)用
關(guān)聯(lián)規(guī)則是數(shù)據(jù)挖掘技術(shù)中最為廣泛應(yīng)用的技術(shù)之一,也是最早用于入侵檢測(cè)的技術(shù)。最早運(yùn)用這種技術(shù)是作為一種工具去產(chǎn)生關(guān)于網(wǎng)絡(luò)流(包括報(bào)文和連接)的報(bào)告。發(fā)現(xiàn)關(guān)聯(lián)規(guī)則問(wèn)題就是發(fā)現(xiàn)所有支持度和可信度均超過(guò)規(guī)定閾值的關(guān)聯(lián)規(guī)則,這個(gè)發(fā)現(xiàn)過(guò)程分為兩步:第一步識(shí)別所有的頻繁項(xiàng)目集即所有支持度不低于用戶規(guī)定的最小支持度閾值的項(xiàng)目集;第二步是從第一步得到的頻繁集中構(gòu)造可信度不低于用戶規(guī)定的最小可信度閾值的規(guī)則。應(yīng)用在網(wǎng)絡(luò)流量分析上,將一次連接看作是一個(gè)事務(wù)T,將采集到的很多連接記錄組成事務(wù)數(shù)據(jù)庫(kù)D,每個(gè)事務(wù)T由duration、service、src-host、dst-host、dst-bytes、flag共7項(xiàng)組成,事務(wù)的唯一標(biāo)識(shí)符為time,其中service為服務(wù)(或目的的端口),src-host為源主機(jī),dst-host為目的主機(jī),dst-bytes為源主機(jī)發(fā)出的數(shù)據(jù)包大小,flag為標(biāo)記。
(2)序列模式分析的應(yīng)用
序列模式用于發(fā)現(xiàn)如“在某一段時(shí)間內(nèi),客戶購(gòu)買(mǎi)商品A,接著購(gòu)買(mǎi)商品B,而后購(gòu)買(mǎi)商品C,即序列A→B→C出頻度較高”之類的知識(shí)。由于網(wǎng)絡(luò)攻擊與時(shí)間變量緊密相關(guān),因此序列模式分析在關(guān)聯(lián)分析基礎(chǔ)上進(jìn)一步分析攻擊行為時(shí)間相關(guān)性。Lee利用關(guān)聯(lián)分析的數(shù)據(jù)結(jié)構(gòu)和庫(kù)函數(shù)實(shí)現(xiàn)序列模式分析。其序列模式的形式化描述為:已知事件數(shù)據(jù)庫(kù)D,其中每次交易T與時(shí)間戳關(guān)聯(lián),交易按照區(qū)間[t1,t2]順序從時(shí)間t1開(kāi)始到t2結(jié)束。對(duì)于D中項(xiàng)目集X,如果某區(qū)間包含X,而其子區(qū)間不包含X時(shí),稱此區(qū)間為X的最小出現(xiàn)區(qū)間。X的支持度定義為包括X的最小出現(xiàn)區(qū)間數(shù)目占D中記錄數(shù)目比例。其規(guī)則表示為X,Y→Z,[conficence,sup-port,window],式中X,Y,Z為D中項(xiàng)目集,規(guī)則支持度為sup-port(X∪Y∪Z),置信度為support(X∪Y∪Z)/support(X∪Y),每個(gè)出現(xiàn)的寬度必須小于窗口值。考慮到網(wǎng)絡(luò)或操作系統(tǒng)中審計(jì)數(shù)據(jù)流的特性,將入侵事件序列考慮為單序列,X、Y、Z滿足偏序關(guān)系。
(3)聚類分析的應(yīng)用
聚類分析指將物理或抽象對(duì)象的集合分組成為由類似的對(duì)象組成的多個(gè)類的分析過(guò)程。它是一種重要的人類行為。聚類分析的目標(biāo)就是在相似的基礎(chǔ)上收集數(shù)據(jù)來(lái)分類。聚類源于很多領(lǐng)域,包括數(shù)學(xué),計(jì)算機(jī)科學(xué),統(tǒng)計(jì)學(xué),生物學(xué)和經(jīng)濟(jì)學(xué)。在不同的應(yīng)用領(lǐng)域,很多聚類技術(shù)都得到了發(fā)展,這些技術(shù)方法被用作描述數(shù)據(jù),衡量不同數(shù)據(jù)源間的相似性,以及把數(shù)據(jù)源分類到不同的簇中。分類與聚類的區(qū)別在于分類是將分類規(guī)則應(yīng)用于數(shù)據(jù)對(duì)象;而聚類是發(fā)現(xiàn)隱含于混雜數(shù)據(jù)對(duì)象的分類規(guī)則。Portnoy提出基于聚類分析的入侵檢測(cè)算法,無(wú)監(jiān)督異常檢測(cè)算法,通過(guò)對(duì)未標(biāo)識(shí)數(shù)據(jù)進(jìn)行訓(xùn)練檢測(cè)入侵。算法設(shè)計(jì)基于兩個(gè)假設(shè):第一正常行為記錄數(shù)目遠(yuǎn)大于入侵行為記錄數(shù)目;第二入侵行為本質(zhì)上與正常行為不同。
(4)分類分析的應(yīng)用
數(shù)據(jù)分類分為2個(gè)過(guò)程:(1)選擇一個(gè)數(shù)據(jù)集,訓(xùn)練數(shù)據(jù)集的每個(gè)元組(訓(xùn)練樣本)的類標(biāo)號(hào)已知,例如,在入侵檢測(cè)中可以根據(jù)黑客入侵行為的危害程度將類標(biāo)號(hào)賦值為:正常、弱入侵、一般入侵、強(qiáng)入侵。建立一個(gè)模型,通過(guò)分析由屬性描述的訓(xùn)練數(shù)據(jù)庫(kù)元組來(lái)構(gòu)造模型。由于提供了每個(gè)訓(xùn)練樣本的類標(biāo)號(hào),所以該步也稱作為有指導(dǎo)的學(xué)習(xí)過(guò)程。通常,學(xué)習(xí)模型用分類規(guī)則、判定樹(shù)或數(shù)學(xué)公式的形式表示。(2)對(duì)模型進(jìn)行分類。首先評(píng)估模型(分類規(guī)則)的預(yù)測(cè)準(zhǔn)確率,對(duì)于每個(gè)測(cè)試樣本,將已知的類標(biāo)號(hào)與該樣本的類預(yù)測(cè)標(biāo)號(hào)進(jìn)行比較,模型在給定測(cè)試集上的準(zhǔn)確率是被模型分類的測(cè)試樣本的百分比。如果模型的準(zhǔn)確率可以被接受,就可用它來(lái)對(duì)類標(biāo)號(hào)未知的數(shù)據(jù)元組或?qū)ο筮M(jìn)行分類。
3.2 數(shù)據(jù)挖掘技術(shù)用于入侵檢測(cè)的優(yōu)點(diǎn)
(1)自適應(yīng)性好
傳統(tǒng)入侵檢測(cè)系統(tǒng)規(guī)則庫(kù)的建立需要一個(gè)特別的專家小組根據(jù)現(xiàn)有的攻擊發(fā)現(xiàn)其特征并開(kāi)發(fā)出它的檢測(cè)工具。然而當(dāng)一種攻擊是復(fù)雜的或者是跨越時(shí)間很長(zhǎng)時(shí),要一個(gè)系統(tǒng)總能很快地跟蹤入侵技術(shù)的發(fā)展是不可能的。而且針對(duì)每一種新的攻擊去更換系統(tǒng)的代價(jià)是很大的。由于應(yīng)用數(shù)據(jù)挖掘技術(shù)的異常檢測(cè)不基于信號(hào)匹配模式,并不就每一個(gè)特別的信號(hào)進(jìn)行檢測(cè),所以不存在上述問(wèn)題,因而表現(xiàn)出一定程度的實(shí)時(shí)性。
(2)誤警率低
現(xiàn)有的系統(tǒng)過(guò)度依賴于單純的信號(hào)匹配,它發(fā)出的警報(bào)可能遠(yuǎn)遠(yuǎn)多于實(shí)際的情況,在某種正常的工作中如果包含(這是很有可能的)這種信號(hào)的話,就必然產(chǎn)生誤警。采用數(shù)據(jù)挖掘的系統(tǒng)可以從警報(bào)發(fā)生的序列發(fā)現(xiàn)某種規(guī)律從而濾出那些正常行為產(chǎn)生的信號(hào)。數(shù)據(jù)挖掘方法還可以有效地剔除重復(fù)的攻擊數(shù)據(jù),因而具有較低的誤警率。
(3)漏報(bào)率低
當(dāng)一種新的以前從未出現(xiàn)過(guò)的攻擊方式出現(xiàn)時(shí),或者當(dāng)一種攻擊改變它的某些方式時(shí),傳統(tǒng)的系統(tǒng)很有可能就不會(huì)產(chǎn)生反應(yīng)。應(yīng)用數(shù)據(jù)挖掘技術(shù)的系統(tǒng)就可以很快地發(fā)現(xiàn)新的攻擊,在很大程度上減少了漏報(bào)的可能。
(4)減輕數(shù)據(jù)過(guò)載
對(duì)于傳統(tǒng)的入侵檢測(cè)系統(tǒng),另外一個(gè)需要考慮的問(wèn)題是不在于能否準(zhǔn)確有效地檢測(cè)出來(lái)自各方面的攻擊,而是需要多少的數(shù)據(jù)才能準(zhǔn)確地發(fā)現(xiàn)一個(gè)攻擊?,F(xiàn)在網(wǎng)絡(luò)上的數(shù)據(jù)流量越來(lái)越大,如果一個(gè)大的公司的整個(gè)網(wǎng)絡(luò)需要一個(gè)入侵檢測(cè)系統(tǒng)的話,它的網(wǎng)絡(luò)流量及每天產(chǎn)生的各種網(wǎng)絡(luò)記錄是非常龐大的。應(yīng)用數(shù)據(jù)挖掘技術(shù)可以很好地解決這個(gè)問(wèn)題,現(xiàn)有的數(shù)據(jù)挖掘算法通過(guò)發(fā)掘數(shù)據(jù)之間的關(guān)系,可以提供各個(gè)不同側(cè)面的數(shù)據(jù)特征,特別是可以將以前的結(jié)果和最新的數(shù)據(jù)加以綜合,這樣可以大大減少不必要的數(shù)據(jù)。
3.3 需要改進(jìn)的地方
數(shù)據(jù)挖掘用于入侵檢測(cè)也還有很多需要改進(jìn)的地方。比如:(1)把整個(gè)工作的過(guò)程自動(dòng)化,即從審計(jì)數(shù)據(jù)中自動(dòng)建立可以直接應(yīng)用的入侵檢測(cè)系統(tǒng)。這就需要對(duì)從審計(jì)數(shù)據(jù)中挖掘到的數(shù)據(jù)建立一種有效的編碼機(jī)制,把挖掘到的模式轉(zhuǎn)換成數(shù)字形式,以一種更加直觀的方式比較正常模式和攻擊模式,自動(dòng)產(chǎn)生攻擊模式。(2)提高系統(tǒng)的整體性能、準(zhǔn)確率及實(shí)時(shí)性和可用性,將科研成果應(yīng)用到實(shí)際環(huán)境中。(3)數(shù)據(jù)挖掘結(jié)果的可視化。把數(shù)據(jù)挖掘得到的結(jié)果用圖形表示出來(lái),可以更好地分析數(shù)據(jù)中隱藏的信息。(4)把入侵檢測(cè)系統(tǒng)與網(wǎng)絡(luò)管理系統(tǒng)結(jié)合起來(lái)。許多網(wǎng)絡(luò)異常行為通過(guò)網(wǎng)絡(luò)管理系統(tǒng)就可以過(guò)濾掉,在檢測(cè)到入侵時(shí),入侵檢測(cè)系統(tǒng)可以與網(wǎng)絡(luò)管理系統(tǒng)進(jìn)行通信,并采取及時(shí)的措施,如切斷連接、把受攻擊主機(jī)的服務(wù)重定向等。
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7002瀏覽量
88941 -
計(jì)算機(jī)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
3文章
337瀏覽量
22155 -
網(wǎng)絡(luò)系統(tǒng)
+關(guān)注
關(guān)注
0文章
85瀏覽量
25027
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論