2011年第2o卷第6期計算機系統應用
周楊(軍事經濟學院基礎部計算機教研室,武漢430035)
摘要:入侵檢測作為一種動態的網路安全技術,是計算機安全不可缺少的組成部分。目前的入侵檢測系統大
都採用模式匹配演算法,針對高速網路環境下此類系統的檢測引擎所面臨的效能瓶頸問題,介紹了基於協議分析的入侵檢測技術的實現原理,提出利用網路協議的高度規則性快速探測攻擊的方法,藉此減少虛警和誤判的可能性,並提高了網路入侵檢測系統的效能和效率。關鍵詞:入侵檢測:
協議分析;網路安全
zhou yang
入侵檢測是一一種計算機系統的安全防禦措施,它通過從計算機系統或計算機網路中的若干關鍵點收集資訊並對其進行分析,探測系統或網路中是否有違反安全策略的行為和遭到襲擊的跡象。從網路安全立體縱深、多層防禦的角度而言,入侵檢測作為一種積極
誤用檢測方法的使用越來越廣泛。而模式匹配是誤用
檢測技術中最常用的分析方法。
首次提出用模式匹配演算法檢測入侵的是博士,該方法具有分析速度快、誤報率較低等優點,其主要工作過程如下【】:
主動的動態安全技術,能夠實時應對內部、外部攻擊及誤操作,在網路系統受到危害之前攔截並響應入侵。
(1)從網路資料報頭開始與攻擊特徵進行比較;(2)若比較結果相同,則認為檢測到乙個可能的攻擊;
入侵檢測系統則能從很大程度上簡化管理員的工作,
保證網路的安全執行。
(3)若比較結果不同,則從網路資料報中下乙個位置重新進行比較;
(4)直到檢測到或網路資料報中的所有位元組匹配完畢,乙個攻擊特徵匹配結束:
(5)對於每個攻擊特徵,重複從(1)開始的比較:(6)直至所有攻擊特徵匹配完畢,對資料報的匹配
l基於模式匹配的入侵檢測系統的侷限性
入侵檢測通常使用兩種技術:異常檢測和誤用檢測。隨著對計算機系統弱點和攻擊手段的不斷收集與研究,入侵特徵化描述的方法越來越有效,這也使得
①收稿時間收到修改稿時間
應用技術161
計算機系統應用結束。
年第20卷第6期
圖1所示的是乙個基於資料報分析的網路入侵檢
由此可見,模式匹配將網路資料報看作無序、隨意的位元組流,不涉及網路資料報的內部結構,而只是機械化地對網路中傳輸的資料報逐一進行匹配。這種檢測方法有兩個最根本的缺陷:一是所需計算量大,
測系統的通用結構。首先,入侵檢測器收取所有的通訊流量;接著,對於收到的原始資料報,解析出每層協議頭部的各個域;然後,進入入侵檢測引擎,按照
基於特徵或基於異常的方法對資料報進行分析,如果發現攻擊特徵或者異常現象,則傳送乙個報告給決策
二是使用固定的特徵模式探測攻擊,只能探測出明確、唯一的攻擊特徵,即使有輕微變換的攻擊串都將被忽略。
模組;最後,決策模組根據報告的嚴重級別確定所需
隨著網路使用者的增加和多**應用的普及,網路流量越來越大,網路速度越來越快,現有實用的入侵採取的行動,並通知反應模組,由反應模組對發現的攻擊行為做出響應。常用的響應方法包括向控制台發
出警報、切斷資料報連線、通知防火牆隔離攻擊方等。
檢測系統大都基於特徵而採用模式匹配演算法,在高速網路環境下,這類系統的檢測引擎面臨著較為嚴重的
效能瓶頸:一是隨著網路資料流的高速化,檢測引擎需要分析和處理的資料報大大增加;二是伴隨網路攻
擊的多樣化和攻擊特徵數的不斷增加,檢測引擎需要
匹配的特徵模式在不斷增長,單個資料報的處理效率直線下降。這使得入侵檢測系統在應用於高速網路環境時出現嚴重的丟包現象,表現出較高的漏報率。因此,改善處理速度、解決資料報丟失等問題是提高網路入侵檢測系統效能和效率的關鍵。
2基於協議分析的入侵檢測技術原理
協議分析技術不同於傳統的模式匹配演算法,它能夠智慧型地「理解」協議,利用網路協議的高度規則性快速探測攻擊的存在,從而提高入侵檢測的效率。協議分析技術主要包括協議解碼與命令解析,它們能夠讓系統讀懂協議,明確在資料報的什麼位置獲取什麼內
容,並且能夠判斷這些內容的真實性。協議解碼的實質就是資料報從協議棧由底向上公升,同時去掉各層附
加報文首部的過程,系統沿著協議棧向上分析,不僅
可以使用當前層已知的協議資訊,還能夠排除本層及上層不屬於此協議結構的其他型別的攻擊;而解析器則是乙個命令解釋程式,它能夠讀取攻擊串及其所有
可能的變形,從而發掘其本質含義。入侵檢測引擎包
含多種不同的命令語法解析器,也因此能夠對不同高
層協議(如等)的使用者命令進行更為詳細的分析。
協議分析作為網路入侵檢測系統的基礎,其主要作用體現在:第一,協議分析為檢測引擎提供輸入數
據,是檢測引擎的基礎;第二,協議分析針對資料報的上下文進行分析,直接提高了檢測的有效性;第三,在進行應用層協議分析時,字串的匹配被定位到具體字段,這無疑是提高字串匹配效能的乙個有效手
段 。162應用技術反應t
決策t檢溯gll肇t}
脅議分沂圖l網路入侵檢測通用結構圖
3協議分析的具體過程
tcp協議和
協議是網路通訊的核心協議,在
rfc的0791[31和0793[41文件中,分別定義了tcp資料報和ii)資料報的格式。正是因為這種格式定義與網路
的結構和型別無關,而只與協議相關,因此使得協議分析具有很廣泛的適用性。根據乙太網幀結構的定義,
在第l3位元組處包含了兩個位元組的第三層協議標識:0800為ii)協議,0806為arp協議,8138則為novell
協議。在資料報的格式定義中,第1o位元組為第四層協議標識:tcp為06,udp為11,icmp為01;而tcp資料報的第3、4位元組為應用層協議標識,即
埠號:80為http協議,2l為ftp協議,23為telnet協議。圖2描述了協議分析的基本流程。
這裡結合乙個例項說明協議分析的主要過程:
對於網路資料報
首先,根據乙太網協議規則,在第l3位元組處應有2個
位元組的第三層網路層協議標識,這裡得知其值為「0800」,可見乙太網幀資料區域中攜帶的是ip協議;接著,根據ip協議結構,在第24位元組處應有1個位元組的第四層傳輸協議標識,這裡得知其值為「o6」,可見ip幀中資料區域攜帶的是tcp協議;最後,根據
tcp協議的第35位元組處應有2個位元組的應用層協議標
2011年第2o卷第6期計算機系統應用
識,即「埠號」,這裡得知其值為「0050」,轉換為十可以根據ii)協議格式自行定義
進製的80,得知其為乙個http訪問。
以太舟協議解析il1
^rp梅議解析
ip鉗議解析
iiai ̄p協議群析ii
liicmp協議解析
1℃p協議解析
udp協議解析i『
llilftrp擲議解析fi協議解折娜擠議解析
圖2協議分析基本流程圖
將獲得的此特徵值與特徵庫內容進行比較,若與
特徵吻合,則訪問被判定為攻擊行為。由此可見,協
議分析的過程就是一條從根到某個節點或葉子的路徑,而每個葉子、節點則是某一種攻擊型別的分析機。分析機的功能在於分析某一特定協議的資料,判斷其是否具有攻擊的可能性。每個分析機的資料結構中都
包含協議名稱、協議代號及該協議對應的攻擊檢測函式等資訊。協議名稱是該協議的唯一標誌,而協議代
號則是為了提高分析速度所使用的編號。一般情況下,
分析機應盡可能地靠近葉子結點,因為越靠近樹根部分的分析機,呼叫的次數越多,而根部附近聚集過多的分析機會嚴重影響系統的效能。為了提高檢測的精
確度,可以在樹中新增自定義的協議結點,以此來細
化分析資料。葉子節點上的協議型別劃分得越細,分
析機的效率越高。
4基於協議分析的檢測模組設計
4.i協議分析的演算法實現
資料報捕獲函式庫作為獨立的api函式介面,用於對使用者層次的資料報進行捕
獲,並為底層網路監控程式設計提供乙個易於移植的應用框架,這些底層網路應用包括資料收集、安全監控和網路除錯等。利用libpcap提供的庫函式進行資料採集,通過函式設定網絡卡的狀態為混雜模
式,可以提供從鏈路層直接捕獲資料報的功能,並且能夠設定資料報的過濾器以捕獲指定的資料【5】。
在協議分析過程中,主要實現對ip資料報內容的
分析,具體過程如下:
表示**獲資料報的頭資訊表示**獲資料報的具體內容
//協議變數,一般
判斷源ip是否為本機ip
oak.cast)
,/判斷smurf和land攻擊…..
//smurf攻擊分析程式
else…..
//land攻擊程式
)else
{case6:
//tcp協議內容分析
tcp-head
,/獲取源埠
=ntohs
獲取目標埠
fcase80:…..
//ityrp協議分析程式case21:…一
//ftp協議分析程式case23:….
.//telnet協議分析程式
case25:…一
//smtp協議分析程式l
case 17:….
.//udp協議內容分析
case01:….
.mp協議內容分析】))
需要說明的是,在演算法的實現上並不一定侷限於
上述方法,可以針對不同的協議定義不同的函式,而在主函式中利用函式迴圈捕獲網路資料報,再逐層呼叫協議分析函式即可。4.2檢測模組的具體實現
入侵檢測模組從協議分析模組獲取剛**獲的資料報資訊,而這些資訊協議的解析模組均存放在全域性變數中。利用全域性變數將這些資訊傳遞到檢測模組中,
系統便獲得了網路捕獲資料報的相關資訊。
應用技術163
計算機系統應用年第2o卷第6期
檢測模組所做的工作就是對規則進行匹配,即判的協議值與真實的協議變數值是否相等
斷規則中事件定義的真假。由在規則的入侵特徵定
義中,入侵表示式均採用「&」連線,因此,當乙個入侵
預設返回0
特徵表示式為假時,事件定義也為假,此時的資料報資訊與此條入侵規則不相匹配,於是資料報便開始匹
配下一規則。
需要注意的是,若規則特徵定義中用「&」連線
的規則表示式全為真時,資料報才匹配整條規則;反
之,只要有乙個規則表示式為假,資料報將不匹配規
則。通常,判斷事件定義中一條表示式的真假用函式來實現,根據協議變數的值確定
捕獲的資料報所屬的協議型別,從而選擇相應協議的
規則檔案進行匹配。這裡,假設捕獲的資料報足ip資料報,因此需要匹配ip規則庫中的規則函式的實現過程如下:
f//判斷事件定義中乙個事件表示式的真假
value;
number_
將變數型別轉換為字
符型protocol_——
獲得協議變數的值
一1)如果協議變數為.1,退出
f/當符號為「=」時
斷規則中
的協議值與真實的協議變數值是否相等
return1;)
f,/當符號為「 」時
斷規則中的協議值與真實的協議變數值是否相等
f,/當符號為「>」時
斷規則中
的協議值與真實的協議變數值是否相等
return1:)
f/當符號為「<」
斷規貝0中
164應用技術
5結語入侵檢測作為一種積極主動的防禦技術,與防火牆、漏洞掃瞄等安全技術共同形成乙個動態的安全體
系。基於協議分析的入侵檢測系統作為當前較為先進的入侵檢測系統,具有檢測速度快、系統消耗低、誤報率低等優點,協議分析技術將成為網路環境下入侵檢測的主流技術。
目前對於提高模式匹配效率及協議分析效能的研究還在繼續,模式匹配技術與協議分析技術作為入侵
檢測系統中資料分析模組的重要技術,兩者的結合將
增加檢測的可靠性,提高分析速度,減少虛警和誤判的可能性,從而突破網路高速發展帶來的效能瓶頸。
因此,進一步要做的工作是對網路協議、計算機系統漏洞和入侵行為進行更為詳細的研究,以便更準確地定義入侵特徵,繼續完善檢測系統的功能,並力爭開發出基於協議分析的通用入侵檢測系統。
參考文獻
2唐正軍,李建華.入侵檢測技術.北京:清華大學出版社,
5楊小平,蘇靜.基於協議分析的入侵檢測技術研究.計算機應用研究一l10.
基於狀態協議分析技術的入侵檢測研究
摘要 計算機和網際網路技術正在改變人類社會的面貌,與之伴隨而來的是資訊和網路安全的問題。入侵檢測是一種積極主動防禦的網路技術,它通過對系統或網路中的若干關鍵點的資訊進行檢測分析,從而發現是否有違反安全策略的行為,提供了對內部供給 對外部攻擊和誤操作的實時保護,在網路系統受到危害之前攔截和響應入侵。按...
遺傳演算法在自適應入侵檢測系統中的應用
摘要提出了一種基於智慧型體技術的自適應入侵檢測系統體系結構,將智慧型體技術和自適應模型生成技術應用於入侵檢測系統中。智慧型體技術的應用解決了傳統的集中式入侵檢測系統的弊病,將任務處理和資料分布到網路各個結點上,通過各種智慧型體來協作完成入侵檢測任務,充分利用網路和主機資源。而且智慧型體與自適應模型生...
XML技術在計量檢測管理系統中的應用分析
摘要計量檢測的過程是多個部門多個人之間的共同合作,原始的資料的記錄和檢測室整個過程中的根本,也是整個檢測部門最後所得到的東西,計量檢測部門是社會公用的計量標準單位,它的業務範圍非常廣泛,涉及的計量器具非常之多,所以,計量檢測資訊要實現多個部門的共同合作是非常難的,所以本文就xml技術在計量檢測中的各...