《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 防火墻與入侵檢測系統(tǒng)聯(lián)動的研究與設(shè)計
防火墻與入侵檢測系統(tǒng)聯(lián)動的研究與設(shè)計
來源:微型機(jī)與應(yīng)用2012年第5期
曲朝陽,崔洪杰,王敬東,孟凡奇
(東北電力大學(xué) 信息工程學(xué)院,吉林 吉林 132012)
摘要: 分析了防火墻和入侵檢測各自的優(yōu)缺點,提出了一種防火墻與入侵檢測系統(tǒng)聯(lián)動的新方法,并描述了具體實施方案。該方法有效地提升了聯(lián)動設(shè)備之間的協(xié)調(diào)性,并具有很好的擴(kuò)展性。
Abstract:
Key words :

摘  要: 分析了防火墻和入侵檢測各自的優(yōu)缺點,提出了一種防火墻與入侵檢測系統(tǒng)聯(lián)動的新方法,并描述了具體實施方案。該方法有效地提升了聯(lián)動設(shè)備之間的協(xié)調(diào)性,并具有很好的擴(kuò)展性。
關(guān)鍵詞: 入侵檢測系統(tǒng);聯(lián)動;防火墻;網(wǎng)絡(luò)安全

 隨著網(wǎng)絡(luò)規(guī)模的日益擴(kuò)大和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,網(wǎng)絡(luò)攻擊變得越來越復(fù)雜。對網(wǎng)絡(luò)的防護(hù)不再局限于采用單一的產(chǎn)品與手段,大部分網(wǎng)絡(luò)已經(jīng)使用了各種各樣的安全產(chǎn)品,如防火墻、人侵檢測系統(tǒng)、病毒防護(hù)系統(tǒng)和信息審計系統(tǒng)等。它們在一定程度上保障了網(wǎng)絡(luò)環(huán)境的安全性,但各安全產(chǎn)品之間存在無交流或很淺層次交流的局面,只對網(wǎng)絡(luò)形成獨立、被動的防護(hù),沒有從整體和設(shè)備聯(lián)動的角度去解決網(wǎng)絡(luò)安全問題。而網(wǎng)絡(luò)安全是一個系統(tǒng)工程,它們的簡單集成和疊加已不能應(yīng)對越來越復(fù)雜的網(wǎng)絡(luò)環(huán)境和安全威脅。人們已經(jīng)開始研究不同技術(shù)手段的協(xié)同與融合。只有將多種安全產(chǎn)品聯(lián)合起來,各自發(fā)揮自身優(yōu)點,互相彌補(bǔ)不足,才能最大程度地發(fā)揮安全產(chǎn)品的性能,保障網(wǎng)絡(luò)運行的安全。
1 防火墻與入侵檢測系統(tǒng)
1.1 防火墻

 防火墻指的是一個由軟件和硬件組合而成的高級訪問控制設(shè)備,是在被保護(hù)網(wǎng)和外網(wǎng)之間執(zhí)行訪問控制策略的一種或一系列部件的組合,它是現(xiàn)在市場上應(yīng)用范圍最廣的網(wǎng)絡(luò)安全產(chǎn)品之一。作為一種強(qiáng)制執(zhí)行的訪問控制機(jī)制,防火墻是確保網(wǎng)絡(luò)安全的重要手段。防火墻能在保證網(wǎng)絡(luò)暢通的情況下,盡可能地保證內(nèi)部網(wǎng)絡(luò)的安全。它的主要功能有:訪問控制、內(nèi)容控制和日志記錄。
根據(jù)防范的方式和側(cè)重點的不同,可將防火墻分為包過濾型和代理服務(wù)型。(1)包過濾技術(shù):防火墻在網(wǎng)絡(luò)層中根據(jù)數(shù)據(jù)包中的包頭信息有選擇地實施允許、通過或阻斷操作。其核心是安全策略即過濾規(guī)則的設(shè)計。策略就是讓包過濾防火墻在轉(zhuǎn)發(fā)數(shù)據(jù)包之前打開TCP/IP封裝,檢查進(jìn)出網(wǎng)絡(luò)的數(shù)據(jù)包的各種屬性,決定是否允許該數(shù)據(jù)包通過防火墻。(2)代理服務(wù)技術(shù):代理服務(wù)作用在應(yīng)用層,它用來提供應(yīng)用層服務(wù)的控制,在內(nèi)部網(wǎng)絡(luò)向外部網(wǎng)絡(luò)申請服務(wù)時起到中間轉(zhuǎn)接作用。
防火墻本質(zhì)上是一種訪問控制系統(tǒng),存在如下缺點:
?。?)防火墻提供的是靜態(tài)防御,所有規(guī)則需預(yù)先設(shè)置,并需要人工實施和維護(hù),對于實時的攻擊或異常的行為不能做出實時反應(yīng)。
 (2)防火墻規(guī)則的制定很大程度上是一種粗粒度的檢測,對一些協(xié)議細(xì)節(jié)無法做到完全解析,不能預(yù)防來自應(yīng)用層的攻擊,也不能預(yù)防病毒攻擊。
?。?)防火墻具有防外不防內(nèi)的局限性,對于內(nèi)部用戶的非法行為或已經(jīng)滲透的攻擊無法檢測和響應(yīng)。
1.2 入侵檢測系統(tǒng)
 入侵檢測系統(tǒng)(IDS)是一種主動的網(wǎng)絡(luò)安全防護(hù)技術(shù),它通過網(wǎng)絡(luò)不同關(guān)鍵點監(jiān)視網(wǎng)絡(luò)數(shù)據(jù)(網(wǎng)絡(luò)數(shù)據(jù)包、系統(tǒng)日志、用戶活動的狀態(tài)行為)以分析入侵行為的可能性。一旦發(fā)現(xiàn)入侵,立即告警和記錄日志,并實施安全控制操作,以保證數(shù)據(jù)的機(jī)密性、完整性和可用性。作為網(wǎng)絡(luò)安全防護(hù)體系的重要組成部分,入侵檢測系統(tǒng)提供了對內(nèi)部攻擊、外部攻擊和誤操作的實時檢測。它不同于防火墻,采用的是一種動態(tài)的安全防護(hù)技術(shù),對通信流量不做任何限制。
 IDS從數(shù)據(jù)來源上可以分成三類:(1)主機(jī)型入侵檢測系統(tǒng)(H-IDS),它一般保護(hù)所在的系統(tǒng),以系統(tǒng)日志、應(yīng)用程序日志等作為數(shù)據(jù)源,采集這些信息并進(jìn)行分析;(2)網(wǎng)絡(luò)型入侵檢測系統(tǒng)(N-IDS),其保護(hù)整個網(wǎng)段,以網(wǎng)絡(luò)上的數(shù)據(jù)包作為數(shù)據(jù)源,監(jiān)聽所有本網(wǎng)段內(nèi)的數(shù)據(jù)包并進(jìn)行判斷;(3)混合式入侵檢測系統(tǒng),其兼?zhèn)淝皟煞N方式的優(yōu)點,既從主機(jī)系統(tǒng)采集數(shù)據(jù),也通過網(wǎng)絡(luò)以監(jiān)聽方式采集數(shù)據(jù)發(fā)現(xiàn)可疑行為。按照分析方法,IDS可以分為誤用檢測和異常檢測兩種。
 入侵檢測系統(tǒng)存在著以下一些不足:難以保證檢測的準(zhǔn)確性和高效性;易受拒絕式服務(wù)攻擊(DOS),被攻破后導(dǎo)致失效;即使檢測到攻擊,也很難采取有效的保護(hù)措施。
2 防火墻與入侵檢測系統(tǒng)聯(lián)動
 防火墻側(cè)重于控制,而IDS側(cè)重于主動發(fā)現(xiàn)入侵信號,這決定了它們不能獨立完成網(wǎng)絡(luò)防護(hù)任務(wù),且不能相互取代。例如,當(dāng)IDS檢測到一種攻擊行為時,如不能及時有效地采取措施,這種攻擊行為將對網(wǎng)絡(luò)應(yīng)用造成損害;若僅有防火墻,攻擊者會利用防火墻合法的通道進(jìn)入內(nèi)部網(wǎng)絡(luò),使防火墻形同虛設(shè)。因此,IDS應(yīng)該通過與防火墻的聯(lián)動,動態(tài)地改變或增加防火墻的策略,通過防火墻從源頭上徹底阻斷入侵行為。
防火墻和IDS之間的聯(lián)動方式可分成以下三種。
?。?)嵌入結(jié)合方式。把IDS嵌入到防火墻中,即IDS的數(shù)據(jù)來源不再來源于抓包,而是所有流經(jīng)防火墻的數(shù)據(jù)流。所有通過的數(shù)據(jù)包不僅要接受防火墻檢測規(guī)則的判定,還需要經(jīng)過IDS的檢測,分析其安全性,以達(dá)到真正的實時檢測,這實際上是把兩個產(chǎn)品合成一體。由于IDS本身就是一個復(fù)雜的系統(tǒng),合成后的系統(tǒng)從實施到性能都會受到很大影響。
 (2)接口開放方式。即防火墻和IDS各開放一個接口供對方調(diào)用,并按照預(yù)定的協(xié)議進(jìn)行通信。目前常見的形式是安全廠家以自己的產(chǎn)品為核心,提供開放接口,以實現(xiàn)互動。這種方式比較靈活,但這種依附于一種安全設(shè)備的方式容易產(chǎn)生瓶頸,不能有效發(fā)揮網(wǎng)絡(luò)安全設(shè)備的優(yōu)點,且不易擴(kuò)展。
?。?)端口映像方式。防火墻將網(wǎng)絡(luò)中指定的一部分流量鏡像到入侵檢測系統(tǒng)中,入侵檢測系統(tǒng)再將分析后的結(jié)果反饋防火墻,并執(zhí)行相應(yīng)安全措施。
 如果讓防火墻與入侵檢測系統(tǒng)直接進(jìn)行交互,它們之間需要統(tǒng)一的通信接口,雖然具有可靠性高和速度快等優(yōu)點,但由于缺乏綜合性的分析將會生成錯誤的防火墻訪問控制規(guī)則(由入侵檢測的誤報造成),從而造成DoS和防火墻性能下降(訪問控制規(guī)則數(shù)量過多)。
2.1 聯(lián)動模型
 通過以上對聯(lián)動方式的分析,本文提出一種基于聯(lián)動控制中心的聯(lián)動思想,充分發(fā)揮防火墻與入侵檢測系統(tǒng)的優(yōu)點,更有效地保護(hù)網(wǎng)絡(luò)安全。聯(lián)動部署圖如圖1所示。將IDS放在防火墻之后,根據(jù)網(wǎng)絡(luò)的規(guī)模和安全要求可在多個位置安置數(shù)據(jù)采集點,并可根據(jù)實際情況在網(wǎng)絡(luò)不同位置安裝不同類型的防火墻。日志庫用來存儲IDS節(jié)點和防火墻大量日志和報警,進(jìn)行統(tǒng)一分析并把分析結(jié)果傳送到控制中心,由控制臺分析制定聯(lián)動控制策略,傳送給相應(yīng)聯(lián)動節(jié)點。根據(jù)實際網(wǎng)絡(luò)需求可添加其他網(wǎng)絡(luò)安全設(shè)備,由聯(lián)動系統(tǒng)作統(tǒng)一協(xié)調(diào)工作,對系統(tǒng)做進(jìn)一步擴(kuò)展。

 

 

 聯(lián)動系統(tǒng)主要由以下部分組成:
?。?)控制臺。它是整個系統(tǒng)的控制中心。在控制臺上運行聯(lián)動控制程序,接收網(wǎng)絡(luò)安全設(shè)備發(fā)送過來的信息,根據(jù)現(xiàn)行網(wǎng)絡(luò)狀況制定相應(yīng)的聯(lián)動措施,并對各安全設(shè)備進(jìn)行統(tǒng)一管理,確保聯(lián)動系統(tǒng)中所有設(shè)備正常有效地工作。
?。?)防火墻。在網(wǎng)絡(luò)中的不同位置可安置不同類型的防火墻。安置于Internet與內(nèi)部網(wǎng)連接點處的防火墻起主導(dǎo)作用,其將來自Internet上的網(wǎng)絡(luò)數(shù)據(jù)包過濾,并可以鏡像一部分?jǐn)?shù)據(jù)給特定安全設(shè)備,由安全設(shè)備做更深層次的檢測。這樣不但可以阻止某些惡意數(shù)據(jù)包進(jìn)入內(nèi)部網(wǎng),還可以分析不同網(wǎng)絡(luò)協(xié)議的狀態(tài)。而處于其他位置的防火墻在發(fā)生入侵時可以起到安全隔離的作用。另外,為了保護(hù)特殊區(qū)域的網(wǎng)絡(luò),還可以為防火墻添加網(wǎng)絡(luò)地址轉(zhuǎn)換的功能,讓服務(wù)器在內(nèi)網(wǎng)中使用內(nèi)部IP,在Internet上使用防火墻的Public IP。
 (3)入侵檢測系統(tǒng)(IDS)。從IDS檢測點采集數(shù)據(jù),根據(jù)規(guī)則庫作對比分析,當(dāng)檢測到網(wǎng)絡(luò)系統(tǒng)中發(fā)生攻擊行為或異常行為時,可以及時進(jìn)行記錄和報警等響應(yīng)。其中,規(guī)則庫可通過聯(lián)動系統(tǒng)做動態(tài)更新,以增強(qiáng)入侵檢測系統(tǒng)的健壯性。
?。?)日志庫。它用于存儲網(wǎng)絡(luò)安全事件記錄,還可以有選擇性地調(diào)用IDS和防火墻的日志,用戶在查看警告日志的同時,可以根據(jù)日志的相關(guān)信息(如IP地址、協(xié)議、協(xié)議端口等)進(jìn)行審計,更有效地發(fā)現(xiàn)網(wǎng)絡(luò)潛在威脅,進(jìn)而構(gòu)建新的規(guī)則,并通知控制臺實施聯(lián)動,添加到防火墻的規(guī)則集中或更改入侵檢測規(guī)則。
?。?)其他安全設(shè)備。根據(jù)網(wǎng)絡(luò)安全的需要可以添加防病毒設(shè)備、認(rèn)證設(shè)備等。添加的設(shè)備可由控制臺統(tǒng)一管理,對聯(lián)動系統(tǒng)起一定的擴(kuò)展作用。
2.2 聯(lián)動系統(tǒng)的設(shè)計
 本系統(tǒng)采用的是一種間接的聯(lián)動方式,采用客戶/服務(wù)器模式。服務(wù)器端不依附任何安全產(chǎn)品,是獨立的應(yīng)用程序??蛻舳朔衷O(shè)在各聯(lián)動安全設(shè)備上,根據(jù)設(shè)備不同客戶端也不同。這種把聯(lián)動控制程序單獨分離出來的方式使系統(tǒng)能集中精力協(xié)調(diào)聯(lián)動安全設(shè)備之間的工作,對網(wǎng)絡(luò)安全事件進(jìn)行更有效的分析,能提高聯(lián)動的準(zhǔn)確性和有效性,防止?jié)撛诘倪M(jìn)一步攻擊。該系統(tǒng)框架如圖2所示。

 服務(wù)器端包括數(shù)據(jù)接發(fā)模塊、數(shù)據(jù)分析模塊、策略生成模塊和聯(lián)動控制模塊。
 (1)數(shù)據(jù)接發(fā)模塊:把從客戶端收集到的數(shù)據(jù)進(jìn)行簡單分組,然后存儲到數(shù)據(jù)庫的表中。由于數(shù)據(jù)來自不同節(jié)點和設(shè)備,可能會出現(xiàn)冗余數(shù)據(jù)。該模塊對數(shù)據(jù)記錄進(jìn)行歸并,刪除冗余和無用數(shù)據(jù),并將相關(guān)數(shù)據(jù)進(jìn)行規(guī)范化處理,以便作進(jìn)一步處理。當(dāng)聯(lián)動系統(tǒng)實施聯(lián)動時,該模塊發(fā)送聯(lián)動信息到客戶端。
?。?)數(shù)據(jù)分析模塊:將接收過來的數(shù)據(jù)進(jìn)行分析,判斷各種入侵行為的精確度和危險度,根據(jù)分析結(jié)果進(jìn)行數(shù)據(jù)分類,存儲到相關(guān)表中。
?。?)策略生成模塊:根據(jù)分析結(jié)果,結(jié)合知識庫制定或調(diào)用策略,并將策略加入到相應(yīng)表中。
 (4)聯(lián)動控制模塊:根據(jù)需要聯(lián)動的安全設(shè)備確定需聯(lián)動的客戶端,將策略按照事先的約定封裝成數(shù)據(jù)包,并作相應(yīng)的加密處理,再由數(shù)據(jù)接發(fā)模塊發(fā)送到相應(yīng)設(shè)備,實施聯(lián)動。
客戶端是網(wǎng)絡(luò)狀態(tài)數(shù)據(jù)的采集端和聯(lián)動操作的執(zhí)行端,采用定時執(zhí)行腳本文件來實現(xiàn)聯(lián)動,包含數(shù)據(jù)接發(fā)模塊、聯(lián)動響應(yīng)模塊和策略執(zhí)行模塊。
?。?)數(shù)據(jù)接發(fā)模塊:發(fā)送數(shù)據(jù)到服務(wù)器端,并接收服務(wù)器端的信息。
?。?)聯(lián)動響應(yīng)模塊:保持與服務(wù)器端的連接。
 (3)策略執(zhí)行模塊:執(zhí)行服務(wù)器發(fā)送的聯(lián)動策略。
 本系統(tǒng)客戶端與服務(wù)器端事先約定并設(shè)定通信端口。當(dāng)客戶端發(fā)現(xiàn)網(wǎng)絡(luò)中有情況時,便向聯(lián)動中心發(fā)送經(jīng)過統(tǒng)一約定格式的數(shù)據(jù)包,經(jīng)過聯(lián)動中心作進(jìn)一步分析判斷,然后聯(lián)動中心再發(fā)送經(jīng)過統(tǒng)一約定格式的數(shù)據(jù)包,通知相關(guān)設(shè)備實施聯(lián)動措施。
聯(lián)動的具體步驟如下:
?。?)初始化通信連接時,由服務(wù)器端向客戶端發(fā)起連接。
 (2)建立正常連接后,當(dāng)客戶端產(chǎn)生需要通知服務(wù)器端的安全事件時,通過發(fā)送約定格式的數(shù)據(jù)包來完成向服務(wù)器端傳遞信息。
 (3)服務(wù)器端收到信息后,作相應(yīng)分析,并作出判斷,需要時發(fā)送聯(lián)動策略給客戶端。
 (4)客戶端接收服務(wù)器端發(fā)送的聯(lián)動信息,實施聯(lián)動行為,并將結(jié)果(成功與否)反饋給服務(wù)器端。
2.3 聯(lián)動系統(tǒng)的通信安全
 客戶端與服務(wù)器端之間通信采用安全套接層協(xié)議SSL(Secure Socket Layer),它能使客戶/服務(wù)器應(yīng)用之間的通信不被非法竊聽或截取,并且始終進(jìn)行認(rèn)證。SSL協(xié)議位于TCP/IP協(xié)議與各種應(yīng)用層協(xié)議之間,它的優(yōu)點在于獨立于應(yīng)用層協(xié)議,應(yīng)用層協(xié)議(如HTTP、FTP等)能透明地建立于SSL協(xié)議之上。SSL協(xié)議在應(yīng)用層協(xié)議通信之前就已經(jīng)完成加密算法、通信密鑰的協(xié)商及認(rèn)證工作。此后,應(yīng)用層協(xié)議所傳送的數(shù)據(jù)都會先加密后傳輸,從而保證通信的安全性。
SSL協(xié)議提供的安全信道有以下三個特性。
?。?)數(shù)據(jù)保密性。數(shù)據(jù)加密就是把明文信息經(jīng)加密算法轉(zhuǎn)換后變成加密的信息以實現(xiàn)數(shù)據(jù)的保密。加密的過程需要用到密鑰來加密數(shù)據(jù),然后再用密鑰解密。沒有了密鑰,就無法正確解密已加密的數(shù)據(jù)。數(shù)據(jù)加密之后,密鑰用一個安全的方法傳送。加密過的數(shù)據(jù)可以公開地傳送。
?。?)數(shù)據(jù)一致性。加密能保證數(shù)據(jù)的一致性。例如,消息驗證碼能夠校驗用戶提供的加密信息,接收者可以用來校驗加密后的數(shù)據(jù),保證數(shù)據(jù)在傳輸過程中沒有被篡改過。
?。?)安全驗證。加密的另外一個功能是作為個人的標(biāo)識,用戶的密鑰作為其安全驗證的標(biāo)識。
SSL協(xié)議的工作流程為:服務(wù)器認(rèn)證階段,客戶端向服務(wù)器發(fā)送一個開始信息“Hello”以便開始一個新的會話連接;服務(wù)器根據(jù)客戶的信息確定是否需要生成新的主密鑰,如需要,則服務(wù)器在響應(yīng)客戶的“Hello”信息時將包含生成主密鑰所需的信息;客戶根據(jù)收到的服務(wù)器響應(yīng)信息,產(chǎn)生一個主密鑰,并用服務(wù)器的公開密鑰加密后傳給服務(wù)器;服務(wù)器恢復(fù)該主密鑰,并返回給客戶一個用主密鑰認(rèn)證的信息,以此讓客戶認(rèn)證服務(wù)器。
 SSL安全協(xié)議為網(wǎng)絡(luò)應(yīng)用層通信提供了認(rèn)證、數(shù)據(jù)保密和數(shù)據(jù)完整性的服務(wù),較好地解決了網(wǎng)絡(luò)上數(shù)據(jù)傳輸?shù)陌踩珕栴}。SSL協(xié)議保證了系統(tǒng)內(nèi)部各組件之間的通信安全。SSL協(xié)議的SSL記錄協(xié)議與SSL握手協(xié)議兩個工作協(xié)議提供的身份認(rèn)證和安全傳輸?shù)姆?wù),能夠滿足各組件之間的安全通信要求。采用SSL協(xié)議可以保證系統(tǒng)不會因數(shù)據(jù)傳輸帶來新的安全漏洞。
 現(xiàn)代信息網(wǎng)絡(luò)發(fā)揮著重要作用,對網(wǎng)絡(luò)的安全性有較高的要求。在網(wǎng)絡(luò)安全防護(hù)體系中,各種安全設(shè)備以控制中心為核心,通過安全通信協(xié)議進(jìn)行有機(jī)聯(lián)動,形成一個動態(tài)的、完整的安全防御系統(tǒng)。各安全設(shè)備不是簡單集成疊加,而是有效地協(xié)同配合,整個系統(tǒng)的安全性得到了很大的提高,可以滿足現(xiàn)代網(wǎng)絡(luò)安全的要求,與防火墻的結(jié)合使其更加完美,力爭創(chuàng)造一個無漏洞、智能的安全防護(hù)系統(tǒng)。
參考文獻(xiàn)
[1] 陳明忠.入侵檢測技術(shù)在數(shù)據(jù)庫系統(tǒng)的應(yīng)用研究[J].計算機(jī)工程與科學(xué),2009,31(4):79-83.
[2] 李聲,蔣明華,李俊.利用SNMP實現(xiàn)防火墻與入侵檢測系統(tǒng)的聯(lián)動[J].網(wǎng)絡(luò)安全,2007,29(9):39-40.
[3] 李飛,甘剛,陳艾東.基于Linux的入侵防御系統(tǒng)的研究與實現(xiàn)[J].計算機(jī)應(yīng)用研究,2007,29(7):102-103.
[4] 王麗輝,李濤,張曉平,等.一種聯(lián)動防火墻的網(wǎng)絡(luò)入侵檢測系統(tǒng)[J].計算機(jī)應(yīng)用研究,2006,23(3):95-97.
[5] 余志高,周國祥.入侵檢測與防火墻協(xié)同應(yīng)用模型的研究與設(shè)計[J].計算機(jī)工程與應(yīng)用,2010,31(3):22-24.
[6] 肖立中,邵志清,馬漢華,等.網(wǎng)絡(luò)入侵檢測中的自動決定聚類數(shù)算法[J].軟件學(xué)報,2008(8):2140-2148.
[7] 宋文功,唐琎.基于Linux的防火墻技術(shù)研究[J].微計算機(jī)信息,2006(4X):37-39,157.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。