|
網(wǎng)絡(luò)技術(shù)是從1990年代中期發(fā)展起來的新技術(shù),它把互聯(lián)網(wǎng)上分散的資源融為有機整體,實現(xiàn)資源的全面共享和有機協(xié)作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計算機、存儲資源、數(shù)據(jù)資源、信息資源、知識資源、專家資源、大型數(shù)據(jù)庫、網(wǎng)絡(luò)、傳感器等。 當前的互聯(lián)網(wǎng)只限于信息共享,網(wǎng)絡(luò)則被認為是互聯(lián)網(wǎng)發(fā)展的第三階段。 入侵檢測系統(tǒng)(IDS) 由于入侵檢測系統(tǒng)的市場在近幾年中飛速發(fā)展,許多公司投入到這一領(lǐng)域上來。Internet Security System(ISS)、思科、賽門鐵克等公司都推出了自己的產(chǎn)品。 系統(tǒng)組成 IETF將一個入侵檢測系統(tǒng)分為四個組件:事件產(chǎn)生器(Event generators);事件分析器(Event analyzers);響應(yīng)單元(Response units );事件數(shù)據(jù)庫(Event databases )。 事件產(chǎn)生器的目的是從整個計算環(huán)境中獲得事件,并向系統(tǒng)的其他部分提供此事件。事件分析器分析得到的數(shù)據(jù),并產(chǎn)生分析結(jié)果。響應(yīng)單元則是對分析結(jié)果作出作出反應(yīng)的功能單元,它可以作出切斷連接、改變文件屬性等強烈反應(yīng),也可以只是簡單的報警。事件數(shù)據(jù)庫是存放各種中間和最終數(shù)據(jù)的地方的統(tǒng)稱,它可以是復雜的數(shù)據(jù)庫,也可以是簡單的文本文件。 根據(jù)檢測對象的不同,入侵檢測系統(tǒng)可分為主機型和網(wǎng)絡(luò)型。 基于主機的監(jiān)測。主機型入侵檢測系統(tǒng)就是以系統(tǒng)日志、應(yīng)用程序日志等作為數(shù)據(jù)源,當然也可以通過其他手段(如監(jiān)督系統(tǒng)調(diào)用)從所在的主機收集信息進行分析。主機型入侵檢測系統(tǒng)保護的一般是所在的系統(tǒng)。這種系統(tǒng)經(jīng)常運行在被監(jiān)測的系統(tǒng)之上,用以監(jiān)測系統(tǒng)上正在運行的進程是否合法。最近出現(xiàn)的一種ID(intrusion detection):位于操作系統(tǒng)的內(nèi)核之中并監(jiān)測系統(tǒng)的最底層行為。所有這些系統(tǒng)最近已經(jīng)可以被用于多種平臺。 網(wǎng)絡(luò)型入侵檢測。它的數(shù)據(jù)源是網(wǎng)絡(luò)上的數(shù)據(jù)包。往往將一臺機子的網(wǎng)卡設(shè)于混雜模式(promisc mode),對所有本網(wǎng)段內(nèi)的數(shù)據(jù)包并進行信息收集,并進行判斷。一般網(wǎng)絡(luò)型入侵檢測系統(tǒng)擔負著保護整個網(wǎng)段的任務(wù)。 系統(tǒng)通信協(xié)議 IDS系統(tǒng)內(nèi)部各組件之間需要通信,不同廠商的IDS系統(tǒng)之間也需要通信。因此,有必要定義統(tǒng)一的協(xié)議。目前,IETF目前有一個專門的小組Intrusion Detection Working Group (idwg)負責定義這種通信格式,稱作Intrusion Detection Exchange Format,但還沒有統(tǒng)一的標準。 以下是設(shè)計通信協(xié)議時應(yīng)考慮的問題:1、系統(tǒng)與控制系統(tǒng)之間傳輸?shù)男畔⑹欠浅V匾男畔,因此必須要保持?shù)據(jù)的真實性和完整性。必須有一定的機制進行通信雙方的身份驗證和保密傳輸(同時防止主動和被動攻擊)。2. 通信的雙方均有可能因異常情況而導致通信中斷,IDS系統(tǒng)必須有額外措施保證系統(tǒng)正常工作。 入侵檢測技術(shù) 對各種事件進行分析,從中發(fā)現(xiàn)違反安全策略的行為是入侵檢測系統(tǒng)的核心功能。從技術(shù)上,入侵檢測分為兩類:一種基于標志(signature-based),另一種基于異常情況(anomaly-based)。 對于基于標識的檢測技術(shù)來說,首先要定義違背安全策略的事件的特征,如網(wǎng)絡(luò)數(shù)據(jù)包的某些頭信息。檢測主要判別這類特征是否在所收集到的數(shù)據(jù)中出現(xiàn)。此方法非常類似殺毒軟件。 而基于異常的檢測技術(shù)則是先定義一組系統(tǒng)“正!鼻闆r的數(shù)值,如CPU利用率、內(nèi)存利用率、文件校驗和等(這類數(shù)據(jù)可以人為定義,也可以通過觀察系統(tǒng)、并用統(tǒng)計的辦法得出),然后將系統(tǒng)運行時的數(shù)值與所定義的“正!鼻闆r比較,得出是否有被攻擊的跡象。這種檢測方式的核心在于如何定義所謂的“正!鼻闆r。 兩種檢測技術(shù)的方法、所得出的結(jié)論有非常大的差異。基于異常的檢測技術(shù)的核心是維護一個知識庫。對于已知的攻擊,它可以詳細、準確的報告出攻擊類型,但是對未知攻擊卻效果有限,而且知識庫必須不斷更新;诋惓5臋z測技術(shù)則無法準確判別出攻擊的手法,但它可以(至少在理論上可以)判別更廣范、甚至未發(fā)覺的攻擊。 [page_break]入侵檢測過程 從總體來說,入侵檢測系統(tǒng)可以分為兩個部分:收集系統(tǒng)和非系統(tǒng)中的信息然后對收集到的數(shù)據(jù)進行分析,并采取相應(yīng)措施。 信息收集 信息收集包括收集系統(tǒng)、網(wǎng)絡(luò)、數(shù)據(jù)及用戶活動的狀態(tài)和行為。而且,需要在計算機網(wǎng)絡(luò)系統(tǒng)中的若干不同關(guān)鍵點(不同網(wǎng)段和不同主機)收集信息,這除了盡可能擴大檢測范圍的因素外,還有一個就是對來自不同源的信息進行特征分析之后比較得出問題所在的因素。 入侵檢測很大程度上依賴于收集信息的可靠性和正確性,因此,很有必要只利用所知道的真正的和精確的軟件來報告這些信息。因為黑客經(jīng)常替換軟件以搞混和移走這些信息,例如替換被程序調(diào)用的子程序、記錄文件和其它工具。黑客對系統(tǒng)的修改可能使系統(tǒng)功能失常并看起來跟正常的一樣。例如,unix系統(tǒng)的PS指令可以被替換為一個不顯示侵入過程的指令,或者是編輯器被替換成一個讀取不同于指定文件的文件(黑客隱藏了初試文件并用另一版本代替)。這需要保證用來檢測網(wǎng)絡(luò)系統(tǒng)的軟件的完整性,特別是入侵檢測系統(tǒng)軟件本身應(yīng)具有相當強的堅固性,防止被篡改而收集到錯誤的信息。入侵檢測利用的信息一般來自以下三個方面(這里不包括物理形式的入侵信息): 系統(tǒng)和網(wǎng)絡(luò)日志文件 黑客經(jīng)常在系統(tǒng)日志文件中留下他們的蹤跡,因此,可以充分利用系統(tǒng)和網(wǎng)絡(luò)日志文件信息。日志中包含發(fā)生在系統(tǒng)和網(wǎng)絡(luò)上的不尋常和不期望活動的證據(jù),這些證據(jù)可以指出有人正在入侵或已成功入侵了系統(tǒng)。通過查看日志文件,能夠發(fā)現(xiàn)成功的入侵或入侵企圖,并很快地啟動相應(yīng)的應(yīng)急響應(yīng)程序。日志文件中記錄了各種行為類型,每種類型又包含不同的信息,例如記錄“用戶活動”類型的日志,就包含登錄、用戶ID改變、用戶對文件的訪問、授權(quán)和認證信息等內(nèi)容。很顯然地,對用戶活動來講,不正常的或不期望的行為就是重復登錄失敗、登錄到不期望的位置以及非授權(quán)的企圖訪問重要文件等等。 非正常的目錄和文件改變 網(wǎng)絡(luò)環(huán)境中的文件系統(tǒng)包含很多軟件和數(shù)據(jù)文件,他們經(jīng)常是黑客修改或破壞的目標。目錄和文件中非正常改變(包括修改、創(chuàng)建和刪除),特別是那些正常情況下限制訪問的,很可能就是一種入侵產(chǎn)生的指示和信號。黑客經(jīng)常替換、修改和破壞他們獲得訪問權(quán)的系統(tǒng)上的文件,同時為了隱藏系統(tǒng)中他們的表現(xiàn)及活動痕跡,都會盡力去替換系統(tǒng)程序或修改系統(tǒng)日志文件。 非正常的程序執(zhí)行 網(wǎng)絡(luò)系統(tǒng)上的程序執(zhí)行一般包括操作系統(tǒng)、網(wǎng)絡(luò)服務(wù)、用戶啟動的程序和特定目的的應(yīng)用,例如WEB服務(wù)器。每個在系統(tǒng)上執(zhí)行的程序由一到多個進程來實現(xiàn)。一個進程的執(zhí)行行為由它運行時執(zhí)行的操作來表現(xiàn),操作執(zhí)行的方式不同,它利用的系統(tǒng)資源也就不同。操作包括計算、文件傳輸、設(shè)備和其它進程,以及與網(wǎng)絡(luò)間其它進程的通訊。 一個進程出現(xiàn)了不期望的行為可能表明黑客正在入侵你的系統(tǒng)。黑客可能會將程序或服務(wù)的運行分解,從而導致它失敗,或者是以非用戶或管理員意圖的方式操作。 [page_break]信號分析 對收集到的有關(guān)系統(tǒng)、網(wǎng)絡(luò)、數(shù)據(jù)及用戶活動的狀態(tài)和行為等信息,一般通過三種技術(shù)手段進行分析:模式匹配、統(tǒng)計分析和完整性分析。其中前兩種方法用于實時的入侵檢測,而完整性分析則用于事后分析。 模式匹配 模式匹配就是將收集到的信息與已知的網(wǎng)絡(luò)入侵和系統(tǒng)已有模式數(shù)據(jù)庫進行比較,從而發(fā)現(xiàn)違背安全策略的行為。該過程可以很簡單(如通過字符串匹配以尋找一個簡單的條目或指令),也可以很復雜(如利用正規(guī)的數(shù)學表達式來表示安全狀態(tài)的變化)。一般來講,一種進攻模式可以用一個過程(如執(zhí)行一條指令)或一個輸出(如獲得權(quán)限)來表示。該方法的一大優(yōu)點是只需收集相關(guān)的數(shù)據(jù)集合,顯著減少系統(tǒng)負擔,且技術(shù)已相當成熟。它與病毒防火墻采用的方法一樣,檢測準確率和效率都相當高。但是,該方法存在的弱點是需要不斷的升級以對付不斷出現(xiàn)的黑客攻擊手法,不能檢測到從未出現(xiàn)過的黑客攻擊手段。 統(tǒng)計分析 統(tǒng)計分析方法首先給系統(tǒng)對象(如用戶、文件、目錄和設(shè)備等)創(chuàng)建一個統(tǒng)計描述,統(tǒng)計正常使用時的一些測量屬性(如訪問次數(shù)、操作失敗次數(shù)和延時等)。在比較這一點上與模式匹配有些相象之處。測量屬性的平均值將被用來與網(wǎng)絡(luò)、系統(tǒng)的行為進行比較,任何觀察值在正常值范圍之外時,就認為有入侵發(fā)生。例如,本來都默認用GUEST帳號登錄的,突然用ADMINI帳號登錄。這樣做的優(yōu)點是可檢測到未知的入侵和更為復雜的入侵,缺點是誤報、漏報率高,且不適應(yīng)用戶正常行為的突然改變。具體的統(tǒng)計分析方法如基于專家系統(tǒng)的、基于模型推理的和基于神經(jīng)網(wǎng)絡(luò)的分析方法,目前正處于研究熱點和迅速發(fā)展之中。 完整性分析 完整性分析主要關(guān)注某個文件或?qū)ο笫欠癖桓模@經(jīng)常包括文件和目錄的內(nèi)容及屬性,它在發(fā)現(xiàn)被更改的、被特咯伊化的應(yīng)用程序方面特別有效。完整性分析利用強有力的加密機制,稱為消息摘要函數(shù)(例如MD5),它能識別哪怕是微小的變化。其優(yōu)點是不管模式匹配方法和統(tǒng)計分析方法能否發(fā)現(xiàn)入侵,只要是成功的攻擊導致了文件或其它對象的任何改變,它都能夠發(fā)現(xiàn)。缺點是一般以批處理方式實現(xiàn),用于事后分析而不用于實時響應(yīng)。盡管如此,完整性檢測方法還應(yīng)該是網(wǎng)絡(luò)安全產(chǎn)品的必要手段之一。例如,可以在每一天的某個特定時間內(nèi)開啟完整性分析模塊,對網(wǎng)絡(luò)系統(tǒng)進行全面地掃描檢查。 [page_break]專家系統(tǒng) 用專家系統(tǒng)對入侵進行檢測,經(jīng)常是針對有特征入侵行為,是較為智能的方法。專家系統(tǒng)主要是運用規(guī)則進行分析,規(guī)則即知識,不同的系統(tǒng)與設(shè)置具有不同的規(guī)則,且規(guī)則之間往往無通用性。專家系統(tǒng)的建立依賴于知識庫的完備性,知識庫的完備性又取決于審計記錄的完備性與實時性。入侵的特征抽取與表達,是入侵檢測專家系統(tǒng)的關(guān)鍵。在系統(tǒng)實現(xiàn)中,將有關(guān)入侵的知識轉(zhuǎn)化為if-then結(jié)構(gòu)(也可以是復合結(jié)構(gòu)),條件部分為入侵特征,then部分是系統(tǒng)防范措施。運用專家系統(tǒng)防范有特征入侵行為的有效性完全取決于專家系統(tǒng)知識庫的完備性。 實現(xiàn)一例 以下是在WINDOWS2000,VB6.0環(huán)境下測試通過的對本機的木馬探測及常規(guī)掃描進行監(jiān)聽的簡單程序。 Dim tmpstr As String ’存放捕獲的數(shù)據(jù) Private Sub Command1_Click() Private Sub Command2_Click() Private Sub Command3_Click() [page_break]Private Sub Form_Load() txtLOG.Text = "日志:" & vbCrLf NOW_OUT = 1 End Sub ’在窗體載入時初始化日志文件和連接變量 Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long) Private Sub Winsock2_DataArrival(Index As Integer, ByVal bytesTotal As Long) Sub myAddLog(tmptext As String) '加入日志 程序說明:這是一個簡單的監(jiān)聽程序,并不具有分析的功能,因此,它不是一個入侵檢測系統(tǒng),而是入侵檢測系統(tǒng)的前半部分——數(shù)據(jù)收集。它是通過winsock(系統(tǒng)本身提供的組件)本身的功能,簡單的實現(xiàn)對本地斷口的監(jiān)聽和對到達本地的數(shù)據(jù)進行捕獲。 總結(jié) 入侵檢測作為一種積極主動地安全防護技術(shù),提供了對內(nèi)部攻擊、外部攻擊和誤操作的實時保護,在網(wǎng)絡(luò)系統(tǒng)受到危害之前攔截和響應(yīng)入侵。入侵檢測系統(tǒng)面臨的最主要挑戰(zhàn)有兩個:一個是虛警率太高,一個是檢測速度太慢,F(xiàn)有的入侵檢測系統(tǒng)還有其他技術(shù)上的致命弱點。因此,可以這樣說,入侵檢測產(chǎn)品仍具有較大的發(fā)展空間,從技術(shù)途徑來講,除了完善常規(guī)的、傳統(tǒng)的技術(shù)(模式識別和完整性檢測)外,應(yīng)重點加強統(tǒng)計分析的相關(guān)技術(shù)研究。 但無論如何,入侵檢測不是對所有的入侵都能夠及時發(fā)現(xiàn)的,即使擁有當前最強大的入侵檢測系統(tǒng),如果不及時修補網(wǎng)絡(luò)中的安全漏洞的話,安全也無從談起。 網(wǎng)絡(luò)的神奇作用吸引著越來越多的用戶加入其中,正因如此,網(wǎng)絡(luò)的承受能力也面臨著越來越嚴峻的考驗―從硬件上、軟件上、所用標準上......,各項技術(shù)都需要適時應(yīng)勢,對應(yīng)發(fā)展,這正是網(wǎng)絡(luò)迅速走向進步的催化劑。 |
溫馨提示:喜歡本站的話,請收藏一下本站!