(國防科學技術大學 計算機學院, 長沙 410073)
摘 要:
研究了在高速網絡環境下的入侵防御系統設計與實現。分流系統本身缺乏有效的檢測方法,不能對數據流量進行深層次的分析,所以其漏檢率較高,應用范圍有限。提出了一種用于分流系統的威脅排序方法,運用層次分析法對數據包的威脅程度進行排序,有效地解決了分流系統的漏檢問題,并實現了一個完整的分流入侵防御系統的各模塊設計,對其效能進行了初步評估。
關鍵詞:威脅排序; 入侵防御系統; 分流
中圖分類號:TP393.08 文獻標志碼:A
文章編號:1001-3695(2009)02-0723-03
Research of shunt IPS based on threat ranking
CHEN Zheng-tao, JIN Shi-yao
(School of Computer, National University of Defense Technology, Changsha 410073, China)
Abstract: Inline traffic analysis for intrusion prevention become more difficult as the high speed data rates of modern networks. Jose implemented a prototype shunt hardware design, and this model was valuable for improving the efficiency of intrusion detection, Based on this model, this paper proposed a new shunt model connecting with intrusion prevention system by the theory of threat ranking,and put forward the design of every part,then evaluated the system for a rudimentary work.
Key words:threat ranking; IPS(intrusion prevention system); shunt
入侵防御系統(intrusion prevention system, IPS)的嵌入、實時要求使其在當前的網絡環境下越來越難以實現。隨著網絡帶寬的進一步增大,單純靠使用更快、更強的硬件對信息流量進行檢測已經滿足不了用戶的需求,這也極大地限制了IPS的發展。然而研究發現,網絡上絕大多數的通信流量是正常流量,只有極少數惡意流量能夠對計算機系統產生威脅,以往利用檢測引擎對所有通信流量進行深入分析的方式顯然是對資源的一種極大浪費。分流(shunt)[1~4]技術為提高IPS檢測效率提供了一種行之有效的方法,在通信流量進入安全檢測引擎之前先對其進行一次快速篩選,在不明顯影響安全性能的情況下大幅提高安全檢測引擎捕捉惡意流量的效率,從而提高IPS整體工作性能,消除IPS性能瓶頸。盡管如此,分流容易帶來漏檢率的提高,會影響系統的整體安全性能,這在一定程度上抵消了分流所帶來的好處。如何減少分流帶來的不良影響成為其與IPS結合的關鍵。在本文中引用了威脅度的概念,威脅度指的是通信流量對系統安全的威脅程度。威脅度評估在軍事領域有十分深入的研究,本文將威脅排序算法引入IPS有助于解決分流的不足。基于此本文提出了一種新的分流方法,使分流IPS實現更加簡單有效。
1 分流結構
Jose等人[1]介紹了其分流體系結構如圖1所示。該結構由分流器和分析引擎構成,分流器中包含三個表,表中包含IP相關的信息。在對表進行快速匹配后,有三種處理方式,即將數據丟棄、直接通過和進入分析引擎進行分析。分析完成后將數據要么丟棄,要么通過,分析引擎控制對分流器中的表進行更新。這種結構可以對數據進行預先分流,提高分析引擎的檢測效率,增強信息處理能力,但是簡單的數據包頭檢測準確率不高,只能用于對安全要求不高的環境下。
2 威脅排序分流結構
本文要研究的系統是能夠滿足大流量環境下的嵌入式入侵檢測系統。在原有分流結構的基礎上,依據入侵威脅度的量化算法,本文提出了威脅區間的概念。在原有的入侵檢測體系上做了層次上的拓展,對數據流進行了更細致的分類,提供了一種新的分流檢測模型,從而彌補了原有分流系統的不足,提高了檢測的效率和準確率。
2.1 工作原理
本系統分為兩大部分,即入侵防御系統和威脅裁決入侵防御系統。前者檢測精度高、速度慢;后者檢測速度快、檢測精確度不是很高。兩者結合實現了一個速度快、精度較高的檢測系統。該系統有兩種工作模式:a)普通工作模式,即數據包進入正常檢測系統檢測處理;b)威脅度裁決模式。兩個模塊同時工作,兩種模式的切換由入侵檢測系統的能力閾值觸發。其結構圖如圖2所示。
系統的數據流程為:數據流進入網絡設備后,首先進入網絡接納模塊,若入侵檢測能力閾值尚未達到,此時入侵檢測系統并未成為系統瓶頸,則將數據送入入侵檢測系統處理,以保證最大的安全性能;若入侵檢測能力閾值已到,說明入侵檢測的能力即將達到飽和狀態,則系統進入威脅裁決模式。數據先送到入侵裁決模塊,然后入侵裁決模塊根據入侵數據庫建立的IP表對數據包IP頭進行匹配,從而決定數據是丟棄、通過,還是直接送往正常入侵檢測模塊進行檢測。送往入侵檢測模塊的數據檢測完后進行相應的響應,與之相關的特征信息被存入入侵信息數據庫中用于動態更新威脅裁決模塊中的IP表。
2. 2 詳細設計
在設計中保持了原有IPS模塊,即現有系統的技術可以完全移植到本系統中。在此基礎上,本系統增加的模塊功能體現在以下三個部分中。
1)網絡接納模塊
在該模塊中主要實現以下功能:對數據流量進行判斷分析,在達到事先設定的IPS檢測能力閾值時,將數據流導入到數據威脅裁決模塊。閾值由入侵防御系統的最大檢測能力決定。該模塊保證了入侵防御系統的利用率,使入侵檢測引擎處于高負荷狀態,這種設計提高了系統整體的安全性能。
2)威脅裁決模塊
數據威脅裁定模塊需要對數據包進行快速甄別,它只對數據包的IP包頭信息進行匹配。此模塊設計了三張表,即正常IP表、可疑IP表和惡意IP表。這三張表保存的都是IP信息,分別對應了三種操作方式,即通過、導入IPS和丟棄。在匹配過程中,只要發現能夠匹配的項就直接執行操作,無須繼續遍歷完整個列表,如果沒有發現可以匹配的項,則默認其為可疑數據包,送入檢測引擎進行檢測。
要建立上述的三張表,需要引入兩個概念,即威脅度和威脅區間。威脅度表明的是一個數據包可能對系統產生的威脅程度,它可以分為幾個等級或者一個連續的值域;威脅區間就是在威脅度的值域內選擇的一個區間范圍,它的定義主要是為了幫助確定分流的標準。
要得到一個合理的威脅度評判標準十分復雜,需要使用層次分析法對各個要素的權值進行分析。層次分析法(analytic hierarchy process,AHP)是將與決策總是有關的元素分解成目標、準則、方案等層次,在此基礎上進行定性和定量分析的決策方法。該方法是美國運籌學家匹茨堡大學教授薩蒂于20世紀70年代初提出的一種層次權重決策分析方法[4],這種方法的特點是在對復雜的決策問題的本質、影響因素及其內在關系等進行深入分析的基礎上,利用較少的定量信息使決策的思維過程數學化,從而為多目標、多準則或無結構特性的復雜決策問題提供簡便的決策方法。尤其適合于對決策結果難以直接準確計量的場合。層次分析法[5~7]的步驟如下:
a)通過對系統的深刻認識,確定該系統的總目標,弄清規劃決策所涉及的范圍、所要采取的措施方案和政策、實現目標的準則、策略和各種約束條件等,廣泛地收集信息。
b)建立一個多層次的遞階結構,按目標的不同、實現功能的差異將系統分為幾個等級層次。
c)確定以上遞階結構中相鄰層次元素間相關程度。通過構造比較判斷矩陣及矩陣運算的數學方法,確定對于上一層次的某個元素而言,本層次中與其相關元素的重要性排序——相對權值。
d)計算各層元素對系統目標的合成權重,進行總排序,以確定遞階結構圖中最底層各個元素的總目標中的重要程度。
e)根據分析計算結果,考慮相應的決策。
下面將結合層次分析方法對威脅度排序問題進行分析,步驟如下:
a)確定層次關系。
要評估一種攻擊對系統的威脅度,其中要素應該包含出現頻率f和所能造成的危害程度w兩部分。根據攻擊造成的結果,危害程度w的權值又將受到四個因素的影響,即危害系統穩定性w1、危害系統數據安全w2、影響系統正常功能w3和降低系統性能w4。影響關系如圖3所示。
b)確定各層比較矩陣。
根據上述模型構造了威脅程度的四個子規則的比較矩陣。其中aij表示第i個元素和第j個元素的重要性比較值。其重要性分為九個等級,1為同樣重要,9為i比j極為重要。要給出比較合理的元素間的重要性比較結果需要反復評測。其比較矩陣形式如下:
1a12a13a14
1/a121a23a24
1/a131/a231a34
1/a141/a241/a341
對矩陣進行一致性檢驗,若其具有滿意的一致性,則求出該矩陣的最大特征值及其特征向量,將該特征向量標準化后即可得到權向量即各元素相對上一層的重要性。其他層次的比較矩陣均與此矩陣結構相似。至于具體如何對各種攻擊方式的重要程度進行評估,將在其他文章中對攻擊行為進行深入研究,本文不再詳細討論。
c)計算各層權值。
這里假設四個IP分別代表了四種目標側重的攻擊。通過逐層向上的方法,首先求出各IP對于系統穩定性、數據安全性、功能完全性、系統高效性四個子規則的權向量wx1、wx2、wx3、wx4,再由此得到四個子規則相對危害程度的權向量wy1以及各IP對于頻率規則的權向量wy2,最后得出威脅程度和頻率對于目標層的權向量wz。
得到各層權向量之后,由下向上求出第j個IP的累加權值wz(∑4i=1wy1(i)wxi(j)+wy2(j))。這個結果用于對實驗IP的威脅度進行排序,權值越大的代表威脅度越大。為了將排序結果進行劃分,需要在排序結果中取出一段威脅區間,威脅區間的兩個端點將IP序列分成正常、可疑、惡意三個部分,分別歸入到三個表中。
對于威脅區間端點的確定,可以采用標的法,即使用一臺測試機對主機進行安全范圍內試探性的攻擊。將測試機IP加入排序,然后將其在隊列中所處的位置作為威脅區間的一個端點,威脅度小于測試機的IP導入到正常IP表中。關于威脅區間的另一個端點,應當選取這樣一個點,這個點使得威脅區間內的IP總流量能夠使IPS處于滿負荷的工作狀態卻不致產生數據丟失,威脅度大于這個端點的視其為惡意流量將其丟棄。
表格的管理采用動態緩存的方法,在系統運行的同時每隔一小段時間便進行更新。對于未知的IP,系統默認將其歸入到可疑IP中,這樣做有利于威脅排序的合理性,即被認為可信的或不可信的流量在經過一段時間后會被送入到IPS中進行檢測,這樣就意味著沒有永遠可信或惡意的IP存在。
3)入侵數據庫模塊
該模塊用于保存檢測引擎的數據結果,以用于建立和維護入侵威脅度所需信息。其中的內容分為兩部分:a)入侵信息,包含IP地址、入侵方式、入侵的危險等級、頻率(這里可以依據IPS工具自身的日志分析系統);b)正常訪問的信息,只包含IP和頻率。每產生一次正常訪問,該IP的威脅度便有一定程度的降低。
3 系統評測
本文研究的目標是消除IPS瓶頸,提高分流系統的可靠性和適用性。下面在理論上簡單驗證系統的性能。
假設服務器性能是IPS檢測性能的k倍,原有IPS檢測漏報率是m,威脅裁決系統的錯誤率為n,其值可以隨威脅區間改變。
a)當網絡流量遠大于服務器處理能力時,
在原有IPS工作的情況下,服務器的利用率為1/k,漏報率為m。在本系統工作以后服務器利用率為100%,漏報率在此處隨著威脅區間和網絡流量的變化而變化。在網絡流量不斷變大的同時,威脅區間向威脅度減小的方向移動,同時漏報率不斷降低,最后達到極限值m/k。
b)當網絡流量低于服務器能力而高于IPS處理能力時,
在原有IPS下,服務器利用率為1/k,漏報率為m。在本系統下工作的服務器性能利用率和具體流量及威脅區間有關,該值大于1/k;漏報率和威脅區間及威脅評測系統產生的錯誤率有關,在n>m的情況下,其值最大不超過n#8226;(k-1)/k+m/k。
c)當網絡流量低于IPS處理能力時,
本系統工作于正常模式下,與原有IPS性能相同。
由上述情況可知,本系統可以有效提高服務器的利用率,同時在大流量情況下改善入侵檢測性能,減少漏報率。在部分情況下,本系統可能會導致漏報率提高,但是其漏報率是可控制的,通過改進算法減少威脅評測系統的錯誤率n和調整威脅區間,可對漏報率進行調整,將其控制在可接受的范圍內。
4 結束語
加入了分流系統以后,服務器的性能不再受縛于IPS的瓶頸,而分流系統的有效性很大程度上取決于分流的標準。如果漏報率太大,分流系統就無法適用于對安全性有著較高要求的場合。本文將威脅排序方法應用于分流技術上,提高了分流系統的適用范圍,而且本文中各個模塊均可在軟件平臺上實現,無須特殊的硬件系統,所以適用性較廣。然而本系統仍然存在一些不足,在威脅度排序算法上,層次分析法在目標較多時計算比較復雜,在實時環境下對計算機性能有一定的要求,下一步希望能夠對算法進行改進,使之能夠更好地適應本系統要求。由于研究時間較短,尚未對系統進行各種網絡環境下的詳盡測試,本系統目前還不能適用于諸如銀行、保險等對安全性能要求極高的環境。下一步將對系統的各項參數進行詳盡測試調整,進一步提高分流的準確性,使之滿足對安全要求較高的情況。
參考文獻:
[1]GONZALEA J M, PAXSON V, WEAVER N.Shunting: a hardware/software architecture for flexible, high-performance network intrusion preventionp[C]//Proc of the 14th ACM Conference on Computer and Communications Security. New York: ACM Press, 2007:139-149.
[2]CLARK C, LEE W, SCHIMME L D, et al. A hardware platform for network intrusion detection and prevention[C]//Proc of the 3rd Workshop on Network Processors and Applications. 2004.
[3]CROVELLA M. Performance evaluation with heavy tailed distributions[C]//Proc of the 7th International Workshop on Job Scheduling Strategies for Parallel Processing, London: Springer-Verlag, 2001:1-10.
[4]SATTY T L .The analytic hierarchy process[M].New York:McGraw-Hill Professional Publishing,1980.
[5]王蓮芬,許樹柏.層次分析法引論[M].北京:中國人民大學出版社,1990.
[6]王應明.判斷矩陣排序方法綜述[J].決策與決策支持系統,1995,5(3):107-114.
[7]YAGER R R. On ordered weighted averaging aggregation operators in multicriteria decision making[J].IEEE Trans on Systems, Man and Cybernetics, 1988,18(1):183-190.