汪世義
(巢湖學院信息工程學院,安徽 巢湖 238000)
基于機器學習的入侵檢測方法研究
汪世義
(巢湖學院信息工程學院,安徽 巢湖 238000)
入侵檢測技術是幾年來快速發展的一種動態的網絡安全技術,應用機器學習方法處理入侵檢測問題,是把它對應成一個模式識別與分類問題來處理的。因此討論幾種機器學習的分類方法的原理,為下一步把機器學習算法應用到入侵檢測系統中提供了相關的思路與方法。
網絡安全;機器學習;入侵檢測
網絡安全防護體系中,入侵檢測是一種動態的主動防護技術,能在網絡及其系統受到攻擊時提供實時安全保護,這些攻擊行為包括內部或外部攻擊行為以及誤操作,入侵檢測技術的應用能在主機或網絡系統受到危害之前對相應入侵行為進行攔截并作出相應處理,目前把機器學習算法應用在入侵檢測技術中是一個研究的熱點問題。
機器學習是從大量的和數據中自動或半自動地尋找模式的過程,而且這個模式必須是有用的;而學習可理解為:當事物以令其自身在將來表現更好為標準來改變其行為時,它學到了東西。作為一個快速發展的新的交叉學科,它與多學科聯系緊密,成為人工智能的一個重要分支。把數據挖掘的相關理論應用到入侵檢測系統中,是基于機器學習理論的入侵檢測技術和方法的重要體現。這個過程主要包括三個方面:一是對從主機或網絡獲取的入侵或正常的特征數據進行特征提取或行為分析;二是對獲取的不同類別的數據進行學習;三是利用入侵檢測決策支持系統對獲取的數據進行深層次地分析與判斷。在這個過程中,選用的機器學習算法主要是對不同的分類的特征數據進行了自適應調整。
從本質上來說,機器學習方法在入侵檢測問題中的主要應用,是把它對應成一個模式識別與分類的問題來進行處理,主要是對系統的正常行為和異常行為作出分類,其中分析的數據包括網絡流量特征和相關的主機審計信息記錄[1-3]。因此下面討論幾種機器學習的分類方法在入侵檢測中的應用,是一項很有意義的工作。

樸素貝葉斯分類器是產生概率估計來替代類預測的。對于每個類值,它們都是估計某個實例用于屬于這個類的概率。前提是給定其他屬性的值,所估計的是類屬性的條件概率分布。Bayes網絡是變量集合的連接概率分布的圖形模型,可用來挖掘和發現數據間的內在關系[4]。
P中的每一元素為數據變量Xi的條件概率密度表示為p(Xi|Pai,ζ)。則由概率的鏈規則得

這樣對于任一數據變量Xi,一定可以找到一個與Xi條件都不獨立的最小子集使得

此時,πi中的變量就為Bayes網絡中的Xi的父結點,所以

由(S,P)就構成了一個Bayes網絡。
2.1.1 Bayes網絡的學習
Bayes網絡的學習的過程[4]就是建立一種學習算法,主要是定義兩個組成部分:一個是基于某個數據集的網絡進行評估的評估函數,另一個是在所有的可能的網絡空間中搜索的搜索方法。Bayes網絡的學習是要找出一個網絡模型,數據庫中各數據變量之間的依賴關系能在這個模型中能夠最理想地表現。例如對一個數據變量集記為,對于每一個Xi,它的值域為。D為數據樣本,其中的元素Ci則稱為一個事例。Dl為l-1個事例集。數據樣本D由Bayes網絡結構S所產生的事件記為Sh。Bayes網絡的學習過程也就是找出后驗概率p(Sh|D,ζ)最大的Bayes網絡結構S的過程,主要是根據數據樣本D和先驗知識ζ來實現的。由Bayes概率公式得:

樣本D的先驗概率p(D|ζ)不依賴于網絡結構S,所以只需找出聯合概率p(Sh,D|ζ)最大的網絡結構S。記先驗概率的參數變量:


2.1.2 貝葉斯分類器
貝葉斯分類算法是一類利用概率統計知識進行分類的算法,如NB(Na?ve Bayes)算法,這些算法是主要利用Bayes定理來預測一個未知類別的樣本屬于各個類別的可能性即概率大小。選擇其中可能性最大的一個類別作為該樣本的類別歸屬。換句話說,貝葉斯分類器就是利用貝葉斯公式需要很強的獨立性假設為前提,由對象的先驗概率得到對象的后驗概率,然后以最大后驗概率確定對象所屬的類別,然而這種獨立性的假設在實際情況中經常是不成立的,因而對其分類準確性產生影響,因此在應用中如何設計降低獨立性假設的Bayes分類算法是值得研究的問題。

決策樹從某種意義上來說相對于是對原決策表規則集的一個樹型表示,創建一個規則對應其中的每個葉子結點,而每個分割都成為一條規則中的一個條件,所以只要采用某種搜索規則對生成的決策樹進行搜索,就可以得到一個規則集。決策樹歸納學習算法中ID3算法通過對一個樣例集使用屬性信息熵增益進行學習生成一棵判定樹[4]。從根結點開始,在每個結點處選擇一個屬性C,需要檢查每個記錄上對應于C的屬性值計算剩余熵,時間復雜度和決策樹中葉結點的最大數目、屬性個數和屬性最大可能的屬性值個數相關,基于剩余熵的屬性排序策略使生成的決策樹越小越好在ID3算法中得到應用。
定義1 如果根據一個屬性把一個元素集T劃分為不相交子集合C1,C2,…,Ck,那么Info(T)=I(P)是識別T中元素的類屬所需要的信息,其中P是劃分(C1,C2,…,Ck)的概率分布

定義2 如果先依據非分類屬性X將T劃分成互不相交的子樹T1,T2,…,Tn,那么識別Ti中元素的類屬所需要的信息的權平均就成為T中元素的類屬所需要的信息。權平均表示為:

定義3 屬性X信息墑增益Gain(X,T)為識別T中元素的類屬所需要的信息與獲取屬性X值后識別T中元素的類屬所需要的信息之差,記為:

ID3算法以屬性的信息墑增益進行決策樹新結點的構造,采用遞歸的方法對全部候選屬性進行比較,構建決策樹的過程中,選擇從根結點到當前結點未被選擇而且屬性信息墑增益最大的結點作為新結。這種決策樹中規則相對于粗糙集算法生成的規則來說,由于搜索和匹配路徑的唯一性,算法效率較高,但漸近式學習的問題成為這一算法在應用中的問題之一。
首先討論了入侵檢測作為一種快速發展的動態網絡安全技術,提出了把機器學習算法應用在入侵檢測中進行分類,是把入侵檢測對應成一個模式識別問題來進行處理的;然后主要詳細討論和分析了Bayes網絡的學習和貝葉斯分類算法以及決策樹學習算法作為分類器的基本原理,為后繼的研究進一步把機器學習方法更好地應用在入侵檢測中做了一定的前期準備工作。
[1]張義榮,肖順平,鮮明,等.基于機器學習的入侵檢測技術概述[J].計算機工程與應用,2006,(2)∶7-10.
[2]楊善林,倪志偉.機器學習與智能決策支持系統[M].北京∶科學出版社,2004.
[3]朱芳芳,李志華,王士同.改進的WSVM入侵檢測方法[J].計算機仿真,2008,(11):157-159.
[4]董琳,邱泉,于曉峰,等.數據挖掘實用機器學習技術[M].北京∶機械工業出版社,2006.
A RESEARCH OF INTRUSION DETECTION METHOD BASED ON MACHINE LEARNING
WANG Shi-yi
(School of Information Engineering,Chaohu College,Chaohu Anhui 238000)
Intrusion detection is a kind of dynamic network security technology which has developed quickly in recent years.Appling the machine learning methods to the intrusion detection is a way of treating it as a pattern recognition and classification problem to deal with.Therefore,discussing the principles of classification of several machine learning methods can provide relevant ideas and methods for the following application of machine learning algorithm to the intrusion detection.
network security;machine learning;intrusion detection
TP393
B
1672-2868(2015)06-0025-03
責任編輯:陳 侃
2015-07-11
安徽省高校省級自然科學研究項目(項目編號:KJ2012Z266);安徽省省級教學研究項目(項目編號:2014jyxm331);巢湖學院博士科研啟動基金資助項目
汪世義(1974-),男,安徽桐城人。巢湖學院信息工程學院,副教授,博士。研究方向:模式識別與智能計算。