關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 一個基于移動Agent的分布式入侵檢測模型

一個基于移動Agent的分布式入侵檢測模型

作者: 時間:2016-12-22 來源:網(wǎng)絡(luò) 收藏
摘要:在分析了入侵檢測系統(tǒng)的基本狀況和移動代理的特點(diǎn)后,指出了目前入侵檢測系統(tǒng)存在的不足,提出了基于移動代理的分布入侵檢測模型(MADIDS)。在這個入侵檢測系統(tǒng)中,引入了移動代理技術(shù),使入侵檢測系統(tǒng)能夠跨平臺使用;將基于主機(jī)和基于網(wǎng)絡(luò)的檢測結(jié)合起來,配置多個檢測部件處理,各檢測部件代理側(cè)重某一方面的工作;并且將所有配置信息存放在數(shù)據(jù)庫中,實(shí)現(xiàn)了數(shù)據(jù)和處理的分離、數(shù)據(jù)收集、入侵檢測和實(shí)時響應(yīng)的分布化。關(guān)鍵詞:入侵檢測 分布式 移動代理隨著計算機(jī)技術(shù)尤其是網(wǎng)絡(luò)技術(shù)的發(fā)展,計算機(jī)系統(tǒng)已經(jīng)從獨(dú)立的主機(jī)發(fā)展到復(fù)雜的、互連的開放式的系統(tǒng),這給人們在信息利用和資源共享上帶來了無與倫比的便利。與此同時,人們又面臨著由于入侵而引發(fā)的一系列的安全問題的困擾。傳統(tǒng)的安全防御策略(如訪問控制機(jī)制、加密技術(shù)、防火墻技術(shù)等均屬于靜態(tài)的安全防御技術(shù))在某種程度上無法滿足越來越苛記得的安全需求。正是由于靜態(tài)的安全技術(shù)本自身存在著不可克服的缺點(diǎn),從而引出了入侵檢測這一安全領(lǐng)域的新課題的誕生。入侵檢測是動態(tài)安全技術(shù)的最核心技術(shù)之一,是防火墻的合理補(bǔ)充,是安全防御體系的一個重要組成部分。1 入侵檢測系統(tǒng)概述1.1 入侵及入侵檢測(Intrusion Detection)入侵是指任何企圖破壞資源的完整性、保密性和有效性的行為,也指違背系統(tǒng)安全策略的任何事件。入侵行為不僅僅指來自外部的攻擊,同時也包括內(nèi)部用戶的未授權(quán)行為,有時內(nèi)部人員濫用他們特權(quán)的攻擊是系統(tǒng)安全的最大隱患。入侵檢測是指通過從計算機(jī)網(wǎng)絡(luò)或計算機(jī)系統(tǒng)中的若干關(guān)鍵點(diǎn)收集信息并對其進(jìn)行分析,從中發(fā)現(xiàn)網(wǎng)絡(luò)或系統(tǒng)中是否有違反安全策略的行為和遭到攻擊的跡象,同時作出響應(yīng)。入侵檢測系統(tǒng)(IDS:Intrusion Detection System)是實(shí)現(xiàn)入侵檢測功能的一系列的軟件、硬件的組合,它是入侵檢測的具體實(shí)現(xiàn)。入侵檢測系統(tǒng)就其最基本的形式來講,可以說是一個分類器,它是根據(jù)系統(tǒng)的安全策略來對收集到的事件/狀態(tài)信息進(jìn)行分類處理,從而判斷出入侵和非入侵行為。1.2 入侵檢測系統(tǒng)的分類按獲得原始數(shù)據(jù)的方法,入侵檢測系統(tǒng)可分為基于網(wǎng)絡(luò)的入侵檢測系統(tǒng)和基于主機(jī)的入侵檢測系統(tǒng)兩種。通常,基于主機(jī)的IDS可監(jiān)測系統(tǒng)、事件和Window NT下的安全記錄以及UNIX環(huán)境下的系統(tǒng)記錄。當(dāng)有文件發(fā)生變化時,IDS將新的記錄條目與攻擊標(biāo)記相比較,看其是否匹配。如果匹配,系統(tǒng)就會向管理員報警并向別的目標(biāo)報告,以采取措施?;诰W(wǎng)絡(luò)的入侵檢測系統(tǒng)使用原始網(wǎng)絡(luò)包作為數(shù)據(jù)源?;诰W(wǎng)絡(luò)的IDS通常利用一個運(yùn)行在隨機(jī)模式下網(wǎng)絡(luò)的適配器來實(shí)時監(jiān)視并分析通過網(wǎng)絡(luò)的所有通信業(yè)務(wù)。1.3 現(xiàn)有入侵檢測系統(tǒng)的不足(1)入侵檢測系統(tǒng)不能很好的檢測所有的數(shù)據(jù)包?;诰W(wǎng)絡(luò)的入侵檢測系統(tǒng)難以跟上網(wǎng)絡(luò)速度的發(fā)展。截獲網(wǎng)絡(luò)的每一個數(shù)據(jù)包,并分析匹配是否具有某種攻擊的特征、需要花費(fèi)時間系統(tǒng)資源?,F(xiàn)在很多網(wǎng)絡(luò)都是100M甚至千兆網(wǎng)絡(luò),網(wǎng)絡(luò)速度的發(fā)展遠(yuǎn)遠(yuǎn)超過了數(shù)據(jù)包模式分析技術(shù)發(fā)展的速度。(2)攻擊特征庫的更新不及時,絕大多數(shù)的入侵檢測系統(tǒng)都是適用模式匹配的分析方法,這需要攻擊特征庫的特征值應(yīng)該是最新的。但現(xiàn)在很多入侵檢測系統(tǒng)沒有提供某種如“推技術(shù)”的方法來時刻更新攻擊特征。在如今每天都有新漏洞發(fā)布、每天都有新的攻擊方法產(chǎn)生的情況下顯然不能滿足安全需求。(3)檢測分析方法單一。攻擊方法的越來越復(fù)雜,單一的基于模式匹配或統(tǒng)計的分析方法已經(jīng)難以發(fā)現(xiàn)某一些攻擊?,F(xiàn)在幾乎所有的入侵檢測系統(tǒng)都使用了單一的分析方法。(4)不同的入侵檢測系統(tǒng)之間不能互操作。在大型網(wǎng)絡(luò)中,網(wǎng)絡(luò)不同的部分可能使用了不同的入侵檢測系統(tǒng),但現(xiàn)在的入侵檢測系統(tǒng)之間不能夠交換信息,使得發(fā)現(xiàn)了攻擊時難以找到攻擊的源頭,甚至給入侵者制造了攻擊的漏洞。(5)不能和其他網(wǎng)絡(luò)安全產(chǎn)品互操作。入侵檢測不是安全的終極武器,一個安全的網(wǎng)絡(luò)中應(yīng)該根據(jù)安全政策使用多種安全產(chǎn)品。但入侵檢測系統(tǒng)不能很好的和其他安全產(chǎn)品協(xié)作。比如,一個網(wǎng)絡(luò)中每兩個小時自動運(yùn)行一次漏洞掃描程序,如果他們不能夠互操作,入侵檢測系統(tǒng)將每兩個小時產(chǎn)生一次警報。(6)結(jié)構(gòu)存在問題?,F(xiàn)在的很多入侵檢測系統(tǒng)是從原來的基于網(wǎng)絡(luò)或基于主機(jī)的入侵檢測系統(tǒng)不斷改進(jìn)而得來的,在體系結(jié)構(gòu)等方面不能滿足分布、開放的要求。2 在入侵檢測系統(tǒng)中的應(yīng)用移動代理2.1 移動代理及其特點(diǎn)移動代理與普通程序的最大不同就是可以在運(yùn)行期間在虛擬機(jī)之間遷移而無意中止程序的執(zhí)行。通過在各個操作系統(tǒng)中運(yùn)行移動代理的虛擬機(jī),可以將硬件和操作系統(tǒng)的平臺細(xì)節(jié)屏蔽,使代理獲得一個統(tǒng)一的界面。在這個基礎(chǔ)上,代理可以在各個平臺之間自由移動。2.2 將移動代理應(yīng)用于入侵檢測的優(yōu)點(diǎn)(1)移動邏輯計算,而不是數(shù)據(jù),從而減少網(wǎng)絡(luò)流量。以往的入侵檢測系統(tǒng),大多是分散收集數(shù)據(jù)包,而后交由控制中心分析是否有攻擊出現(xiàn),這種檢測系統(tǒng)將增加網(wǎng)絡(luò)負(fù)擔(dān),加大了流量。移動代理的使用是對RPC(遠(yuǎn)程過程調(diào)用)思想的一個擴(kuò)展,遠(yuǎn)程代碼保留在本地,只需要傳遞函數(shù)參數(shù),意味著在各節(jié)點(diǎn)收集的大量初始信息可以在本地處理,這樣就增加了入侵檢測系統(tǒng)的效率。(2)負(fù)載平衡。如果在一個中心接點(diǎn)分析數(shù)據(jù)包,將會大大增加中心加點(diǎn)的計算工作量,是入侵檢測系統(tǒng)的一個瓶頸,效率降低,檢測處理時間多。根據(jù)RPC的思想,移動代理可將較大的計算工作分布在多個處理器上并行執(zhí)行,從而避免了瓶頸問題的出現(xiàn)。(3)動態(tài)可擴(kuò)展性。一個長期有效的入侵檢測系統(tǒng)必須具有可擴(kuò)展性,跟蹤入侵方法和入侵技術(shù),及時擴(kuò)充對應(yīng)的檢測技術(shù)。代理是自治的,在一定程序上是松散捆綁的,雖然句柄之間有一定的聯(lián)系,它們之間相互是可以獨(dú)立操作的。因此,即使系統(tǒng)很復(fù)雜,在不影響其他代理正常工作的情況下,單個的功能模塊也能夠被刪除、更改,甚至改進(jìn)??梢?,這種系統(tǒng)也內(nèi)含著一種容錯機(jī)制。由此可見在入侵檢測領(lǐng)域,移動代理技術(shù)有著一般代理所不可比擬的優(yōu)勢。本文的目的就是提出一個基于移動代理技術(shù)的入侵檢測模型,并對其進(jìn)行分析設(shè)計。3 基于移動代理的分布式入侵檢測系統(tǒng)MADIDS3.1 系統(tǒng)框架MADIDS是Mobile Agent-based Distributed Intrusion Detection System(基于移動代理的分布式入侵檢測系統(tǒng))的縮寫。MADIDS系統(tǒng)檢測框架如圖1所示。從圖2中,可以看出系統(tǒng)層次雖然可以是多層,但功能級別只有兩層:協(xié)調(diào)中心級和檢測目標(biāo)級。檢測目標(biāo)級的功能主要是針對需要安全保護(hù)的主機(jī)進(jìn)行入侵檢測,不是對于所有的主機(jī)都設(shè)定,避免不必要的資源占有,減少投資。協(xié)調(diào)中心級主要負(fù)責(zé)對本機(jī)所在網(wǎng)段內(nèi)的網(wǎng)絡(luò)進(jìn)行監(jiān)聽,并檢測可能的入侵行為,并且同本層的其它機(jī)器和上層機(jī)器代理進(jìn)行交互,協(xié)同檢測可能的入侵。本級的設(shè)置通常入于局域網(wǎng)絡(luò)的中心,通過對網(wǎng)絡(luò)接入點(diǎn)的數(shù)據(jù)進(jìn)行監(jiān)控,所以能夠?qū)τ谒衼碜酝獠亢桶l(fā)向外部的數(shù)據(jù)進(jìn)行監(jiān)控。正是由于它的這個條件,所以它的功能對于來自外部的攻擊行為能夠更好的進(jìn)行檢測。最上層的協(xié)調(diào)中心處在入侵檢測系統(tǒng)的最上層,所有下層無法判斷的入侵行為在此處進(jìn)行匯總后,形成對于入侵行為的整體認(rèn)識,可以更加方便、準(zhǔn)確和全面的實(shí)現(xiàn)入侵檢測。它的處理結(jié)構(gòu)與其他層次的協(xié)調(diào)中心結(jié)構(gòu)相似,只是本地的入侵檢測功能主要是對來自網(wǎng)絡(luò)外部的數(shù)據(jù)流進(jìn)行分析。并且由于來自外部的網(wǎng)絡(luò)狀態(tài)難于進(jìn)行統(tǒng)計和分析,所以主要采用模式匹配的方法進(jìn)行處理。同時通過與來自下一層協(xié)調(diào)中心的協(xié)同處理來實(shí)現(xiàn)實(shí)際的入侵檢測。這種分層次的檢測框架不同于傳統(tǒng)意義上的集中式入侵檢測系統(tǒng)。這里的入侵檢測系統(tǒng)雖然是分層次的,各層的級別與作用都不一樣,但較高層次作用不是集中控制與分析,而是協(xié)調(diào)中心,是為了便于管理、檢測復(fù)雜入侵和系統(tǒng)自身的安全。集中式入侵檢測系統(tǒng)中采用單個主機(jī)對整個網(wǎng)絡(luò)中的數(shù)據(jù)流量進(jìn)行分析,尋找可能的入侵行為。這種技術(shù)優(yōu)點(diǎn)是:數(shù)據(jù)的集中處理可以更加準(zhǔn)確地分析可能的入侵行為。缺點(diǎn)是:由于數(shù)據(jù)的集中處理,這個檢測主機(jī)成了網(wǎng)絡(luò)安全的瓶頸。它出現(xiàn)故障或遭受攻擊,則整個網(wǎng)絡(luò)的安全就會消失。同時這種方式數(shù)據(jù)的采集對于大型的網(wǎng)絡(luò)也很難實(shí)現(xiàn),只能采用類似于防火墻的方式,在網(wǎng)絡(luò)接入點(diǎn)采集網(wǎng)絡(luò)內(nèi)外的出入數(shù)據(jù),故無法實(shí)現(xiàn)內(nèi)部的安全檢測。MADIDS系統(tǒng)不是單純的主機(jī)檢測或是網(wǎng)絡(luò)檢測,也不是單純 集中式檢測或分布比檢測。而是將這些技術(shù)結(jié)合起來,并且與網(wǎng)絡(luò)的分層結(jié)構(gòu)相匹配,采用一種與代理技術(shù)相融合的基于分層的網(wǎng)絡(luò)入侵檢測系統(tǒng)。代理技術(shù)應(yīng)用到入侵檢測的每一層,移動代理主要用于檢測分布式攻擊。3.2 系統(tǒng)功能模塊構(gòu)成如圖2,MADIDS的主要部件有:檢測部件、協(xié)調(diào)部件和集成部件。其中,檢測部件可以脫離其它兩個部件而單獨(dú)工作,此時,移動代理失去功能。檢測部件的功能是截獲網(wǎng)絡(luò)原始數(shù)據(jù)包、查看日志采用相應(yīng)的檢測方法進(jìn)行分析,并采取相應(yīng)的響應(yīng)措施,以減少協(xié)調(diào)部件的工作量及系統(tǒng)網(wǎng)絡(luò)傳輸?shù)挠绊憽z測部件包括分析檢測器、響應(yīng)器、數(shù)據(jù)存放器(數(shù)據(jù)庫)數(shù)據(jù)收集器和本地管理器五個部分。協(xié)調(diào)部分在檢測部件不能確定是否發(fā)生入侵的情況下發(fā)揮作用,協(xié)調(diào)各檢測部件進(jìn)行工作以便跟蹤檢測有關(guān)入侵,并能進(jìn)行較復(fù)雜的數(shù)據(jù)分析,來識別分布式入侵檢測。此外,代理的移動也是在協(xié)調(diào)部件的安排下進(jìn)行活動的。協(xié)調(diào)部件由移動代理管理器、部件狀態(tài)顯示器、數(shù)據(jù)存入器和分析器構(gòu)成。集成部件的主要作用是和機(jī)器上已安裝的IDS配合,充分利用原有的IDS的資源,提高檢測效率。集成部件由詞法分析器、配置管理器、數(shù)據(jù)存放器和格式轉(zhuǎn)換器構(gòu)成。集成部件將其他IDS系統(tǒng)的檢測入侵記錄轉(zhuǎn)換成檢測部件所能識別的格式,便于分析檢測。系統(tǒng)中功能模塊可能是由具有特定功能的獨(dú)立的應(yīng)用程序、靜態(tài)agent、移動代理、小型的系統(tǒng)或者一個數(shù)據(jù)庫系統(tǒng)來構(gòu)成。在具體部署時,這些部件可能在同一臺計算機(jī)上,也可以各自分布在一個大型網(wǎng)絡(luò)的不同節(jié)點(diǎn)??傊鞴δ苣K都是MADIDS的一部分。模塊之間借助代理平臺提供的通信機(jī)制實(shí)現(xiàn)進(jìn)行信息交換,這樣既簡化了模塊之間的數(shù)據(jù)交換的復(fù)雜性,使得各功能模塊非常容易地分布在不同主機(jī)上,也給系統(tǒng)提供了一個擴(kuò)展的接口。3.3 MADIDS中代理構(gòu)成MADIDS是一個具有多代理協(xié)同工作的分布式入侵檢測系統(tǒng)。在MADIDS系統(tǒng)框架中,Agent處于系統(tǒng)最底層,是最基本的結(jié)構(gòu)單元,進(jìn)行著最初的數(shù)據(jù)收集與數(shù)據(jù)處理等各種工作,是最具靈活性的組成部分,MADIDS系統(tǒng)框架的可擴(kuò)展性的一個方面就在于此。集成部件中的agent負(fù)責(zé)吸取其它IDS的檢測信息。檢測部件是每臺監(jiān)控主機(jī)上各Agent的總控實(shí)體,負(fù)責(zé)主機(jī)級的入侵檢測。協(xié)調(diào)部件是被保護(hù)網(wǎng)絡(luò)上各主機(jī)檢測部件的協(xié)調(diào)實(shí)體,它們還可以相互級連起來,形成層次結(jié)構(gòu),負(fù)責(zé)網(wǎng)絡(luò)級的入侵檢測,它也有agent完成基本的功能。3.3.1 數(shù)據(jù)收集Agent數(shù)據(jù)收集agent有三類:主機(jī)日志收集代理、網(wǎng)絡(luò)數(shù)據(jù)收集代理和其它IDS數(shù)據(jù)收集代理。它們各自是一個獨(dú)立運(yùn)行實(shí)體,監(jiān)控主機(jī)某一方面并負(fù)責(zé)向相應(yīng)分析器報告異常行為或者可疑行為。例如,有這樣一個簡單的Agent,它檢查telnet連接數(shù)量,當(dāng)在一定時間內(nèi)有大量的連接(可以基于某個閾值來定)發(fā)生時,就認(rèn)為是可疑事件發(fā)生。這個Agent就會向其上級分析器發(fā)出一個報告。但是Agent本身無權(quán)直接產(chǎn)生警報。通常情況下,對一到多個由Agent產(chǎn)生的報告,分析器會向用戶發(fā)出一個警告。依靠對所控制的各個事件Agent的報告進(jìn)行綜合,檢測部件可以了解到所在主機(jī)系統(tǒng)當(dāng)前的安全狀態(tài),而協(xié)調(diào)部件可以了解到所監(jiān)控網(wǎng)絡(luò)的安全狀態(tài)。事件收集Agent之間并不直接進(jìn)行通信。相反,Agent將所有的消息都發(fā)送給其控制者——分析器,由分析器根據(jù)Agent的配置信息來決定將如何處理這些信息。對Agent本身而言,它可以使用以下技術(shù)來增強(qiáng)其處理能力:1.Agent可以使用遺傳程序設(shè)計技術(shù),這樣隨著使用時間的增加,Agent本身可以逐漸學(xué)習(xí),逐漸積累經(jīng)驗,從而可以進(jìn)化。2.Agent可以使用狀態(tài)保持技術(shù)來記憶每次運(yùn)行時獲得的信息,這樣可以使Agent能夠檢測到持續(xù)很長時間的入侵行為,也能夠檢測以行為模式的改變。由于在基于主機(jī)的異常入侵檢測中,使用了歷史行為統(tǒng)計模式,而為了更好地適應(yīng)用戶的全法行為模式,就需要將歷史行為統(tǒng)計模式進(jìn)行更新,而Agent在運(yùn)行中所檢測的事件正是更新統(tǒng)計數(shù)據(jù)的絕好材料。3.3.2 移動代理(mobile agent)mobile agent由協(xié)調(diào)部件管理,可以在系統(tǒng)內(nèi)向下層或者在同一層次移動,作用是跟蹤入侵路徑和收集信息。移動代理跟蹤入侵路徑,并且確定它的起點(diǎn),即入侵用戶留下被目標(biāo)主機(jī)日志記載的有入侵嫌疑的地方。協(xié)調(diào)部件、檢測部件和移動代理以下列方式協(xié)同工作:首先,檢測部件檢測到一個嫌疑事件,并將其報告給協(xié)調(diào)部件,要求協(xié)調(diào)部件跟蹤處理;協(xié)調(diào)器件利用ATP(agent transfer protocol)協(xié)議分派一個移動代理負(fù)責(zé)跟蹤到目標(biāo)系統(tǒng);這個移動代理自動在每一臺機(jī)器之間進(jìn)行遷移,為此不需要協(xié)調(diào)部件引導(dǎo)而能獨(dú)立跟蹤入侵。當(dāng)某一個目標(biāo)系統(tǒng)在短時間內(nèi)被發(fā)現(xiàn)有我個嫌疑事件時,協(xié)調(diào)部件將分派多個移動代理到目標(biāo)系統(tǒng)中收集所有的嫌疑事件的信息。單獨(dú)的一個移動代理不會對入侵作出判斷,也無法確定是否發(fā)生了入侵,多個移動代理結(jié)合起來才能夠供協(xié)調(diào)部件作出判斷。由于移動代理可以轉(zhuǎn)移到安裝了agent執(zhí)行環(huán)境中的任何系統(tǒng)中,因此它能夠智能地進(jìn)行入侵路由跟蹤。3.3.3 代理之間的消息協(xié)作代理之間通訊的協(xié)作消息按照傳播的方式不同,可以分為點(diǎn)對點(diǎn)消息和廣播消息。點(diǎn)對點(diǎn)消息用于低層代理向高層代理提供的信息,低層代理由于時間和空間的局限性,根據(jù)現(xiàn)有的信息無法判斷是否是攻擊,就將可疑事件提交給高層代理。例如,當(dāng)攻擊者進(jìn)行FTP Bounce攻擊時,由于這種攻擊是在三臺機(jī)器間進(jìn)行的,單臺機(jī)器上的檢測代理是無法確定攻擊的,必須同時提交給高一級的代理才能作出判斷。由于某些攻擊(或者潛在的攻擊)在空間上或時間上具有一定的連續(xù)性,當(dāng)某個代理檢測出攻擊時,可以讓其它的代理獲得先驗知識,來提高檢測效率,這時代理就會用廣播消息來通知其它代理。例如攻擊者攻擊某個網(wǎng)絡(luò)時,往往是先掃描該網(wǎng)絡(luò)中的主機(jī)所開啟的服務(wù),從中找突破口。當(dāng)一個代理探測出是端口掃描時,可以將消息廣播給同一級的代理,使它們能提前預(yù)防,當(dāng)攻擊者再掃描時,無法知道系統(tǒng)開啟的服務(wù)。入侵檢測作為一種信息安全措施,在現(xiàn)階段的中國還處于初步研究和探索階段。本文就是在這一社會背景下開展研究和探索的。經(jīng)過研究、探索、分析和設(shè)計后,本文對agent這一新興的技術(shù)在入侵檢測系統(tǒng)中應(yīng)用的優(yōu)勢進(jìn)行探討,提出了較完整的MADIDS的體系結(jié)構(gòu),并將這一技術(shù)引入MADIDS。MADIDS系統(tǒng)能夠滿足分布式環(huán)境下對入侵檢測系統(tǒng)的要求,能檢測分布式攻擊,這也是目前入侵檢測系統(tǒng)發(fā)展的一個方向。盡管采取了先進(jìn)了技術(shù)和平臺,但是正如攻擊技術(shù)不斷發(fā)展一樣,入侵的檢測也會不斷更新、成熟。同時,網(wǎng)絡(luò)安全需要縱深的、多樣的防護(hù)。MADIDS系統(tǒng)還需要在檢測方法上進(jìn)一步改進(jìn),提高檢測的準(zhǔn)確率和檢測速度,加強(qiáng)系統(tǒng)自身安全性。另外,同防火墻、網(wǎng)絡(luò)管理工具結(jié)合,構(gòu)成立體式的防衛(wèi)城墻也是MADIDS進(jìn)一步研究的方向。

關(guān)鍵詞: 分布式模

評論


技術(shù)專區(qū)

關(guān)閉