国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Snort入侵檢測(cè)與防御系統(tǒng)的優(yōu)化策略

2013-08-15 00:54孔令治
關(guān)鍵詞:模式匹配緩沖區(qū)數(shù)據(jù)包

白 茹 孔令治

(長(zhǎng)春中醫(yī)藥大學(xué)現(xiàn)代教育技術(shù)中心,長(zhǎng)春 130017)

0 引言

隨著網(wǎng)絡(luò)的普及與計(jì)算機(jī)技術(shù)的發(fā)展,高等院校普遍建立高速的校園網(wǎng)絡(luò),以支撐學(xué)校的辦公科研工作,并以此為基礎(chǔ)進(jìn)一步實(shí)施數(shù)字化校園的發(fā)展計(jì)劃.數(shù)字校園進(jìn)一步發(fā)展的基礎(chǔ)之一是如何保障整個(gè)校園網(wǎng)絡(luò)的安全運(yùn)行,防范日益增加的網(wǎng)絡(luò)攻擊和異常的網(wǎng)絡(luò)行為,確保校園網(wǎng)內(nèi)數(shù)據(jù)安全.研究入侵檢測(cè)或入侵防御系統(tǒng)成為網(wǎng)絡(luò)安全必不可少的內(nèi)容.Snort系統(tǒng)是一個(gè)用C語(yǔ)言編寫的符合GPL(GNU General Public License)規(guī)范的開放源碼軟件,是一個(gè)跨平臺(tái)、輕量級(jí)的網(wǎng)絡(luò)入侵檢測(cè)工具,包含監(jiān)控或采集數(shù)據(jù)、數(shù)據(jù)的檢測(cè)分析、檢測(cè)結(jié)果的處理(報(bào)警、相應(yīng))等三個(gè)部分,其中數(shù)據(jù)檢測(cè)分析是整個(gè)系統(tǒng)的核心,目前大多采用的是比較傳統(tǒng)基于規(guī)則模式匹配方式,這種方式在今天網(wǎng)絡(luò)數(shù)據(jù)量不斷增大,攻擊方式多樣的情況下存在匹配計(jì)算量大、誤報(bào)漏報(bào)率增加的情況.本文研究如何在部署基于Snort的入侵檢測(cè)系統(tǒng)的基礎(chǔ)上進(jìn)行相應(yīng)優(yōu)化的策略,以提高檢測(cè)的效率和防御響應(yīng)的速度.

1 基于Snort入侵檢測(cè)與防御系統(tǒng)的性能瓶頸

Snort系統(tǒng)主要有數(shù)據(jù)包嗅探器、包預(yù)處理器、檢測(cè)引擎、報(bào)警/日志等幾個(gè)模塊組成,整個(gè)系統(tǒng)采用一種易于擴(kuò)充的模塊化體系結(jié)構(gòu),開發(fā)人員可以加入自己編寫的模塊來(lái)擴(kuò)展或改進(jìn)Snort的功能,以提高系統(tǒng)的性能.

通過研究分析在基于Snort的開源入侵檢測(cè)和防御系統(tǒng)中,主要性能瓶頸集中在以下兩個(gè)方面:即數(shù)據(jù)包的嗅探捕獲及檢測(cè)規(guī)則(Rule)的匹配.

1.1 數(shù)據(jù)包的嗅探捕獲

數(shù)據(jù)包捕獲技術(shù)是入侵檢測(cè)分析的基礎(chǔ),在復(fù)雜網(wǎng)絡(luò)環(huán)境下快速、完整的捕獲到所需的數(shù)據(jù)包是準(zhǔn)確分析網(wǎng)絡(luò)是否遭到入侵以及進(jìn)行何種響應(yīng)防御措施的前提條件.在高速校園網(wǎng)的環(huán)境下,所部署的大部分網(wǎng)絡(luò)安全系統(tǒng)將無(wú)法及時(shí)、有效處理巨大的網(wǎng)絡(luò)流量,而大量攻擊網(wǎng)絡(luò)的行為是夾雜在復(fù)雜巨量的網(wǎng)絡(luò)流量中實(shí)施的,由于數(shù)據(jù)包捕獲技術(shù)的限制,在處理不過來(lái)的情況下致使大量的數(shù)據(jù)包被簡(jiǎn)單的丟棄,從而降低了入侵檢測(cè)和防御系統(tǒng)的效率.

1.2 檢測(cè)規(guī)則的匹配

基于Snort的入侵檢測(cè)和防御系統(tǒng)是采用的主要是誤用檢測(cè)技術(shù),檢測(cè)系統(tǒng)首先會(huì)根據(jù)預(yù)先取得的攻擊特征構(gòu)造針對(duì)這類攻擊的檢測(cè)規(guī)則,多條檢測(cè)規(guī)則集合到一起形成規(guī)則集合,檢測(cè)過程就是對(duì)構(gòu)造的規(guī)則集合用捕獲的數(shù)據(jù)包在規(guī)則集合中進(jìn)行模式匹配,發(fā)現(xiàn)滿足攻擊檢測(cè)規(guī)則的網(wǎng)絡(luò)入侵行為.但在網(wǎng)速不斷提高,網(wǎng)絡(luò)流量不斷增加的情況下,對(duì)于匹配效率和速度的要求卻越來(lái)越高,因此規(guī)則的排列及模式匹配算法都會(huì)影響檢測(cè)的效率,通過深入分析發(fā)現(xiàn),可以對(duì)規(guī)則集合進(jìn)行適當(dāng)優(yōu)化并采用高速模式匹配算法來(lái)提高檢測(cè)效率.

2 入侵檢測(cè)與防御系統(tǒng)優(yōu)化策略

通過上述分析,我們可以從提高Snort捕獲包效率、對(duì)檢測(cè)規(guī)則進(jìn)行優(yōu)化,以及采用更高效率模式匹配算法等方面來(lái)提高系統(tǒng)的性能.

2.1 數(shù)據(jù)包捕獲技術(shù)優(yōu)化策略

2.1.1 構(gòu)造內(nèi)存緩沖區(qū)減少系統(tǒng)調(diào)用次數(shù)

操作系統(tǒng)在捕獲數(shù)據(jù)包過程中需要經(jīng)歷兩次數(shù)據(jù)傳遞,一次是從物理網(wǎng)卡捕獲數(shù)據(jù)傳遞到到內(nèi)核空間,然后把數(shù)據(jù)內(nèi)核空間復(fù)制到用戶空間,當(dāng)大量數(shù)據(jù)包被捕獲時(shí),兩次數(shù)據(jù)需要頻繁的在用戶空間和內(nèi)核空間進(jìn)行切換,系統(tǒng)開銷非常大,為了避免在數(shù)據(jù)包捕獲過程中頻繁的進(jìn)行系統(tǒng)調(diào)用,可以借鑒操作系統(tǒng)在內(nèi)存管理中地址映射技術(shù),即通過內(nèi)核與應(yīng)用程序共享一段內(nèi)存空間充當(dāng)緩沖區(qū)(Cache),通過減少系統(tǒng)調(diào)用的次數(shù),降低系統(tǒng)調(diào)用的開銷,提高Cache命中率和系統(tǒng)的性能.

具體做法就是:在內(nèi)核空間中構(gòu)造一個(gè)與用戶空間共享的數(shù)據(jù)緩沖區(qū).存放的內(nèi)核捕獲的數(shù)據(jù)在內(nèi)存中的地址.由于有緩沖機(jī)制當(dāng)大量的數(shù)據(jù)包到達(dá),內(nèi)核就可以不斷的緩沖區(qū)中寫數(shù)據(jù),而處于用戶空間的網(wǎng)絡(luò)監(jiān)控程序,可以不停的緩沖區(qū)中讀取數(shù)據(jù),數(shù)據(jù)包的讀寫并行進(jìn)行[1],當(dāng)監(jiān)控程序匹配速度慢產(chǎn)生擁塞時(shí),可以在一定范圍內(nèi)調(diào)整緩沖區(qū)的大小來(lái)匹配,這樣,捕獲數(shù)據(jù)與匹配數(shù)據(jù)過程互不影響.因此系統(tǒng)的處理速度大大加快.

2.1.2 采用設(shè)備輪詢機(jī)制

通常采用緩沖區(qū)技術(shù)減少調(diào)用次數(shù),還可以使用Linux的設(shè)備輪詢機(jī)制對(duì)數(shù)據(jù)捕獲實(shí)現(xiàn)的優(yōu)化.所謂的設(shè)備輪詢機(jī)制,實(shí)際上就是利用網(wǎng)卡驅(qū)動(dòng)程序提供的NAPI機(jī)制[2]加快網(wǎng)卡處理數(shù)據(jù)包的速度,在大流量的網(wǎng)絡(luò)環(huán)境當(dāng)中,標(biāo)準(zhǔn)的網(wǎng)卡中斷加上逐層的數(shù)據(jù)拷貝和系統(tǒng)調(diào)用必然要占用大量的CPU資源,優(yōu)化基本的想法是對(duì)于大流量網(wǎng)絡(luò),當(dāng)發(fā)現(xiàn)一個(gè)DMA傳輸中斷,則首先關(guān)閉網(wǎng)卡的中斷模式,而對(duì)于隨后的網(wǎng)絡(luò)數(shù)據(jù)采用輪詢方式進(jìn)行接收,這樣將降低系統(tǒng)中斷次數(shù),如果輪詢發(fā)現(xiàn)沒有數(shù)據(jù)包或者已接收了一定數(shù)量的數(shù)據(jù)包,則打開網(wǎng)卡的中斷模式,依次類推.這種方法同緩沖區(qū)技術(shù)結(jié)合將降低數(shù)據(jù)捕獲過程中系統(tǒng)調(diào)用和中斷次數(shù),提高數(shù)據(jù)處理速度.

2.2 規(guī)則優(yōu)化策略

規(guī)則優(yōu)化的策略是通過對(duì)Snort規(guī)則集進(jìn)行優(yōu)化,使數(shù)據(jù)包可迅速定位到一個(gè)較小的規(guī)則集合中進(jìn)行檢測(cè).為了降低對(duì)每個(gè)數(shù)據(jù)包進(jìn)行匹配的平均規(guī)則條數(shù),規(guī)則的優(yōu)化需要滿足下面兩個(gè)條件:

(1)盡可能創(chuàng)建最小,但卻是最有效的規(guī)則集;

(2)創(chuàng)建離散的規(guī)則集,從而對(duì)每個(gè)到達(dá)的數(shù)據(jù)包只需檢測(cè)一個(gè)規(guī)則集.

規(guī)則優(yōu)化的問題關(guān)鍵是選擇合適的特征參數(shù)作為劃分不同集合的依據(jù).由于網(wǎng)絡(luò)協(xié)議是分層實(shí)現(xiàn)的,Snort在對(duì)數(shù)據(jù)包進(jìn)行解析時(shí),會(huì)將數(shù)據(jù)包中對(duì)應(yīng)于網(wǎng)絡(luò)協(xié)議各層的內(nèi)容都放在Packet數(shù)據(jù)結(jié)構(gòu)中.協(xié)議解析的過程是沿著協(xié)議樹,從根結(jié)點(diǎn)尋找葉子節(jié)點(diǎn)的過程,并把相關(guān)的數(shù)據(jù)填充Packet數(shù)據(jù)結(jié)構(gòu).所以,選擇一些協(xié)議特征作為劃分集合的依據(jù)(如端口,協(xié)議選項(xiàng)等).

由于高校校園網(wǎng)環(huán)境相對(duì)封閉,面臨的攻擊行為基本是針對(duì)常用協(xié)議實(shí)行的,為了提高效率,主要對(duì)以下常用協(xié)議進(jìn)行分析和檢測(cè)匹配,即可防止絕大數(shù)網(wǎng)絡(luò)攻擊行為.

(1)IP協(xié)議數(shù)據(jù)包檢測(cè)版本、報(bào)頭長(zhǎng)度、服務(wù)類型、標(biāo)示、分割偏移、源地址、目的地址,在檢測(cè)過程中如果發(fā)現(xiàn)異常情況則報(bào)警,如源地址目的地址一致,偏移量和長(zhǎng)度不符等很有可能是偽造IP地址的land攻擊或者碎片攻擊;

(2)在TCP協(xié)議的數(shù)據(jù)報(bào)文中檢測(cè)TCP源端口目的端口及TCP標(biāo)志,這樣可以匹配諸如非法TCP連接無(wú)數(shù)據(jù)交換的TCP會(huì)話等非法報(bào)文;

(3)在ICMP分組中檢查IP源地址和IP目的地址、類型及序號(hào)字段.通過對(duì)比APR和ICMP的響應(yīng)次數(shù)發(fā)現(xiàn)Smurf,DOS攻擊;(4)UDP協(xié)議檢測(cè)IP源地址和IP目的地址、端口號(hào)等信息;(5)HTTP協(xié)議報(bào)文可以檢測(cè)報(bào)文內(nèi)容、報(bào)文相應(yīng)代碼等信息.

2.3 匹配算法的選擇

入侵檢測(cè)系統(tǒng)的對(duì)捕獲數(shù)據(jù)按照規(guī)則進(jìn)行模式匹配的過程是整個(gè)系統(tǒng)開銷最大部分.因此模式匹配的效率是影響系統(tǒng)攻擊檢測(cè)速度的關(guān)鍵因素也將直接影響系統(tǒng)的性能.目前檢測(cè)引擎大多會(huì)采用多種高效的模式匹配算法[4].

(1)BM算法:是經(jīng)典單模式字符串比較算法,掃描一次完成一次模式匹配.如果網(wǎng)絡(luò)中攻擊模式較單一,模式數(shù)量很小時(shí),則該算法速度很快.但在網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)捕獲的數(shù)據(jù)包中的內(nèi)容可能會(huì)部分匹配很多規(guī)則,匹配的模式數(shù)量增加,每次匹配又都會(huì)重新運(yùn)行匹配算法,就會(huì)造成匹配效率的降低;

(2)多模式匹配算法Aho-Corasic算法[3]并行搜索模式集合要比應(yīng)用BM算法逐一地搜索多個(gè)模式串高效得多.其預(yù)處理時(shí)間取決于規(guī)則集中最長(zhǎng)模式的長(zhǎng)度;

(3)Wu-Manber算法也叫WM算法,是一種多模式匹配算法.該算法采用了Boyer-Moore算法的框架,將字符塊和hash技術(shù)及前綴特征表技術(shù)相結(jié)合取得較高的匹配效率.其主要提高效率的原理是采用跳躍不可能匹配的字符策略和hash散列的方法,加速匹配的進(jìn)行.預(yù)處理過程中構(gòu)建Shift(跳躍表)、Hash(散列表)和Prefix(預(yù)匹配表)這3個(gè)表,跳躍表被用于在掃描文本串,根據(jù)讀入字符串決定可以跳過的字符數(shù),如果相應(yīng)的跳躍值為0,則說明可能產(chǎn)生匹配,就要用到散列表和預(yù)匹配表進(jìn)一步判斷,以確定有哪些匹配候選模式,并驗(yàn)證究竟是哪個(gè)或者哪些候選模式完全匹配.

在實(shí)際測(cè)試過測(cè)試發(fā)現(xiàn)三種算法各有所長(zhǎng),隨著規(guī)則的增加,三種算法的時(shí)間和空間開銷不盡相同,在綜合考慮的情況下,據(jù)我們檢驗(yàn)采用WM算法是比較適合的,未來(lái)可以進(jìn)一步地改進(jìn)優(yōu)化.

3 結(jié)語(yǔ)

高校校園網(wǎng)絡(luò)安全在網(wǎng)絡(luò)日益融入每個(gè)師生工作的同時(shí)也面臨越來(lái)越多安全的挑戰(zhàn),伴隨著網(wǎng)絡(luò)帶寬的增長(zhǎng)和網(wǎng)絡(luò)攻擊種類的豐富,使系統(tǒng)檢測(cè)和防御任務(wù)越來(lái)越重,在系統(tǒng)性能下降的情況下,誤報(bào)漏報(bào)一些威脅網(wǎng)絡(luò)安全的重要攻擊行為.因此提高整個(gè)系統(tǒng)效率,對(duì)入侵檢測(cè)和防御系統(tǒng)的數(shù)據(jù)包捕獲,規(guī)則以及匹配算法進(jìn)行適當(dāng)改進(jìn)具有重要的意義.

[1]侯向?qū)?基于校園網(wǎng)環(huán)境的Snort入侵檢測(cè)系統(tǒng)應(yīng)用研究[J].西安:西北大學(xué),2008(6):30.

[2]李 偉,魯士文.Snort數(shù)據(jù)包捕獲性能的分析與改進(jìn)[J].計(jì)算機(jī)應(yīng)用與軟件,2005(7):104-105.

[3]魏葆雅,吳順祥.基于Snort的入侵檢測(cè)系統(tǒng)的改進(jìn)[J].科技信息,2009(12):181.

[4]魏葆雅,吳順祥.基于Snort的入侵檢測(cè)系統(tǒng)的改進(jìn)[J].科技信息,2009(4):25.

猜你喜歡
模式匹配緩沖區(qū)數(shù)據(jù)包
二維隱蔽時(shí)間信道構(gòu)建的研究*
民用飛機(jī)飛行模擬機(jī)數(shù)據(jù)包試飛任務(wù)優(yōu)化結(jié)合方法研究
基于模式匹配的計(jì)算機(jī)網(wǎng)絡(luò)入侵防御系統(tǒng)
具有間隙約束的模式匹配的研究進(jìn)展
C#串口高效可靠的接收方案設(shè)計(jì)
OIP-IOS運(yùn)作與定價(jià)模式匹配的因素、機(jī)理、機(jī)制問題
基于ARC的閃存數(shù)據(jù)庫(kù)緩沖區(qū)算法①
一類裝配支線緩沖區(qū)配置的兩階段求解方法研究
基于散列函數(shù)的模式匹配算法
初涉緩沖區(qū)
金沙县| 凉城县| 灌云县| 台州市| 西盟| 建始县| 桐乡市| 贵德县| 绍兴市| 卫辉市| 北辰区| 桑植县| 延庆县| 伊金霍洛旗| 保靖县| 旬阳县| 耿马| 墨脱县| 铜山县| 商都县| 乐东| 疏附县| 峨眉山市| 略阳县| 正安县| 汉寿县| 卓资县| 田东县| 闽清县| 肥乡县| 广宁县| 宁晋县| 革吉县| 石城县| 梁河县| 齐齐哈尔市| 临夏市| 澎湖县| 玉田县| 高碑店市| 长子县|