李建偉 殷 越
摘要:提出了一種基于Agent的分布式入侵檢測系統(tǒng)模型,實(shí)現(xiàn)HIDS和NIDS的互補(bǔ),充分利用Agent自身的獨(dú)立性與自主性,有效解決了傳統(tǒng)集中式處理的單點(diǎn)失效問題,同時(shí)降低各個(gè)部件之間的相互聯(lián)系,實(shí)現(xiàn)了入侵檢測系統(tǒng)計(jì)算的分布化,提高了入侵檢測系統(tǒng)的性能及其可靠性,具有良好的擴(kuò)展性,能更好的滿足大規(guī)模網(wǎng)絡(luò)環(huán)境的要求。
關(guān)鍵詞:入侵檢測;Agent;網(wǎng)絡(luò)安全
中圖分類號:TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號:1009-3044(2009)20-0000-00
0 引言
隨著計(jì)算機(jī)網(wǎng)絡(luò)的高速發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)延伸到各個(gè)領(lǐng)域,但是由于網(wǎng)絡(luò)的開放性和共享性,網(wǎng)絡(luò)安全事件層出不窮,其安全問題越來越受到人們的關(guān)注。防火墻的應(yīng)用大大提高了網(wǎng)絡(luò)的安全性,防火墻作為一種靜態(tài)的訪問控制類安全產(chǎn)品通常使用包過濾技術(shù)來實(shí)現(xiàn),可以將非預(yù)期的訪問請求屏蔽在網(wǎng)絡(luò)外部。但是其不能檢查出經(jīng)過它的合法流量中是否包含有惡意的入侵代碼。面對日益復(fù)雜的網(wǎng)絡(luò)環(huán)境,單單依靠防火墻的被動(dòng)防御使遠(yuǎn)遠(yuǎn)不夠的,僅依靠防火墻對網(wǎng)絡(luò)進(jìn)行保護(hù)已經(jīng)滿足不了對網(wǎng)絡(luò)安全的要求。入侵檢測系統(tǒng)(Intrusion Detection System,IDS)作為一種主動(dòng)的網(wǎng)絡(luò)安全工具,成為防火墻的一個(gè)有效補(bǔ)充。入侵檢測系統(tǒng)通過對實(shí)時(shí)檢測,分析被檢測系統(tǒng)的審計(jì)數(shù)據(jù)或直接從網(wǎng)絡(luò)捕獲的數(shù)據(jù),發(fā)現(xiàn)是否有違背安全策略或危及系統(tǒng)安全的行為或活動(dòng),從而確定網(wǎng)絡(luò)是否受到了攻擊。按照數(shù)據(jù)來源的不同,入侵檢測系統(tǒng)可分為基于主機(jī)的入侵檢測系統(tǒng)(HIDS)和基于網(wǎng)絡(luò)的入侵檢測系統(tǒng)(NIDS)。HIDS通過對被檢測主機(jī)的網(wǎng)絡(luò)連接狀態(tài)、審計(jì)日志和系統(tǒng)日志的分析來發(fā)現(xiàn)入侵行為,需要安裝在每一臺(tái)被監(jiān)控的主機(jī)上,只能監(jiān)控本主機(jī)的信息,部署起來相當(dāng)麻煩,不適合擴(kuò)展到大型網(wǎng)絡(luò)。NIDS通過檢測網(wǎng)絡(luò)上的所有報(bào)文來發(fā)現(xiàn)入侵行為,在網(wǎng)絡(luò)的關(guān)鍵節(jié)點(diǎn)部署即可,部署比較簡單,但是其受到網(wǎng)絡(luò)流量以及檢測主機(jī)處理信息能力等因素影響,另外網(wǎng)絡(luò)阻塞時(shí)也會(huì)導(dǎo)致整個(gè)入侵檢測系統(tǒng)的失效。因而只有將主機(jī)和網(wǎng)絡(luò)兩種系統(tǒng)有效地結(jié)合起來,組成一種立體的、全方位的入侵檢測系統(tǒng),才能有效地保證整個(gè)網(wǎng)絡(luò)和主機(jī)系統(tǒng)的安全。
針對上述問題本文提出了一種基于Agent的分布入侵檢測系統(tǒng)模型,結(jié)合基于主機(jī)的入侵檢測系統(tǒng)和基于網(wǎng)絡(luò)的入侵檢測系統(tǒng),同時(shí)利用多種檢測方法,從而提高入侵檢測系統(tǒng)的可靠性。
1 Agent在入侵檢測系統(tǒng)中的應(yīng)用
Agent是具有一定智能、可代表其它實(shí)體自主運(yùn)行的軟件實(shí)體,它具有代理性、自治性、主動(dòng)性、自適應(yīng)性、智能性和可移植性等屬性。各Agent之間是相對獨(dú)立的,各自執(zhí)行一定的功能,并可以單獨(dú)進(jìn)行配置、調(diào)試,若個(gè)別Agent出現(xiàn)故障,也只能影響與之相關(guān)的少數(shù)部件,而不會(huì)影響整個(gè)系統(tǒng)的運(yùn)行。因而Agent技術(shù)的引入能夠較好地解決現(xiàn)有IDS存在的缺陷。真正實(shí)現(xiàn)基于主機(jī)的入侵檢測系統(tǒng)與基于網(wǎng)絡(luò)的入侵檢測系統(tǒng)的無縫集成,增加入侵檢測系統(tǒng)的自治性、可靠性、擴(kuò)展性以及容錯(cuò)性等。
Agent按照其功能可以分為靜態(tài)Agent和移動(dòng)Agent。靜態(tài)Agent克服了傳統(tǒng)IDS的一些固有缺陷,但是也帶來了新的問題,如網(wǎng)絡(luò)數(shù)據(jù)流量大等。移動(dòng)Agent可以自主的在異構(gòu)網(wǎng)絡(luò)中由一個(gè)節(jié)點(diǎn)遷移到另一個(gè)節(jié)上,充分利用現(xiàn)有資源,減少不必要的網(wǎng)絡(luò)通信,但是過多的使用移動(dòng)Agent會(huì)降低檢測性能。因此,結(jié)合使用靜態(tài)Agent和移動(dòng)Agent一起使用,以克服單獨(dú)使用靜態(tài)Agent或者移動(dòng)Agent的缺陷。
2 基于Agent的入侵檢測系統(tǒng)模型
本文提出了如圖1所示的基于Agent的分布式入侵檢測系統(tǒng)模型,主要部件有數(shù)據(jù)采集Agent(DCA)、分析Agent(AA)、報(bào)警信息融合Agent(DOCA)、通信Agent、響應(yīng)Agent(RA)以及控制中心。這些部件功能相對獨(dú)立,通過統(tǒng)一的網(wǎng)絡(luò)接口進(jìn)行信息交換,使得各個(gè)部件可以很容易地分布在網(wǎng)絡(luò)的各個(gè)節(jié)點(diǎn),可以集中安裝在某一個(gè)或者幾個(gè)主機(jī)上。具體的部署情況可以根據(jù)主機(jī)性能等實(shí)際情況靈活掌握。
2.1 數(shù)據(jù)采集Agent
數(shù)據(jù)采集Agent主要功能是收集原始數(shù)據(jù),并對原始數(shù)據(jù)進(jìn)行過濾、重組、預(yù)處理后傳送給分析Agent。預(yù)處理的工作主要是將原始數(shù)據(jù)按照一定的統(tǒng)一格式的進(jìn)行數(shù)據(jù)簡化,使得傳入分析Agent的數(shù)據(jù)得到了精簡,從而減少分析Agent的工作量以及網(wǎng)絡(luò)上的數(shù)據(jù)傳輸。數(shù)據(jù)采集Agent有主機(jī)數(shù)據(jù)采集Agent和網(wǎng)絡(luò)數(shù)據(jù)采集Agent。主機(jī)數(shù)據(jù)采集Agent(HDCA)收集主機(jī)上的各種數(shù)據(jù),包括收集系統(tǒng)日志、監(jiān)視用戶狀態(tài)及其行為和主機(jī)網(wǎng)絡(luò)狀態(tài)等。網(wǎng)絡(luò)數(shù)據(jù)Agent(NDCA)主要工作是負(fù)責(zé)抓取網(wǎng)絡(luò)中的數(shù)據(jù)包。在部署上主機(jī)數(shù)據(jù)采集Agent安裝在需要被檢測的主機(jī)上,網(wǎng)絡(luò)數(shù)據(jù)采集Agent安裝在網(wǎng)絡(luò)關(guān)鍵節(jié)點(diǎn)主機(jī)上。
2.2 檢測Agent
檢測Agent是入侵檢測系統(tǒng)的關(guān)鍵部分,負(fù)責(zé)對數(shù)據(jù)采集Agent處理過的數(shù)據(jù)進(jìn)行分析檢測,從而發(fā)現(xiàn)入侵事件或者可疑事件。
入侵檢測的分析技術(shù)主要有濫用檢測和異常檢測兩種。濫用檢測的分析機(jī)制基于攻擊方法和攻擊特征庫的建立,但是對未知攻擊無能為力。異常檢測的分析機(jī)制基于正常行為模版建立,對未知入侵行為監(jiān)測率較高,但是誤報(bào)率較高。同時(shí)針對不同的數(shù)據(jù)來源其分析檢測方法也不盡相同。針對上述問題,建立多個(gè)分析Agent,根據(jù)需要對不同來源的數(shù)據(jù)和不同的檢測模式建立不同的數(shù)據(jù)分析Agent,相同的數(shù)據(jù)可以由多個(gè)檢測Agent采用不同的檢測方法進(jìn)行檢測,以實(shí)現(xiàn)檢測方法的互補(bǔ),提高檢測準(zhǔn)確率。
2.3 報(bào)警數(shù)據(jù)融合Agent
報(bào)警數(shù)據(jù)融合Agent負(fù)責(zé)對數(shù)據(jù)分析Agent產(chǎn)生的報(bào)警信息進(jìn)行聚合與關(guān)聯(lián)。通過對報(bào)警信息的匯聚和關(guān)聯(lián)分析,印證不同Agent的分析結(jié)果,可以有效降低誤報(bào)漏報(bào),提高了報(bào)警的準(zhǔn)確性。對報(bào)警信息的融合,可以消除重復(fù)報(bào)警,有利于對入侵情況的理解,發(fā)現(xiàn)高層攻擊策略。
2.4 通信Agent
通信Agent是一個(gè)靜態(tài)Agent駐留在各個(gè)安裝Agent的主機(jī)上,專門負(fù)責(zé)相關(guān)Agent之間的通信,對Agent之間的通信加密,管理消息的傳遞和Agent主機(jī)的身份驗(yàn)證。采用加密技術(shù)對網(wǎng)絡(luò)傳輸?shù)闹匾噶詈蛿?shù)據(jù)進(jìn)行加密,防止信息被竊聽、泄露、篡改和破壞,從而保證指令和結(jié)果傳輸?shù)碾[蔽性、完整性和可靠性。采用數(shù)字簽名方案驗(yàn)證Agent主機(jī)的合法性。
2.5 響應(yīng)Agent
響應(yīng)Agent以對話框短信等方式將報(bào)警信息反饋給管理員,同時(shí)根據(jù)預(yù)先設(shè)定的響應(yīng)規(guī)則采取主動(dòng)措施,調(diào)整被攻擊系統(tǒng)的狀態(tài),阻止和減輕攻擊影響,如斷開連接,阻塞系統(tǒng)調(diào)用、殺死可疑進(jìn)程等,也可以同防火墻等安全產(chǎn)品實(shí)現(xiàn)聯(lián)動(dòng)。
2.6 控制中心
控制中心主要實(shí)現(xiàn)與用戶的交互,通過控制中心對系統(tǒng)中的所有Agent進(jìn)行統(tǒng)一的配置和管理。由于系統(tǒng)中存在多個(gè)不同級別、不同功能的Agent,要記錄各個(gè)Agent的名字、IP地址、通信端口、運(yùn)行狀態(tài)以及其所實(shí)現(xiàn)的功能,使用戶對系統(tǒng)的整體運(yùn)行狀況有一個(gè)直觀的了解。用戶通過控制中心用戶可以控制各個(gè)Agent的啟動(dòng)與停止,制定分析Agent的檢測規(guī)則和響應(yīng)Agent的響應(yīng)策略,通過控制中心還可以對入侵檢測報(bào)警、可疑行為報(bào)警和錯(cuò)誤報(bào)警進(jìn)行管理和處理,從而保證系統(tǒng)高效運(yùn)行。