摘要:本文提出了一種基于模糊支持向量機的網絡入侵檢測方法。通過在樣本中引入模糊隸屬度,來減小噪聲數據和孤立點的影響。根據網絡入侵檢測的特征,選擇合適的核函數,構建了適合于網絡入侵檢測的模糊支持向量機分類器。實驗表明這種分類器應用于網絡入侵檢測是可行的,有效的。
關鍵詞:模糊支持向量機;FSVM;入侵檢測
1、基于模糊支持向量機的入侵檢測模型
本文的入侵檢測系統模型,是基于現實網絡中的實際情況建立的。在現實的環境中,除去需要采集實驗數據,大多數入侵檢測系統都是放置在防火墻的后面,而當在防火墻上采用了大量的安全保護措施后,在其后方獲取的數據大部分屬于正常的TCP連接。本文的入侵檢測系統模型(如圖l所示)就是針對這種情況設計的。
該模型的處理流程為:首先由數據采集模塊捕獲網絡中的數據流,從得到的網絡數據流中分析出網絡連接記錄,并提取出每條網絡連接的特征信息得到TCP/IP數據包;將網絡連接的特征信息由數據預處理模塊進行數據預處理,得到模糊支持向量機需要的輸入向量格式;如果模糊支持向量機分類器處于訓練狀態,則訓練分類器;如果支持向量機分類器處于預測狀態,則由分類器對輸入向量進行預測。預測后將結果送決策響應單元,執行相應的響應操作。
2、數據采集模塊
數據采集。即使用某種數據包嗅探器如TCPDUMP從網絡中捕獲當前網絡中的數據包信息,并作簡要的協議分析,以統一的格式將網絡數據包的包頭中的各段信息顯示出來。TCPDUMP能監視和采集網絡界面上所有流過的數據包,它支持針對網絡層、協議、主機、網絡或端口的過濾,并提供AND,OR,NOT等邏輯語句來幫助去掉無用的信息。我們將TCPDIJMP放在網關上。捕獲通過網關的網絡包的包頭信息。由于TCPDUMP僅僅只是一個抓包工具,用它收集的網絡數據不能完全滿足我們的需要,因此需要對抓到的包進行預處理以得到一些有用的特征。先將收集到的二進制TCPDUMP輸出文件轉化為ASCII碼的包數據,每一行都包含一個網絡包的信息,并按照包的時間戮排序。然后,使用一些屬性特征將包數據轉換為連接記錄。
3、特征提取模塊
剔除與檢測結果無關的屬性能夠提高檢側的效率,有助于提高入侵檢測系統的性能,在有的情況下還能提高檢測的準確性。特征過濾的前提可以描述為:
(1)對于輸入向量x=([x]n,[x]n,…,[x]n),每個分量的重要性都不相同,有的屬于“噪聲”,有的含有重要信息;
(2)缺乏明確的輸入x和輸出Y間的關系模型y=f(x),因此無法使用數學的方法直接推導出每個成員x與輸出y之間的關系;
(3)存在一些經驗數據可以用來估計每個屬性[x]i對于y的影響。
由于以上因素,一個可選的方法是利用經驗數據來估計每個屬性對于檢測結果的貢獻,Sung提出了一種方法:每次只剔除一個屬性,保留其它全部屬性,觀察檢測結果的變化,從而確定該屬性的貢獻。特征過濾的過程如下:
(1)對于具有全部屬性的數據集x,記錄測試結果;
(2)剔除x的第一個屬性,記錄測試結果:
(3)剔除x的第i個屬性,記錄測試結果;
(4)重復過程(3),直到剔除最后一個屬性,并記錄測試結果。
4、FSVM的分類過程
模糊支持向量機的分類過程與支持向量機的分類過程類似,唯—不同的是在模糊支持向量機的訓練過程中引入了模糊隸屬度,即事先為每個樣本xi生成一個模糊隸屬度si,把第類和剩余樣本分開。整個分類過程分成如下幾步:
Step1:根據給定的樣本計算類中心點xc和類半徑r;
Step2:計算每個樣本的模糊隸屬度;
step3:置Lagrange乘子x初值,得到Lagrange乘子:x1,x2,…,xn;
Step4:決策函數對輸入樣本進行分類;
5、實驗與分析
我們選用了1999年DARPA~KDD(知識發現與數據挖掘)競賽提供的一個異常檢測的標準數據集,該數據集的收集是在一個模擬的網絡環境中進行的,該環境模擬了一個典型的美國空軍局域網,林肯實驗室從中獲得了9個星期的原始tcpdump數據,其中取前7個星期的原始數據作為訓練集,包括約4,900,000條網絡連接記錄;后兩個星期的數據作為測試集,大約包含了2,000,000個網絡連接。
①實驗中,我們分別選取“rbf”核函數,“poly”核函數,“linear”核函數,“fourier”核函數,“sigmoid”核函數,實驗結果如表5-1:
從結果中我們看到,不同的核函數對分類結果影響還是非常大的。傅里葉核函數識別率最低,而且消耗的時間也是最多,而徑向基核函數(RBF)的識別率最高,消耗的時間也相對適中,此外線性核函數的檢測率也是非常好的,而且時間也較小,只是線性和對與非線性問題的識別效果可能會差一些。
②利用現有的SVMT具箱分類器與FSVM分類器進行對比實驗,比較它們的性能。在Matlab中導入SVM工具箱路徑,本文選取相同的核函數并載入相同的實驗數據集進行實驗,通過選取相同的數據集,選擇相同的核函數一徑向基(RBF)核函數,通過比較不同的樣本比例,將傳統SVM分類器和FSVM分類器分類效果進行對比,得到對比曲線,實驗結果如圖所示:從分類效果來看,FSVM要bLSVM的分類效果要好一些,但是從所花費的時間上來看,由于FSVM分類之前,需要對每個樣本計算模糊隸屬度,模糊支持向量機訓練的時間要比支持向量機的所花費的時間要高的多。
6、小結
通過選取不同比例的訓練樣本進行實驗,主要是量化數據集中的字符數據和非整形數據,對實驗的數據進行了特征提取,得到更簡化的數據。證明了FVSM具有良好的泛化能力,并與SVM進行對比實驗,從識別率上看,FSVM具有較好的效果,但其所花費的時間也較長。