IDS的標準化 為了提高IDS產品、組件及與其他安全產品之間的互操作性,美國國防進階研究計劃署(DARPA)和網際網路工程任務組 (IETF)的入侵檢測工作組(IDWG)發起制訂了一系列建議草案,從體系結構、API、通信機制、語言格式等方面規範IDS的 標準。 DARPA提出的建議是公共入侵檢測框架(CIDF),最早由加州大學戴維斯分校安全實驗室主持起草工作。1999年6月,IDWG 就入侵檢測也出台了一系列草案。但是,這兩個組織提出的草案或建議目前還正處於逐步完善之中,尚未被採納為廣泛接受的 國際標準。不過,它們仍是入侵檢測領域最有影響力的建議,成為標準只是時間問題。 入侵檢測工作組(IDWG) IDWG的任務是:定義資料格式和交換規程,用於入侵檢測與回應(IDR)系統之間或與需要交互的管理系統之間的信息共 享。IDWG提出的建議草案包括三部分內容:入侵檢測消息交換格式(IDMEF)、入侵檢測交換協議(IDXP)以及隧道輪廓 (Tunnel Profile)。 一、IDMEF IDMEF描述了表示入侵檢測系統輸出信息的資料模型,並解釋了使用此模型的基本原理。該資料模型用XML實現,並設計了一 個XML我的文件類型定義。自動入侵檢測系統可以使用IDMEF提供的標準資料格式對可疑事件發出警報,提高商業、開放資源 和研究系統之間的互操作性。IDMEF最適用於入侵檢測分析器(或稱為「探測器」)和接收警報的管理器(或稱為「控制 台」)之間的資料信道。 1.IDMEF的資料模型 IDMEF資料模型以面向對象的形式表示探測器傳遞給控制台的警報資料,設計資料模型的目標是為警報提供確定的標準表達方 式,並描述簡單警報和複雜警報之間的關係。 IDMEF資料模型各個主要部分之間的關係如圖1所示。 所有IDMEF消息的最高層類是IDMEF-Message,每一種類型的消息都是該類的子類。IDMEF目前定義了兩種類型的消息:Alert (警報)和Heartbeat(心跳),這兩種消息又分別包括各自的子類,以表示更詳細的消息。 需要注意的是,IDMEF資料模型並沒有對警報的分類和鑒別進行說明。例如,對一個端口的掃瞄,一個分析器可能將其確定為 一個多目標的單一攻擊,而另一個分析器可能將其確定為來自同一個源的多次攻擊。只有一個分析器決定了發送的警報類型, 資料模型才能規定怎樣對這個警報進行格式化。 IDMEF資料模型是用統一建模語言(UML)描述的。UML用一個簡單的框架表示實體以及它們之間的關係,並將實體定義為 類。IDMEF包括的主要類有IDMEF-Message類、Alert類、Heartbeat類、Core類、Time類和Support類,這些類還可以再細分為許多 子類。 2.使用XML描述IDMEF我的文件標記 IDWG最早曾提出兩個建議實現IDMEF:用SMI(管理信息結構)描述一個SNMP MIB和使用DTD(我的文件類型定義)描述 XML我的文件。IDWG 在1999年9月和2000年2月分別對這兩個建議進行了評估,認為XML最能符合IDMEF的要求,於是,在 2000年2月的會議上決定採用XML方案。 XML是SGML(標準通用標記語言)的簡化版本,是ISO 8879標準對文本標記說明進行定義的一種語法。作為一種表示和交換 網路我的文件及資料的語言,XML能夠有效地解決HTML面臨的許多問題,所以獲得了業界的普遍青睞。1998年10月,WWW 聯盟(W3C)將XML作為一項建議公佈於眾。此後不久,WWW聯盟又發佈了一份建議,定義了XML我的文件中的名字空間。 XML是一種元語言--即一個描述其他語言的語言,它允許應用程式定義自己的標記,還可以為不同類型的我的文件和應用程式 定義定制化的標記語言。 XML DTD(我的文件類型定義)可用來聲明我的文件所用的標記,它包括元素(我的文件包括的不同信息部分)、屬性(信息 的特徵)和內容模型(各部分信息之間的關係)。 二、IDXP IDXP(入侵檢測交換協議)是一個用於入侵檢測實體之間交換資料的應用層協議,能夠實現IDMEF消息、非結構文本和二進制 資料之間的交換,並提供面向連接協議之上的雙方認證、完整性和保密性等安全特徵。IDXP是BEEP的一部分,後者是一個用 於面向連接的異步交互通用應用協議,IDXP的許多特色功能(如認證、保密性等)都是由BEEP框架提供的。IDXP模型如下: 1.建立連接 使用IDXP傳送資料的入侵檢測實體被稱為IDXP的對等體,對等體只能成對地出現,在BEEP會話上進行通信的對等體可以使用 一個或多個BEEP信道傳輸資料。 對等體可以是管理器,也可以是分析器。分析器和管理器之間是多對多的關係,即一個分析器可以與多個管理器通信,同樣, 一個管理器也可以與多個分析器通信;管理器與管理器之間也是多對多的關係,所以,一個管理器可以通過多個中間管理器接 收來自多個分析器的大量警報。但是,IDXP規定,分析器之間不可以建立交換。 入侵檢測實體之間的IDXP通信在BEEP信道上完成。兩個希望建立IDXP通信的入侵檢測實體在開啟BEEP信道之前,首先要進行 一次BEEP會話,然後就有關的安全特性問題進行協商,協商好BEEP安全輪廓之後,互致問候,然後開始IDXP交換。 圖2是兩個入侵檢測實體「Alice」和「Bob」之間建立IDXP通信的過程: 注意:IDXP對等實體之間可能有多個代理,這些代理可能是防火牆,也可能是將公司每個部門分析器的資料轉發給總管理器的 代理。隧道輪廓描述了使用代理時的IDXP交換。 2.傳輸資料 一對入侵檢測實體進行BEEP會話時,可以使用IDXP輪廓開啟一個或多個BEEP信道,這樣就可以使用額外的信道建立額外的 BEEP會話。但是,大多數情況下,額外信道都應在已有的BEEP會話上開啟,而不是用IDXP輪廓開啟一個包含額外信道的新 BEEP會話。 在每個信道上,對等體都以客戶端機/伺服器模式進行通信,BEEP會話發起者為客戶端機,而收聽者則為伺服器。 圖3描述了一個分析器將資料傳送給一個管理器的簡單過程。 在一次BEEP會話時,使用多個BEEP信道有利於對在IDXP對等體之間傳輸的資料進行分類和優先權設置。例如,一個管理器M1 在向另一個管理器M2傳送警報資料時,可以用不同的信道傳送不同類型的警報資料,在每個信道上管理器M1的作用都相當於 一個客戶器,而M2則對不同信道上的資料作出相應的處理,如圖4所示。 3.斷開連接 在有些情況下,一個IDXP對等體可以選擇關閉某個IDXP信道。在關閉一個信道時,對等體在0信道上發送一個「關閉」元素, 指明要關閉哪一個信道。一個IDXP對等體也可以通過在0信道上發送一個指明要「關閉」0信道的元素,來關閉整個BEEP會 話。 在上面這個模型中, IDXP對等實體之間採用了一個BEEP安全輪廓實現端到端的安全,而無需通過中間的代理建立安全信任, 因此,只有IDXP對等體之間是相互信任的,而代理是不可信的。 公共入侵檢測框架(CIDF) CIDF所做的工作主要包括四部分:IDS的體系結構、通信機制、描述語言和應用編程接頭API。 一.CIDF的體系結構 CIDF在IDES和NIDES的基礎上提出了一個通用模型,將入侵檢測系統分為四個基本組件:事件產生器、事件分析器、回應單元 和事件資料庫。結構如圖5所示。 在這個模型中,事件產生器、事件分析器和回應單元通常以應用程式的形式出現,而事件資料庫則往往是文件或資料流的形 式,很多IDS廠商都以資料收集部分、資料分析部分和控制台部分三個術語來分別替代事件產生器、事件分析器和回應單元。 CIDF將IDS需要分析的資料統稱為事件,它可以是網路中的資料包,也可以是從系統日誌或其他途徑得到的信息。 以上四個組件只是邏輯實體,一個組件可能是某台電腦上的一個工作甚至線程,也可能是多個電腦上的多個工作,它們以 GIDO(統一入侵檢測對像)格式進行資料交換。GIDO是對事件進行編碼的標準通用格式(由CIDF描述語言CISL定義),GIDO 資料流在圖5中以虛線表示,它可以是發生在系統中的審計事件,也可以是對審計事件的分析結果。 1.事件產生器 事件產生器的任務是從入侵檢測系統之外的計算環境中收集事件,並將這些事件轉換成CIDF的GIDO格式傳送給其他組件。例 如,事件產生器可以是讀取C2級審計蹤跡並將其轉換為GIDO格式的過濾器,也可以是被動地監視網路並根據網路資料流產生 事件的另一種過濾器,還可以是SQL資料庫中產生描述事務的事件的應用代碼。 2.事件分析器 事件分析器分析從其他組件收到的GIDO, 並將產生的新GIDO再傳送給其他組件。分析器可以是一個輪廓描述工具,統計性地檢 查現在的事件是否可能與以前某個事件來自同一個時間序列; 也可以是一個特徵檢測工具,用於在一個事件序列中檢查是否有 已知的濫用攻擊特徵;此外,事件分析器還可以是一個相關器,觀察事件之間的關係,將有聯繫的事件放到一起,以利於以後 的進一步分析。 3.事件資料庫 用來存儲GIDO,以備系統需要的時候使用。 4.回應單元 回應單元處理收到的GIDO,並據此採取相應的措施,如殺死相關工作、將連接復位、修改文件權限等。 由於CIDF有一個標準格式GIDO,所以這些組件也適用於其他環境,只需要將典型的環境特徵轉換成GIDO格式,這樣就提高了 組件之間的消息共享和互通。 二、CIDF的通信機制 為了保證各個組件之間安全、高效的通信,CIDF將通信機制構造成一個三層模型:GIDO層、消息層和協商傳輸層。 要實現有目的的通信,各組件就必須能正確理解相互之間傳遞的各種資料的語義,GIDO層的任務就是提高組件之間的互操作 性,所以GIDO就如何表示各種各樣的事件做了詳細的定義。 消息層確保被加密認證消息在防火牆或NAT等設備之間傳輸過程中的可靠性。消息層只負責將資料從發送方傳遞到接收方,而 不攜帶任何有語義的信息;同樣,GIDO層也只考慮所傳遞信息的語義,而不關心這些消息怎樣被傳遞。 單一的傳輸協議無法滿足CIDF各種各樣的應用需求,只有當兩個特定的組件對信道使用達成一致認識時,才能進行通信。協商 傳輸層規定GIDO在各個組件之間的傳輸機制。 CIDF的通信機制主要討論消息的封裝和傳遞,主要分為四個方面: 1. 配對服務 配對服務採用了一個大型目錄服務LDAP(輕量級目錄訪問協議),每個組件都要到此目錄服務進行註冊,並通告其他組件它 所使用或產生的GIDO類型。在此基礎上,組件才能被歸入它所屬的類別中,組件之間才能互相通信。 配對服務還支持一些安全選項(如公鑰證書、完整性機制等),為各個組件之間安全通信、共享信息提供了一種統一的標準機 制,大大提高了組件的互操作性,降低了開發多組件入侵檢測與回應系統的難度。 2. 路由 組件之間要通信時,有時需經過非透明的防火牆,發送方先將資料包傳遞給防火牆的關聯代理,然後再由此代理將資料包轉發 到目的地。CIDF採用了兩種路由:源路由和絕對路由。 3. 消息層 消息層要實現的功能包括: (1)提供一個開放的體系結構。 (2)使消息獨立於操作系統、編程語言和網路協議。 (3)簡化向CIDF中增添新組件的過程。 (4)支持鑒定與保密等安全需求。 (5)同步(封鎖工作與非封鎖工作)。 4. 消息層處理 消息層處理規定了消息層消息的處理方式,它包括四個規程:標準規程、可靠傳輸規程、保密規程和鑒定規程。 三、CIDF語言 CIDF的總體目標是實現軟體的復用和IDR(入侵檢測與回應)組件之間的互操作性。首先,IDR組件基礎結構必須是安全、健 壯、可伸縮的,CIDF的工作重點是定義了一種應用層的語言CISL(公共入侵規範語言),用來描述IDR組件之間傳送的信息, 以及制定一套對這些信息進行編碼的協議。CISL可以表示CIDF中的各種信息,如原始事件信息(審計蹤跡記錄和網路資料流信 息)、分析結果(系統異常和攻擊特徵描述)、回應提示(停止某些特定的活動或修改組件的安全參數)等。 CISL使用了一種被稱為S表達式的通用語言構建方法,S表達式可以對標記和資料進行簡單的遞回編組,即對標記加上資料,然 後封裝在括號內完成編組,這跟LISP有些類似。S表達式的最開頭是語義標識符(簡稱為SID),用於顯示編組列表的語義。例 如下面的S表達式: (HostName 『first.example.com』) 該編組列表的SID是HostName,它說明後面的字串串「first.example.com」將被解釋為一個主機的名字。 有時侯,只有使用很複雜的S表達式才能描述出某些事件的詳細情況,這就需要使用大量的SID。SID在CISL中起著非常重要的 作用,用來表示時間、定位、動作、角色、屬性等,只有使用大量的SID,才能構造出合適的句子。CISL使用範例對各種事件 和分析結果進行編碼,把編碼的句子進行適當的封裝,就得到了GIDO。 GIDO的構建與編碼是CISL的重點。 四、CIDF的API接頭 CIDF的API負責GIDO的編碼、解碼和傳遞,它提供的使用功能使得程序員可以在不瞭解編碼和傳遞過程具體細節的情況下,以 一種很簡單的方式構建和傳遞GIDO。 GIDO的產生分為兩個步驟:第一,構造表示GIDO的樹型結構;第二,將此結構編成字元碼。 在構造樹形結構時,SID被分為兩組:一組把S表達式作為參數(即動詞、副詞、角色、連接詞等),另一組把單個資料或一個 資料陣列作為參數(即原子),這樣就可以把一個完整的句子表示成一棵樹,每個SID表示成一個節點,最高層的SID是樹根。 因為每個S表達式都包含一定的資料,所以,樹的每個分支末端都有表示原子SID的葉子。 由於編碼規則是定義好的,所以對樹進行編碼只是一個深度優先遍歷和對各個節點依次編碼的過程。在這種情況下,我們可以 先對V編碼,然後對R1子樹編碼,再對R2子樹編碼。如果上面的句子是一個連接句的一部分,那麼,每個成分句都可以從中完 好地提取出來。也就是說,如果句子事先已經編碼,在插入到一個連接句時無須再進去行編碼。 將字元碼進行解碼跟上面的過程正好相反,在SID碼的第一個字元裡有一個比特位顯示其需要的參數:是基本資料類型,還是S 表達式序列。然後語法分析器再對後面的字元進行解釋。CIDF的API並不能根據樹構建邏輯GIDO,但提供了將樹以普通GIDO 的S表達式格式進行列印的功能。 CIDF的API為實現者和應用開發者都提供了很多的方便,它分為兩類:GIDO編碼/解碼API和消息層API。 安裝入侵檢測系統後的注意事項 在經過數月的評估、測試、購置等工作,部署好入侵檢測系統後,別以為事情就已完成,其實還有很多等待你去做。 入侵檢測系統(Intrusion Detection System IDS)如同一個三歲的早熟小孩,需要你時刻注意他,否則他就不高興。這種說法 可能有些離譜,但IDS確實不像其它安全系統那樣,在安裝後可以置之不理,而是需要與你溝通,需要你的特別留意。 防火牆有可能不需要你的理會,因為它只是默默地駐守在網路的旁邊,隔斷所有不受歡迎的網包,保護你的網路不受拒絕 服務攻擊或惹上其它與IP有關的麻煩。 認證系統、VPN 以及其它大部分安全設備也都不需要你的理會。你越不理會它們的存 在,它們越能各盡其職。 相反,IDS需要你不斷地敦促才能"進入狀態",這樣才會告訴你它正在掃瞄端口,有無諸如"SYN風暴" 及其它各種各樣 的"鬼東西"正在攻擊你的網路及系統。所以,如果你考慮把IDS作為網路安全架構的一部分,你就不僅要考慮哪些方案最能滿 足你的需要,還要考慮你在"安裝後的生活狀況"。也就是說,你將如何監控你的系統,誰去監管這些系統,以及最重要一點-- IDS半夜三更發出警報時,你該怎麼辦? 不僅僅是"即插即用" 要好好利用IDS,因為安裝後不僅意味著你擁有探測器及監控器,同時,你將擁有技術和人力資源的定制權、監控權、反 應權及改正權。 定制 是指更精細地調校IDS,使IDS有能力找出與你網路有關的事件。統計資料顯示:大部分攻擊是由來自企業內部DMZ (非軍事區)的人發動的,所以這個尋找過程不僅限於消除來自網上的假警報。 監控 是指對IDS資源的理解,包括知道什麼是假警報以及如何調查及處理那些看來是真的警示。 反應 是指當有真警報發生時所採取的行動。攻擊者究竟想達到什麼目的?攻擊者來了沒有?如果你的Web 伺服器已被破 壞,你要做什麼?把伺服器關掉,還是進入離線狀態?是否要發動反擊?你是否準備進行犯案分析,來判斷真正發生了什麼事 情,然後採取法律行動? 改正是指堵塞漏洞--漏洞的範圍很廣泛,可以是一個配置不良的伺服器,或是一個過時的安全政策和一個不充分安全的網 路邊界。 IDS 監控及程序 在把整個安全架構捆綁在一起時,你有沒有考慮清楚到底要監控什麼?你有沒有決定一旦發生事故後要採 取什麼行動?一旦檢測到入侵事件, 你有沒有一套糾正問題的機制? 如果你不能回答這些問題,你就沒有資格討論網路安全 這一問題。 入侵檢測系統:回顧 在深入探討如何監控IDS 及如何對攻擊或濫用等行為報告反應前,我們應該先回顧現在市場上最常見的IDS系統。一般來 說,IDS 由探測器及管理器組成,探測器負責尋找出攻擊, 而管理器整理探測器收集的資料並把結果報告給操作員。 IDS探測器基本上分兩類: 基於網路的和基於主機的。基於網路的探測器負責嗅探網路的連接,監視例如TCP包的流量 等,看看有沒有被攻擊的跡象;基於主機的探測器在你重要的系統伺服器、工作站或用戶電腦上執行,監視OS或系統事件級別 的可疑活動。這些探測器可尋找潛在的可疑活動(如嘗試登錄失敗)。IDS管理器則是一個中央監控中心,不斷接收來自探測 器及警報器的資料。 基於網路的IDS 基於網路的IDS如同"超級"探測器,即它們在TCP/IP層(或更低層)監視流量,看看有沒有已知的攻擊模式 (如Ping-of-death 或Web 伺服器的攻擊)。這些系統的工作極富挑戰性,因為探測器看不到網上所有流量的交換環境。此外, 絕大部分基於網路的IDS只能找出與黑客攻擊類似的濫用模式。基於網路的IDS容易出現假警報。例如,當你的Web 伺服器已超 載,不能夠再處理更多的連接請求時, IDS會以為你正在受到拒絕服務的攻擊,但是真實的情況並不是這樣。通常,基於網路 的IDS不會搜尋其它可疑活動,如某個郵遞工作人員試圖訪問你公司的財務資料等。當然,網路嗅探器可以被調校成只搜尋某 一類攻擊,但要找出每種攻擊情景是個相當費事的過程。假如很多破壞安全的事件是由內部人所為,而你只用IDS監視網路邊 界來搜尋攻擊,這在某種程度還不能達到你投資IDS的目的。 基於主機的IDS 這種檢測系統採取不同的方法搜尋攻擊模式。基於主機的IDS與嗅探器不同,檢測事件要靠操作系統的日 誌,因此它不能目擊發生在網路層的攻擊。 如同基於網路的IDS,這些基於主機的IDS迫使你定義清楚哪些是你認為不合法的活 動,然後就把這種安全政策轉換成IDS規則。基於主機的IDS也可以被配置成搜尋某類指定的攻擊而忽略其它的模式。同樣,調 校探測器的過程也是非常費時的。 混合型IDS 供應商已知道純粹基於主機或基於網路的IDS擁有很多功能上的局限性,所以,大約在一年前,他們就開始推出新系統。 他們把這兩類IDS的最好功能結合起來,形成了新的IDS探測架構。ISS 的RealSecure,、NAI 的CyberCop 及ODS 網路公司的CMDS 就採取了這種混合方法來提供入侵檢測的解決方案。 RealSecure 原本依賴基於網路的探測器探測,但現在也包括了基於主機的入侵檢測系統。ISS也融合了監控路由器系統日誌 的功能,所以,現在你的路由器也可以是個IDS探測器。CyberCop現在不僅提供基於主機的IDS,它也正在朝融合架構的方向發 展,把網路嗅探器放在它們的主機代理中。而CMDS 同時使用網路及主機信息來搜尋攻擊模式。 智能IDS管理器 典型的IDS,不管是基於主機的、基於網路的或是兩類型的混合,仍然需要你對它們進行調校及定制。但有一種新型的 IDS,名叫"智能系統"IDS,它可以減輕你部分工作量。 這種系統不只可以從特別的探測器中讀取資料,還可以從網路中每一台 設備讀取信息。它們會聆聽路由器及操作系統的系統日誌,吸納防火牆的日誌文件及IDS探測器信息,然後通過整理這批資料 來判斷你的網路究竟發生了什麼事情。 這樣的智能系統也試圖通過智能調校靈敏度以消除假警報。 例如:CMDS就有一個檢測不正常活動的工具,它可在某段時 間內收集網路的資料,然後用基於網路的方法建立新的用戶簡表。一旦建立了新的簡表,所有超出簡表範圍的事件都會觸發警 報。例如,如果用戶Bob一般都是在正常工作時間登錄網路,但有一次,Bob半夜三點鐘從家裡登錄並開始下載文件。雖然Bob 並沒有做錯事,IDS同樣會向你發出警報。 其它產品也開始相繼融合了類似的進階智能功能。例如CyberSafe 的Centrax 融合了安全政策、評估及監控功能,成為單一 的管理控制台。 ISS 的RealSecure 的Fusion 技術就是結合了多個探測器的結果,不論這些探測器是基於主機的還是網路的、路由 器或防火牆的,根據橫跨這些設備的多階段事件,IDS就可以作出明智的決定。例如,由網路探測器檢測出緩衝器溢出,同 時,主機探測器檢測到根登錄,這兩者結合就可能是非法操作,IDS便會發出警報。 其它供應商也正在努力改進系統,使IDS更能減輕行政管理的負擔。Axent 的NetProwler 可以先掃瞄你的網路,看看網路有 哪些系統,然後自動配置適當的網路型探測器來分辨有哪些是可能或不可能發生的攻擊,以及有哪些攻擊可能會成功。因為有 的安全管理人員可能想知道什麼時候網路被攻擊,而另一些只想消除不可能的攻擊所引致的假警報(例如針對NT發動的攻擊在 攻擊Solaris 系統)。 監控IDS:真正的挑戰 不管你選擇網路型的或是主機型的監控(如CMDS這類的智能系統、HP Open-View 的標準監控器),你最後還是要對IDS向 你報告的信息作出反應。所以,當有真的警報發生時,你該做什麼?如果你要計算投資IDS後有什麼回報的話,這可能是個最 重要、但卻最容易被忽略的問題。 要有效地監控系統,你需要在多個重要環節做好準備: -IDS 監控及回應 -事件處理 -犯案分析及資料保留 -報告過程 IDS 監控及回應 首先,你要知道是誰在監控你的IDS系統。你有沒有一個技術很好的安全專家坐在監控控制台前,等著警報發生並反應? 答案很可能是沒有。在大部分企業中,一線的回應人員多數沒有經驗。遺憾的是,市場上供應的IDS在這方面並不能提供有力 的幫助。舉例來說,雖然Cisco 的NetRanger 按照五個級別將警報分類,但仍然沒有告訴你收到警報後該怎樣做。 因此,只有擁有明確的監控指導,操作員才知道在警報發生時應該進行什麼特定的操作。為什麼要寫下來?因為如果沒有 白紙黑字,對IDS事件的反應操作程度是非常難於控制的。 讓我們來看兩個例子。第一個:假設你的操作員發現某人對防火牆進行端口掃瞄。如果你明智地設置了防火牆及其它主 機,那麼,這種端口掃瞄就不會造成多大的威脅,所以,你的操作員只需要記下掃瞄的來源地址,然後繼續工作即可。 第二個:假設你設置了VPN,讓一個業務夥伴訪問你的資料庫伺服器。現在,你的操作員發現了來自你業務夥伴網路的端 口掃瞄行為,這就是個嚴重的潛在威脅。有可能是你業務夥伴的網路被破壞,或是來自你夥伴網路的某人試圖攻入你的系統。 誰能做出應對措施?是你的操作員,而不是IDS。 問題是,經驗不足的操作員沒有能力分清這兩種攻擊的輕重,所以,在沒有書面的監控指導的情況下,他有可能對第一種 情況反應過激,而對第二種則置之不理。 解譯IDS報文:究竟這些警報意味著什麼? 在上文中,我們提及的端口掃瞄是一種黑客慣用的初級攻擊手法。至於那些更深奧的攻擊又如何應付?你的操作員能否明 白FIN掃瞄的重要性?利用dot-dot漏洞攻擊又是什麼?或是Statd 緩衝器過速?要弄明白IDS想要告訴你發生了什麼事是非常不容 易的,即使是滿腹經綸的安全專家也需要打起十二萬分的精神。在現階段,不是每個IDS都能解釋清楚它們的警報到底是什麼 意思。 至於解釋警報,ISS的RealSecure 及NAI 的CyberCop Monitor 是當今兩個最好的解決方案。當有警報發生時,只要點擊警 報,系統便會提供針對這種攻擊提供更詳細的資料。很多IDS也啟動了數字簽名的定義資料庫:有攻擊的解釋、如何攻擊、會 有什麼影響及如何對付。ISS 的幫助文件是可以自行制定的,你可以通過調校警報簡表來使其個性化。Cisco 的NetRanger 也是 一樣。NetRanger 的資料庫其實就是一系列的HTML文件。有一個可擴展的HTML資料庫非常好,你可以針對每類攻擊,把Cisco 的HTML文件換成你制定的事件反應操作流程,這樣,你就可以把適合本企業的反應操作制定到企業的管理中了。 這樣我們就面對了一個新問題:警報的定義。IDS 認為是初級的警報,有可能是你企業的進階警報,反之亦然。例如,一 個statd 緩衝器過時操作、某個特定的UNIX漏洞等,可能對UNIX伺服器特別有效,但對NT機器則毫無作用。所以,雖然大部分 的IDS把這種漏洞歸類為進階警報,但如果你的企業使用NT機器,那麼,這樣的警報就沒有絲毫價值。當然,如果你仍然想知 道是誰試圖攻擊你的網路,這種報警還是有作用的。但事實是,知道哪些漏洞對你的企業會造成威脅才能更準確的避免損失的 發生。 事件處理:攻擊事件發生到你頭上時, 你應該作什麼? 現在你已選定或新增了有意義警報的IDS,你也寫明了當一線監控員收到這些警報時要進行什麼樣的操作,但餘下的一個 問題尚待商榷:真正發生安全事故時,你該做什麼?例如,假設CMDS已為輸入資料的文員陳小姐定出了她的用戶簡表,並已 警告你陳小姐試圖以管理員身份登錄到你的域控制器。天啊,這是真正的警報!又或者是,某黑客組織"du jour "在你的Web 伺 服器上針對從未公開的漏洞進行攻擊,並把你的主頁換上了他們的得意傑作。現在輪到你了,你該做什麼?把伺服器關掉?把 硬碟格式化,重新安裝操作系統?在你的IDS 增加自動反應功能,以便以後再有這樣的攻擊就堵塞此漏洞?問問供應商有沒有 對付這種漏洞的修正檔? 事件處理是件很令人頭疼的事情,雖然每種IDS都有能力按照警報的種類、嚴重程度及目標主機作出反應,但IDS在事件處 理方面對你並沒有多大的幫助。例如,NetProwler 的自動反應是傳呼你或發送SNMP軟中斷。但值得注意的是,自動反應也存在 缺點:它也可以被利用反過來攻擊你。例如,如果攻擊者知道拒絕服務攻擊會導致系統自動傳呼,他就有可能改變策略,他會 從半夜到凌晨六點每隔一小時發動一次拒絕服務攻擊。對此種攻擊,企業不會蒙受什麼損失,但要提醒你的是:你的管理人員 第二天上班時會睡眼惺忪,因為昨夜他的傳呼機每隔一小時就會響一次! 有時候,你想保留"犯罪現場"的原貌,但如果操作員的第一反應就是關掉被破壞的系統,那麼你就有可能失去有價值的罪 證。你有沒有想過如何保留IDS日誌文件、被攻擊系統的硬碟內容、甚至是被破壞系統的存儲圖像?如果你決定起訴,你知道 法庭需要你提供什麼?這個級別的反應在什麼時候最適用?所以,有書面的事件處理程序對正確應付IDS所提供的信息是非常 有用的。沒有這樣的書面說明,操作員及管理人員在發生事故後作善後處理時就有可能會做錯事。 事件反應計劃:做好準備 有效的事件反應計劃的第一要素是"易懂、易查、易練習"。 如果你的反應計劃像一部放在桌上的"大英字典",就可能沒有 人敢去翻閱。如同災難救援政策一樣,事件反應計劃要經常演練,最好的程序是直接與IDS警報結合。但遺憾的是,現在沒有 一個IDS供應商能夠有效地把實時反應程序融和在系統之中。NAI的Active Security Suite 在這方面領先於同類產品,因為他的 Event Orchestrator 可以按照不同的警報觸發一系列的行動。其它系統(例如 Cisco 的NetRanger)不過融和了如HP OpenView 等網 路管理工具,而把反應行動留給你去處理。 所以,大部分IDS的自動反應或建議只是事件反應計劃中很小的一部分。關鍵在於你企業的操作人員及管理人員想不想去 處理警報,並能依據緊急反應程序去實施正確的處理辦法。 報告過程: 管理的角度 現在假設你已有了很好的事件反應計劃,也訓練了操作人員,而且對IDS的工作表現也很滿意,那麼,最後一點你需要注 意的就是報告。既然你花了那麼大的力氣佈署IDS來保護你的網路,你也希望能夠產生有用的報表(為你自己,也為管理 層),看看IDS究竟看到了什麼,是不是不遺餘力地趕走那些令人討厭的黑客。這樣的報表對於加強網路保護措施是非常重要 的。 IDS的最大用處是標出那些最常見的攻擊模式,並提醒你要防範這些攻擊。因為要把你所有的系統安裝上最新的修正檔是 很不容易做到的,但是在用了IDS後,通過搜尋最普遍的攻擊模式,你就可以有針對性地建立防範措施。 例如,如果你常常受到拒絕服務SYN風暴攻擊,你就會在防火牆上安裝保護SYN風暴的措施。或者是,如果你發現某人利 用一個Microsoft 的新漏洞攻擊你的NT伺服器,你可能想加快安裝最新的Microsoft修正檔。雖然IDS 可以提供你如"漏洞排行 榜"或是哪些是最易受攻擊的伺服器等信息,但你仍需要就是否採取行動與安全員工進行商議並做出決定。如果你不能將報表 結果付諸行動,當真正發生事故時,你就會悔之晚矣。 24x7 的安全 在過去的一年中,入侵檢測技術的價值不斷提高,用途更為廣泛。即將推向市場的主機型及網路型結合的探測器,以及針 對網路需要的自動配置及調校的技術改良都使你部署IDS更為方便。IDS在一天24小時,一星期七天看守你網路。 最後要提醒你的是,你仍是決定是否安裝監控系統並對警報作出適當反應的決策者。在有事件發生前,先把你的IDS精細 調校並安裝在網路之中,寫下監控指導及報警準則,並制定事件的相關反應行動,這樣你就把花費在IDS上的投資用到極致。 僅僅使用"即插即用"的手法來使用IDS將會是你犯的最大一個錯誤。 |