網絡技術是從1990年代中期發展起來的新技術,它把互聯網上分散的資源融為有機整體,實現資源的全面共享和有機協作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計算機、存儲資源、數據資源、信息資源、知識資源、專家資源、大型數據庫、網絡、傳感器等。 當前的互聯網只限于信息共享,網絡則被認為是互聯網發展的第三階段。 5 對IDS進行測試評估一利用的相關數據對IDS進行測試評估,也就是讓IDS對進入到受保護系統的數據進行檢測,以確定檢測系統能否發現其中的入侵。要測試評估IDS,最準確的數據當然是根據實際運行環境產生的數據,但這通常是行不通的。因為各機構的數據中都包含一些隱私信息,他們不愿公開這些數據,并且即使有機構愿意公開自己的數據,也不大適合用來做通用測試,因為特定機構的數據都帶有明顯的特有的一些特性,具有一定的局限性,可重復性也不好。為此,在具體測試的時候,大都采用一些測試工具。通過這些工具來生成IDS的測試數據。 測試評估數據的生成需要滿足下面幾個條件,即數據的生成必須能自動完成,不需要人為的干預;要具有一定的可重復性,也就是說需要時可以產生相同的數據;要有一定的健壯性,可在無人監控的條件下,可運行較長時間。 測試評估IDS的數據包括兩部分,一部分是訓練數據,另外一部分是實際測試數據。這兩部分數據中都包括正常數據和入侵數據。只有在正常數據的背景下,對IDS的測試評估結果才是客觀和全面的。入侵行為在背景數據的掩護下,被檢測系統發現的機率會大大降低。而IDS也可能將正常的流量行為誤判為攻擊,產生虛警。訓練數據用來幫助IDS建立正常行為的模型,調整IDS各參數的設置。在訓練數據中,入侵數據是明確標明的。測試數據用來對檢測系統進行測試,其中的入侵數據沒有標明。 通常使用下面三種方法生成既包含正常通信數據又有攻擊的可公用的數據:抓取正常情況和被受控攻擊時的運行通信數據。由于隱私和安全問題這顯然行不通;從實際運行數據中清除秘密信息。并在其中加入攻擊,這也行不通,因為很難清除秘密信息;在一個內部網中重建正常通信和攻擊數據,這是我們采用的方法。 重建正常通信和攻擊數據也就是仿真用戶操作、模擬入侵。仿真用戶操作即生成用戶各種各樣的正常使用模式,這些模式幫助基于異常檢測的IDS建立正常行為的模型,并且以用戶正常模式數據作為檢測入侵的背景通信數據,對于確定IDS正常運行時的檢測率和虛警率是非常必要的。模擬入侵應盡可能地覆蓋多種類型,新的攻擊只在測試數據一出現。設計攻擊要考慮很多問題。要分析攻擊的機制,并在測試系統中試驗以便于分析和調節。分析要確定攻擊在測試環境中能否工作,是否需要新軟件或服務的支持。設計新奇的攻擊以用來發現未利用的系統或網絡漏洞。下面對用戶正常模式的仿真和入侵仿真分別進行討論。 目前,大多采用下面三種方法來仿真網絡用戶行為,即通用會話生成工具、測試軟件包和錄制重放實際數據。通用會話生成工具方法基于有限自動機來生成用戶所有可能的操作。每種操作都有一定的操作規程,比如FTP操作,首先它要完成TCP三步握手初始化連接,然后要輸入用戶名和密碼,用戶名密碼通過之后再瀏覽FTP服務器上的內容、下載或者上傳,所有操作完成后離開服務器,結束TCP會話。根據這種通用規程,就可生成通用的會話,模擬用戶操作。但是,這種方法只適用于測試有限的命令集,比如可仿真FTP客戶,但不能仿真shell客戶,并且這種仿真存在一些問題,因為用戶操作的順序和服務器端的響應都是不確定的,仿真并不能完全模擬用戶的操作狀況。操作系統開發商自帶測試軟件包是比較簡單的模擬方法,通常用于測試評估操作系統服務的性能和應用服務軟件是否按設計說明來實現。但是這種測試不能給出用戶進行什么樣的操作,只能告訴我們系統對正常請求的響應行為。錄制重放方法是記錄各種用戶正;顒拥臄祿,然后在測試平臺上重放用戶的活動過程。這種方法要求用戶活動記錄要足夠多。 用戶正常行為的仿真主要包括網絡流量仿真、主機正常使用仿真。大多數的網絡IDS或者網絡IDS的大部分都工作于網絡層或網絡層之上,它們對網絡上的數據分組根據不同的協議進行相應的分析。因此,在仿真網絡流量時,要仿真各種協議的各種應用的流量。通常,對實際流量進行分析,經統計計算,得到各個協議按時間的流量概率分布,以此為模型,分別仿真各個協議的流量。 主機的使用可以分為兩個部分:主機所提供的網絡服務的使用和主機的直接使用,即用戶在主機上執行命令。相應的主機正常使用的仿真要分為兩部分,即主機網絡服務正常使用的仿真和主機直接使用的仿真。對主機提供的網絡服務的正常使用進行仿真,可以采用兩種方法。一是遍歷法,即找出某個服務允許的所有正常使用模式,再由仿真程序,按這些模式依次對該服務進行訪問。二是實際采樣法,取得真實網絡環境中某個服務的實際使用情況數據,分析出現的使用模式,再根據分析結果建立仿真模型進行仿真。此方法與網絡流量仿真的方法類似。這兩種方法各有優缺點、仿真實現中,應根據被仿真服務的具體情況進行選擇。由于用戶的行為因工作性質不同,會有很大差別,所以主機直接使用的仿真應將用戶分為不同的種類(比如管理員、普通用戶),根據不同的用戶類型編寫不同的腳本,實現主機直接使用的仿真。由于不同用戶使用習慣變化很大,并且即使同一用戶使用習慣也帶有很大的隨機性,這使得仿真的難度大大增加。在實際測試評估IDS時,一般只是仿真主機正常使用的一個具有代表性的子集。 攻擊仿真是評估環境的核心,也是對IDS進行測試的關鍵。攻擊仿真要盡可能多地搜集各種攻擊方法。由于各種攻擊的數量過于龐大,不可能對所有的攻擊都進行仿真。參考軟件測試領域中的等價劃分方法(equivalence partitioning),在進行攻擊仿真時,一般先將攻擊分類,然后選擇每種類別中典型的攻擊方法進行仿真試驗。選擇好攻擊類型后,在仿真時根據入侵者進行攻擊的步驟進行仿真。在構造攻擊數據時還要注意新式攻擊。攻擊方式隱秘的攻擊、并行進行的攻擊等方面。相對于舊式攻擊、攻擊方式明顯的攻擊以及串行進行的攻擊而言,這些攻擊方式對檢測結果的影響可能會更大。 目前,測試數據所采用的格式大多采用Tcpdump數據格式和BSM數據格式,由于Windows系統廣泛應用,Windows NT的日志格式也逐漸考慮進來。在測試數據方面,麻省理工學院林肯實驗室的數據比較完備,它包括一定時間的訓練數據和用于最后實際測試的檢測數據。用于網絡流量仿真的工具有Anzen公司開發的nidsbench以及加利福尼亞大學開發的入侵檢測測試平臺。nidsbench包括tcpreplay和fraqrouter兩部分。tcpreplay的功能是將tcpdump復制的數據分組重放,還原網絡的實際運行狀態;而fraqrouter的功能是通過構造一系列躲避IDS檢測的攻擊以測試檢測系統的正確性和安全性。加利福尼亞大學的IDS軟件測試平臺使用 Tcl-DP(TooL Command Language Distributed Programming)工具開發實現。它共包含四組命令:基本的會話命令集、同步命令集、通信命令集、記錄重放命令集。這些命令集分別用來仿真入侵者的基本操作,按指定要求產生事件,實現并發進程的通信以及記錄用戶會話期間的操作命令序列再重放這些記錄。此外,麻省理工學院林肯實驗室也開發了非實時IDS性能評估工具,該工具可動態重放大量的數據。 網絡的神奇作用吸引著越來越多的用戶加入其中,正因如此,網絡的承受能力也面臨著越來越嚴峻的考驗―從硬件上、軟件上、所用標準上......,各項技術都需要適時應勢,對應發展,這正是網絡迅速走向進步的催化劑。 |
溫馨提示:喜歡本站的話,請收藏一下本站!