關(guān)于Snort的網(wǎng)絡(luò)入侵防御功能研究_第1頁(yè)
關(guān)于Snort的網(wǎng)絡(luò)入侵防御功能研究_第2頁(yè)
關(guān)于Snort的網(wǎng)絡(luò)入侵防御功能研究_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

關(guān)于Snort的網(wǎng)絡(luò)入侵防御功能研究

作者:蔣玉國(guó)楊明欣郭文東[摘要]當(dāng)前,入侵檢測(cè)系統(tǒng)已經(jīng)成為安全解決方案的一個(gè)必要條件,然而,入侵檢測(cè)不能主動(dòng)地阻斷具有攻擊特征的數(shù)據(jù)流。它往往是被動(dòng)的監(jiān)視局域網(wǎng),讓網(wǎng)絡(luò)管理員對(duì)攻擊行為采取相應(yīng)的措施。本文討論了入侵防御系統(tǒng)(IPS)的概念、優(yōu)點(diǎn)和弱點(diǎn),并根據(jù)著名的開(kāi)放源代碼網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)Snort的內(nèi)部組織特點(diǎn),提出了一種讓Snort實(shí)現(xiàn)主動(dòng)阻斷攻擊數(shù)據(jù)流的方法。

[關(guān)鍵詞]網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)網(wǎng)絡(luò)入侵防御系統(tǒng)Snort

一、讓Snort實(shí)現(xiàn)主動(dòng)防御功能

1.設(shè)計(jì)思路。通過(guò)分析Snort的整體結(jié)構(gòu)可知,它充分利用了插件機(jī)制,這種特點(diǎn)使它更靈活,更容易系統(tǒng)功能的增加,使程序具有很強(qiáng)的可擴(kuò)展性。IPS與IDS的主要區(qū)別就是IPS實(shí)現(xiàn)了主動(dòng)的阻斷攻擊。利用Snort的這種內(nèi)部組織結(jié)構(gòu)和IPS的特點(diǎn),可以設(shè)想,只要為Snort增加一個(gè)能夠阻斷數(shù)據(jù)包的模塊(假設(shè)稱該模塊為“在線處理模塊”),并把Snort置于在線的位置,當(dāng)Snort檢測(cè)到某種入侵行為時(shí),通過(guò)對(duì)該模塊的調(diào)用,就可以達(dá)到阻斷含有入侵傾向數(shù)據(jù)流的目的。

Snort的檢測(cè)引擎主要是基于規(guī)則的匹配。Snort規(guī)則類型(規(guī)則行為)包括:alert、log、pass、activate和dynamic。我們就讓Snort做拒絕與該規(guī)則匹配的數(shù)據(jù)包的處理。剩余的任務(wù)就是,當(dāng)Snort找到了和被捕獲的數(shù)據(jù)包相匹配的規(guī)則時(shí),Snort通過(guò)什么條件來(lái)判斷該數(shù)據(jù)包是否符合做拒絕處理,在Snort源文件rules.h中定義了OptTreeNode的數(shù)據(jù)結(jié)構(gòu)。為該結(jié)構(gòu)中增加標(biāo)志位。當(dāng)Snort進(jìn)行規(guī)則解析時(shí),通過(guò)判斷規(guī)則的類型和priority、classtype參數(shù)的值,當(dāng)符合一定的條件時(shí),給相應(yīng)的標(biāo)志位置“1”。這樣,當(dāng)檢測(cè)引擎觸發(fā)了某條規(guī)則,則通過(guò)判斷這些標(biāo)志位,決定是否阻斷相對(duì)應(yīng)的數(shù)據(jù)包。

為了使Snort更具有靈活性,還可以為之增加一個(gè)可選的功能:通過(guò)用戶的選擇,即可使Snort以IDS方式工作,也可以使其以IPS方式工作。

2.實(shí)現(xiàn)阻斷數(shù)據(jù)包的條件。為了實(shí)現(xiàn)Snort的IPS功能,需要特定的底層庫(kù)Iptables來(lái)代替原有的Libpcap(Libpcap是Snort的底層庫(kù))。Iptables用于計(jì)算和控制在Linux平臺(tái)上的外部連接。netfilter/iptables支持Linux2.4內(nèi)核,能夠進(jìn)行數(shù)據(jù)包過(guò)濾,網(wǎng)絡(luò)地址轉(zhuǎn)換及其它的數(shù)據(jù)包處理。3.實(shí)現(xiàn)方法。(1)給Snort源文件snort.h中定義的pv結(jié)構(gòu)增加標(biāo)志位。在PV結(jié)構(gòu)中增加一個(gè)標(biāo)志位:inline。如果期望Snort以在線的(IPS)方式工作,則設(shè)該標(biāo)志被置“1”,否則Snort工作在普通的IDS工作方式。(2)在OptTreeNode(規(guī)則選項(xiàng))結(jié)構(gòu)中增加兩個(gè)標(biāo)志位:reject和drop。當(dāng)某規(guī)則的規(guī)則類型為alert,且classtype關(guān)鍵字屬于1級(jí)優(yōu)先級(jí),或者priority大于9,則當(dāng)程序進(jìn)行規(guī)則解析時(shí),為屬于該規(guī)則的OptTreeNode結(jié)構(gòu)標(biāo)志位reject置“1”。當(dāng)某規(guī)則的規(guī)則類型為alert,且classtype關(guān)鍵字屬于2級(jí)優(yōu)先級(jí),或者priority為7或8,則當(dāng)程序進(jìn)行規(guī)則解析時(shí),為屬于該規(guī)則的OptTreeNode結(jié)構(gòu)標(biāo)志位drop置“1”。4.如果被捕獲的數(shù)據(jù)包與某規(guī)則相匹配,這時(shí)說(shuō)明Snort已經(jīng)發(fā)現(xiàn)攻擊行為。此時(shí)判斷該規(guī)則的OptTreeNode結(jié)構(gòu)中兩個(gè)標(biāo)志位的值,如果drop為1,調(diào)用在線處理模塊,對(duì)該包做阻斷處理并輸出報(bào)警信息。如果reject為1,調(diào)用在線處理模塊,阻斷該包、輸出報(bào)警信息,如果該包協(xié)議類型為T(mén)CP,向數(shù)據(jù)源發(fā)送RESET報(bào)文,終止該連接;如果協(xié)議類型是UDP,向數(shù)據(jù)源發(fā)送ICMP端口不可達(dá)報(bào)文,終止該連接。圖1是Snort以在線方式運(yùn)行的響應(yīng)處理過(guò)程。二、結(jié)束語(yǔ)

本文提出的使Snort增加主動(dòng)阻斷攻擊數(shù)據(jù)流功能的方法具有以下優(yōu)點(diǎn):

1.該方法簡(jiǎn)單、靈活,不需要改動(dòng)整體結(jié)構(gòu)和Snort原有的規(guī)則,只需在其原有的系統(tǒng)和規(guī)則的基礎(chǔ)上給PV結(jié)構(gòu)和OptTreeNode結(jié)構(gòu)增加了幾個(gè)標(biāo)志位,為之添加現(xiàn)有的Iptables底層庫(kù)和Libnet,增加一些函數(shù)即可實(shí)現(xiàn)。

2.只有符合某種嚴(yán)重級(jí)別的數(shù)據(jù)流才對(duì)之采取阻斷處理的策

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論