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