隨著網絡技術的發展,網絡環境變得越來越復雜,對于網絡安全來說,單純的防火墻技術暴露出明顯的不足和弱點,一個有效的解決途徑就是入侵檢測系統IDS(Intrusion Detection System)。入侵檢測技術是一種主動保護自己免受攻擊的一種網絡安全技術。作為防火墻的合理補充,入侵檢測技術能夠幫助系統對付網絡攻擊,擴展了系統管理員的安全管理能力(包括安全審計、監視、攻擊識別和響應),提高了信息安全基礎結構的完整性。它從計算機網絡系統中的若干關鍵點收集信息,并分析這些信息。入侵檢測被認為是防火墻之后的第二道安全閘門,在不影響網絡性能的情況下能對網絡進行監測。它可以防止或減輕上述的網絡威脅。
20世紀80年代初期,安全專家認為:“入侵是指未經授權蓄意嘗試訪問信息、篡改信息、使系統不可用的行為。”美國大學安全專家將入侵定義為“非法進入信息系統,包括違反信息系統的安全策略或法律保護條例的動作。”我們認為,入侵應與受害目標相關聯,該受害目標可以是一個大的系統或單個對象。判斷與目標相關的操作是入侵的依據是:對目標的操作是否超出看目標的安全策略范圍。因此,入侵是違背訪問目標的安全策略的行為。入侵檢測通過收集操作系統、系統程序、應用程序、網絡包等信息,發現系統中違背安全策略或危及系統安全的行為。具有入侵檢測功能的系統稱為入侵檢測系統,簡稱IDS。
最在的入侵檢測模型是由Denning給出的,該模型主要根據主機系統審計記錄數據,生成有關系統的若干輪廓,并檢測輪廓的變化差異,發現系統的入侵行為,如圖1所示。
現在,入侵行為的種類在不斷增多,許多攻擊都是經過長時期準備的。面對這種情況,入侵檢測系統的不同功能組件之間、不同IDS之間共享這類攻擊信息是十分重要的。于是,一種通用的入侵檢測框架模型(簡稱CIDF)就被提出來了。該模型認為入侵檢測系統由事件產生器(event genertors)、事件分析器(event analyzers)、響應單元(response units)和事件數據庫(event database)組成,如圖2所示。
CIDF將入侵檢測系統需要分析的數據統稱為事件,它可以是網絡中的數據包,也可以是從系統日志等其他途徑得到的信息。事件產生器從整個計算環境中獲得事件,并向系統的其他部分提供事件。事件分析器分析所得到的數據,并產生分析結果。響應單元對分析結果做出反應,如切斷網絡連接,改變文件屬性,簡單報警等。事件數據庫存放各種中間和最終數據,數據存放的形式既可以是復雜的數據庫,也可以是簡單的文本文件。CIDF模型具有很強的擴展性,目前已經得到廣泛認同。
表1 HIDS和NIDS性能比較
入侵檢測系統在網絡安全保障過程中扮演類似“預警機”或“安全巡邏人員”的角色,入侵檢測系統的直接目的不是阻止入侵事件的發生,而是通過檢測技術來發現系統中企圖或違背安全策略的行為,其作用表現為以下幾個方面:
1)發現受保護系統中的入侵行為或異常行為。
2)檢驗安全保護措施的有效性。
3)分析受保護系統所面臨的威脅。
4)有利于阻止安全事件擴大,及時報警觸發網絡安全應急響應。
5)可以為網絡安全策略的制定提供重要指導。
6)報警信息可用作網絡犯罪取證。
基于誤用的入侵檢測通常稱為基于特征的入侵檢測方法,是指根據已知的入侵模式檢測入侵行為。攻擊者常常利用系統和應用軟件中的漏洞技術進行攻擊,而這些基于漏洞的攻擊方式具有某種特征模式。如果入侵者的攻擊方法恰好匹配上檢測系統中的特征模式,則入侵行為可立即被檢測到,如圖3所示。
雖然,誤用入侵檢測依賴于攻擊模式庫,因此,這種采用誤用入侵檢測技術的IDS產品的檢測能力就取決于攻擊模式庫的大小以及攻擊方法的覆蓋面。如果攻擊模式庫太小,則IDS的有效性就大打折扣。而如果攻擊模式庫過大。則IDS的性能會受到影響。
基于上述分析,誤用入侵檢測的前提條件是,入侵行為能夠按某種方法進行特征編碼,而入侵檢測的過程實際上就是模式匹配的過程。根據入侵特征描述的方法或構造技術,誤用檢測方法可以進一步細分。
異常檢測方法通過對計算機或網絡資源的統計分析,建立系統正常行為的“軌跡”,定義一組系統正常情況的閾值,然后將系統運行時的數值與定義的“正常”情況相比較,得出是否有被攻擊的跡象,如圖4所示。
但是,異常檢測的前提是異常行為包括入侵行為。理想情況下,異常行為集合等同于入侵行為集合,此時,如果IDS能夠檢測所有的異常行為,就表明能夠檢測所有的入侵行為。但是在現實中,入侵行為集合通常不等同于異常行為集合。事實上,行為有以下4種狀況:
1)行為是入侵行為,但不表現異常;
2)行為不是入侵行為,卻表現異常;
3)行為既不是入侵行為,也不表現異常;
4)行為是入侵行為,且表現異常。
異常檢測方法的基本思路是構造異常行為集合,從中發現入侵行為。異常檢測依賴于異常模型的建立,不同模型可構成不同的檢測方法。
一個入侵檢測系統主要由以下功能模塊組成:數據采集模塊、入侵分析引擎模塊、應急處理模塊、管理配置模塊和相關的輔助模塊。數據采集模塊的功能是為入侵分析引擎模塊提供分析用的數據,包括操作系統的審計日志、應用程序的運行日志和網絡數據包等。入侵分析引擎模塊的功能是一句輔助模塊提供的信息(如攻擊模式),根據一定的算法對手機系統的核心模塊。管理配置模塊的功能是為其他模塊提供配置服務,是IDS系統中的模塊與用戶的借口。應急吃力模塊的功能是發生入侵后,提供緊急響應服務,例如關閉網絡提供響應的信息,例如攻擊特征庫、漏洞信息等。圖5給出了一個通用的入侵檢測系統結構。
圖5中的系統是一個廣泛的概念,可以使工作站、網段、服務器、防火墻、Web、服務器、企業網等。雖然每一種IDS在概念上是一致的,但在具體實現是,它在采用的分析數據方法、采集數據以及保護對象等關鍵方面還是有所區別。根據IDS的檢測數據來源和它的安全作用范圍,可將IDS分為三大類:第一類是基于主機的入侵檢測系統(簡稱HIDS),即統統分析主機的信息來檢測入侵行為;第二類是基于網絡的入侵檢測系統(簡稱NIDS),即通過獲取網絡通信中的數據包,然后對這些數據包進行攻擊特征掃描或異常建模來發現入侵行為;第三類是分布式入侵檢測系統(簡稱DIDS),DIDS從多臺主機、多個網段采集檢測數據,或者手機單個IDS的報警信息,然后根據手機到的信息進行綜合分析,以發現入侵行為。
圖1 入侵檢測模型
圖2 CIDF各組之間的關系到圖
圖4 異常檢測原理圖
圖5 通用的入侵檢測系統示意圖
圖6 基于主機的入侵檢測系統
圖7 基于網絡的入侵檢測系統
基于主機的入侵檢測系統,簡稱HIDS。HIDS手機主機系統的日志文件、系統調用以及應用程序的使用、系統資源、網絡通信和用戶使用等信息,然后分析這些信息是否包含攻擊特征或異常情況,并依此來判斷該主機是否受到入侵。由于入侵行為會引起主機系統的變化,因此在實際的HIDS產品中,CPU利用率、內存利用率、磁盤空間大小、網絡端口使用情況、注冊表、文件的完整性、進程信息、系統調用等常作為識別入侵事件的依據。圖6為基于主機的入侵檢測系統的結構示意圖。
基于網絡的入侵檢測系統,簡稱NIDS。NIDS通過偵聽網絡系統,捕獲網絡數據包,并依據網絡數據包是否包含攻擊特征,或者網絡通信流是否異常來識別入侵行為。NIDS通常由一組用途單一的計算機組成,其構成多分為兩部分:檢測器和管理控制器。檢測器分布在網絡中的不同區域,通過偵聽(嗅探)方式獲取網絡包,探測器將檢測到的攻擊行為形成一個報警時間。向管理控制器發送報警信息。報告發生入侵行為。管理控制器可監控不同網絡區域的探測器,接收來自探測器的報警信息。圖7為基于網絡的入侵檢測系統的結構示意圖。
隨著網絡系統結構的復雜化和大型化,帶來許多新的入侵檢測問題:
1)系統的漏銅分散在網絡中的各個主機上,這些漏洞有可能被攻擊者一起用來攻擊網絡,僅依靠基于主機或網絡的IDS不會發現入侵行為。
2)入侵行為不再是單一的行為,而是相互協作的入侵行為。
3)入侵檢測所依靠的數據來源分散化,收集原始的檢測數據變得困難。如交換型網絡使監聽網絡數據包受到限制。
4)網絡速度傳輸加快,網絡的流量增大,集中處理原始數據的方式往往造成檢測瓶頸,從而導致漏檢。
面對這些新的入侵檢測問題,分析式入侵檢測系統應運而生,它可以跨越多個子網檢測攻擊行為,特別是大型網絡。分布式入侵檢測系統可以分成兩種類型,即基于主機檢測的分布式入侵檢測
系統和基于網絡的分布式入侵檢測系統。下面分別敘述。
基于主機檢測的分布式入侵檢測系統,簡稱HDIDS,其結構分為兩個部分;主機探測器和入侵管理控制器。HDIDS將主機探測器按層次、分區域地配置和管理、把它們集成為一個可用于監控、保護分布在網絡區域中的主機系統。HDIDS用于保護網絡的關鍵服務器或其他具有監控、保護分布在網絡區域中的主機系統。HDIDS用于保護網絡的關鍵服務器或其他具有敏感信息的系統,利用主機的系統資源、系統調用、審計日志等信息,判斷主機系統的運行是否遵循安全規則,在實際工作過程中,主機探測器多以安全代理(Agent)形式直接安裝在每個被保護的主機系統上,并通過網絡中的系統管理控制臺進行遠程控制。這種集中式的控制方式,便于對系統進行狀態監控、管理以及對檢測模塊的軟件進行更新。HDIDS的典型配置如圖8所示。
圖8 基于主機入侵檢測系統典型配置
HDIDS只能保護主機的安全,而且要在每個受保護主機系統上都配置一個主機的探測器,如果當網絡中血藥保護的主機系統比較多時,其安裝配置工作非常大。此外,對于一些復雜攻擊,主機探測器無能為力。因此,需要使用基于網絡的分布式入侵檢測系統,簡稱NDIDS。NDIDS結構分為兩部分:網絡探測器和管理控制器,如圖9所示。
圖9 網絡入侵檢測系統功能模塊的分布式配置及管理
網絡探測器部署在重要的網絡區域,如服務器所在的網段,對于手機網絡通信數據和業務數據流,通過采用異常和無用兩種方法對收集到信息進行分析,若出現攻擊或異常網絡行為,就向管理控制器發送報警信息。NDIDS一般適用于大規模網絡或者是地理區域分散的網絡,采用這種結構有利于實現網絡的分布式安全管理。現在市場上的網絡入侵系統一般支持分布式結構。
綜上所述,分布式IDS系統結構能夠將基于主機和網絡的系統結構結合起來,檢測所用到的數據源豐富,可以克服前兩者的弱點。但是,由于是分布式的結構,所以帶來了新的弱點。例如,傳輸安全事件過程中增加了通信的安全問題處理,安全管理配置復雜度增加等。
入侵檢測系統的評估指標有:
1)可靠性。由于入侵檢測系統血藥不間斷地檢測受保護系統,因策,要求入侵檢測系統具有容錯能力,可以連續運行。
2)可用性。入侵檢測系統運行開銷要盡量小,特別是基于主機的入侵檢測系統,不能影響到主機和網絡的系統性能。
3)可擴展性。該指標主要評價入侵檢測系統配置修改和安裝部署的能力。以適應新的攻擊技術方法不斷出現和系統環境的變遷要求。
4)時效性。時效性要求入侵檢測系統必須盡快的分析報警數據,并將分析結果傳送到報警控制臺,以使系統安全管理者能夠入侵攻擊尚未造成更大危害以前做出反應,組織攻擊者破壞審計系統甚至入侵檢測系統的企圖。和上面的處理性能因素相比,該指標的及時性要求更高。它不僅要求入侵檢測系統的處理速度要盡可能地快,而且要求傳播、反應檢測結果信息的時間盡可能少,能實時發現入侵企圖,以便及時制止入侵活動和限制破壞程度。
5)準確性。準確性是指入侵檢測系統能正確檢測出系統入侵活動的能力。當一個人入侵檢測系統的檢測部準確時,它就可以吧系統中的合法活動當做入侵行為,或者把入侵行為作為正常行為,這是就出現誤報警和漏報警現象。使用的入侵檢測系統應具有低的誤報警率和漏報警率。
6)安全性。與其他系統一樣,入侵檢測系統本身也往往存在安全漏洞。若對入侵檢測系統攻擊成功,則直接導致報警生靈,使攻擊者的攻擊行為無法被記錄。因此,入侵檢測系統的安全性要求具有保護自身的安全功能,具有抗攻擊干擾能力。
在入侵檢測技術發展的同時,入侵技術也在更新,攻擊者將試圖繞過入侵檢測系統(IDS)或攻擊IDS系統。交換技術的發展以及通過加密信道的數據通信使通過共享網段偵聽的網絡數據采集方法顯得不足,而大通信量對數據分析也提出了新的要求。入侵技術的發展與演化主要反映在下列幾個方面:
(1)入侵的綜合化與復雜化。入侵的手段有多種,入侵者往往采取一種攻擊手段。由于網絡防范技術的多重化,攻擊的難度增加,使得入侵者在實施入侵或攻擊時往往同時采取多種入侵的手段,以保證入侵的成功幾率,并可在攻擊實施的初期掩蓋攻擊或入侵的真實目的。
(2)入侵主體對象的間接化,即實施入侵與攻擊的主體的隱蔽化。通過一定的技術,可掩蓋攻擊主體的源地址及主機位置。即使用了隱蔽技術后,對于被攻擊對象攻擊的主體是無法直接確定的。
(3)入侵的規模擴大。對于網絡的入侵與攻擊,在其初期往往是針對于某公司或一個網站,其攻擊的目的可能為某些網絡技術愛好者的獵奇行為,也不排除商業的盜竊與破壞行為。由于戰爭對電子技術與網絡技術的依賴性越來越大,隨之產生、發展、逐步升級到電子戰與信息戰。對于信息戰,無論其規模與技術都與一般意義上的計算機網絡的入侵與攻擊都不可相提并論。信息戰的成敗與國家主干通信網絡的安全是與任何主權國家領土安全一樣的國家安全。
(4)入侵技術的分布化。以往常用的入侵與攻擊行為往往由單機執行。由于防范技術的發展使得此類行為不能奏效。所謂的分布式拒絕服務(DDoS)在很短時間內可造成被攻擊主機的癱瘓。且此類分布式攻擊的單機信息模式與正常通信無差異,所以往往在攻擊發動的初期不易被確認。分布式攻擊是近期最常用的攻擊手段。
(5)攻擊對象的轉移。入侵與攻擊常以網絡為侵犯的主體,但近期來的攻擊行為卻發生了策略性的改變,由攻擊網絡改為攻擊網絡的防護系統,且有愈演愈烈的趨勢。現已有專門針對IDS作攻擊的報道。攻擊者詳細地分析了IDS的審計方式、特征描述、通信模式找出IDS的弱點,然后加以攻擊。
入侵檢測系統還存在相當多的問題,這些問題大多是目前入侵檢測系統的結構所難以克服的。
(1)攻擊者不斷增加的知識,日趨成熟多樣自動化工具,以及越來越復雜細致的攻擊手法。入侵檢測系統必須不斷跟蹤最新的安全技術,才能不致被攻擊者遠遠超越。
(2)惡意信息采用加密的方法傳輸。網絡入侵檢測系統通過匹配網絡數據包發現攻擊行為,入侵檢測系統往往假設攻擊信息是通過明文傳輸的,因此對信息的稍加改變便可能騙過入侵檢測系統的檢測。
(3)不能知道安全策略的內容。必須協調、適應多樣性的環境中的不同的安全策略。網絡及其中的設備越來越多樣化,入侵檢測系統要能有所定制以更適應多樣的環境要求。
(4)不斷增大的網絡流量。用戶往往要求入侵檢測系統盡可能快的報警,因此需要對獲得的數據進行實時的分析,這導致對所在系統的要求越來越高,商業產品一般都建議采用當前最好的硬件環境。盡管如此,對百兆以上的流量,單一的入侵檢測系統系統仍很難應付。可以想見,隨著網絡流量的進一步加大(許多大型ICP目前都有數百兆的帶寬),對入侵檢測系統將提出更大的挑戰,在PC機上運行純軟件系統的方式需要突破。
(5)缺乏廣泛接受的術語和概念框架。標準的缺乏使得互通、互操作幾乎不可能。
(6)不恰當的自動反應存在風險。一般的IDS都有入侵響應的功能,如記錄日志,發送告警信息給console、發送警告郵件,防火墻互動等,敵手可以利用IDS的響應進行間接攻擊,使入侵日志迅速增加,塞滿硬盤;發送大量的警告信息,使管理員無法發現真正的攻擊者,并占用大量的cpu資源;發送大量的告警郵件,占滿告警信箱或硬盤,并占用接收警告郵件服務器的系統資源;發送虛假的警告信息,使防火墻錯誤配置,如攻擊者假冒大量不同的IP進行模擬攻擊,而入侵檢測系統系統自動配置防火墻將這些實際上并沒有進行任何攻擊的地址都過濾掉,造成一些正常的IP無法訪問等。
(7)自身的安全問題。入侵檢測系統本身也往往存在安全漏洞。因為IDS是安裝在一定的操作系統之上,操作系統本身存在漏洞或IDS自身防御力差,就可能受到smurf、synflood等攻擊。此類攻擊很有可能造成IDS的探測器丟包、失效或不能正常工作。
(8)存在大量的誤報和漏報。采用當前的技術及模型,完美的入侵檢測系統無法實現。這種現象存在的主要原因是:入侵檢測系統必須清楚的了解所有操作系統網絡協議的運作情況,甚至細節,才能準確的進行分析。而不同操作系統之間,甚至同一操作系統的不同版本之間對協議處理的細節均有所不同。而力求全面則必然違背入侵檢測系統高效工作的原則。
(9)缺乏客觀的評估與測試信息的標準。
今后的入侵檢測技術大致可朝下述幾個方向發展:
(1)分布式入侵檢測:傳統的IDS局限于單一的主機或網絡架構,對異構系統及大規模的網絡檢測明顯不足,不同的IDS系統之間不能協同工作。為解決這一問題,需要發展分布式入侵檢測技術與通用入侵檢測架構。第一層含義,即針對分布式網絡攻擊的檢測方法;第二層含義即使用分布式的方法來檢測分布式的攻擊,其中的關鍵技術為檢測信息的協同處理與入侵攻擊的全局信息的提取。
(2)智能化入侵檢測:即使用智能化的方法與手段來進行入侵檢測。所謂的智能化方法,現階段常用的有神經網絡、遺傳算法、模糊技術、免疫原理等方法,這些方法常用于入侵特征的辨識與泛化。利用專家系統的思想來構建入侵檢測系統也是常用的方法之一。特別是具有自學習能力的專家系統,實現了知識庫的不斷更新與擴展,使設計的入侵檢測系統的防范能力不斷增強,應具有更廣泛的應用前景。應用智能體的概念來進行入侵檢測的嘗試也已有報道。較為一致的解決方案應為高效常規意義下的入侵檢測系統與具有智能檢測功能的檢測軟件或模塊的結合使用。目前盡管已經有智能體、神經網絡與遺傳算法在入侵檢測領域應用研究,但這只是一些嘗試性的研究工作,仍需對智能化的IDS加以進一步的研究以解決其自學習與自適應能力。
(3)應用層入侵檢測:許多入侵的語義只有在應用層才能理解,而目前的IDS僅能檢測如Web之類的通用協議,而不能處理如Lotus Notes、數據庫系統等其他的應用系統。
(4)高速網絡的入侵檢測:在IDS中,截獲網絡的每一個數據包,并分析、匹配其中是否具有某種攻擊的特征需要花費大量的時間和系統資源,因此大部分現有的IDS只有幾十兆的檢測速度,隨著百兆、甚至千兆網絡的大量應用,需要研究高速網絡的入侵檢測。
(5)入侵檢測系統的標準化:在大型網絡中,網絡的不同部分可能使用了多種入侵檢測系統,甚至還有防火墻、漏洞掃描等其他類別的安全設備,這些入侵檢測系統之間以及IDS和其他安全組件之間如何交換信息,共同協作來發現攻擊、作出響應并阻止攻擊是關系整個系統安全性的重要因素。例如,漏洞掃描程序例行的試探攻擊就不應該觸發IDS的報警;而利用偽造的源地址進行攻擊,就可能聯動防火墻關閉服務從而導致拒絕服務,這也是互動系統需要考慮的問題。可以建立新的檢測模型,使不同的IDS產品可以協同工作。
目前,國內外有很多家研究機構在從事IDS的研究工作,不少廠家也開發出了IDS產品。但總的看來,現在對IDS的研究還不夠深入,產品的性能也有待提高。隨著用戶對網絡帶寬、高速流量等需求不斷增加,入侵檢測技術迫切需要進一步創新和性能改進以適應高速環境下的安全防護。同時目前入侵檢測隨著功能的增強角色也在悄悄變化,其本身獨特的技術優勢也更多為安全審計,入侵管理平臺等提供支撐,因此融合多種功能、功能更強是IDS重要生命力。技術是保障IDS順利發展的核心。總之,入侵檢測系統作為一種主動的安全防護技術,提供了對內部攻擊、外部攻擊和誤操作的實時保護,在網絡系統受到危害之前攔截和響應入侵。隨著網絡通信技術安全性的要求越來越高,為給電子商務等網絡應用提供可靠服務,而由于入侵檢測系統能夠從網絡安全的立體縱深、多層次防御的角度出發提供安全服務,必將進一步受到人們的高度重視。
[1]馬利,姚永雷.計算機網絡安全[M].清華大學出版社,2010,8,1.
[2]鮮永菊.入侵檢測[M].西安電子科技大學出版社,2009,8,1.
[3]魏紅霞.入侵檢測系統探討[J].硅谷,2012,2.
[4]中國計算機學會計算機安全專業委員會.信息與網絡安全研究新進展——全國計算機安全學術論文集(第二十五卷)[M].中國科學技術大學出版社,2010,9,1.
[5]莊建忠.李蕊基于入侵檢測系統IDS構建的研究[J].農業網絡信息,2009,7.