• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Snort入侵檢測系統(tǒng)的改進優(yōu)化

      2012-09-30 09:29:02楊海峰陳明銳
      關鍵詞:引擎數(shù)據(jù)包規(guī)則

      楊海峰,陳明銳

      (海南大學信息科學技術學院,海南海口570228)

      互聯(lián)網(wǎng)中存在大量的安全威脅,因此,建立一個安全的網(wǎng)絡環(huán)境,以保證數(shù)據(jù)信息的安全性和隱私性,阻止黑客等不法分子通過非法入侵方式竊取和破壞數(shù)據(jù),這是互聯(lián)網(wǎng)發(fā)展的必然要求.最初通過防火墻來防御入侵行為[1],但這種靜態(tài)安全技術已經不能滿足當下互聯(lián)網(wǎng)的安全需求.入侵檢測系統(tǒng)是以硬件和軟件為基礎,監(jiān)控從網(wǎng)絡流入主機的數(shù)據(jù),同時檢測非法入侵活動,它能對企圖入侵或正在進行或發(fā)生過的入侵行為進行識別,并及時發(fā)出報警,能提供實時入侵檢測,因而它是一種有效的安全措施.當前攻擊活動的數(shù)量和破壞性日益劇增,入侵檢測系統(tǒng)已經成為政府機構和企業(yè)公共安全設施的主要構成.Snort是一種輕量網(wǎng)絡入侵檢測系統(tǒng)[2],它基于特征比對方式建立了異常特征數(shù)據(jù)庫,可實時地進行數(shù)據(jù)分析,并檢測入侵行為.鑒此,筆者在Snort的基礎上設計出一種新的方案,從而進一步提高了Snort系統(tǒng)的檢測效率.

      1 Snort簡介

      Snort是一個開源的入侵檢測系統(tǒng)[5],它采用特征比對方式,通過預先定義好的異常特征規(guī)則來識別入侵行為.Snort的工作原理是對流入的數(shù)據(jù)包進行分析,根據(jù)預先定義好的規(guī)則進行模式匹配.它使用二進制的格式化tcpdump文件或純文本文件來記錄捕獲網(wǎng)絡數(shù)據(jù)包,tcpdump是一個捕獲網(wǎng)絡數(shù)據(jù)包的軟件程序,能把捕獲的包保存在格式化的tcpdump文件中.Snort是基于規(guī)則的入侵檢測系統(tǒng),用戶可以將自己定義的規(guī)則加入到特征庫中.由于Snort具有良好的擴展性和可移植性,因此,這也是選擇Snort進行擴展研究的原因之一.Snort入侵檢測系統(tǒng)由以下幾部分組成:

      1)數(shù)據(jù)包捕獲和解析引擎 網(wǎng)絡入侵檢測系統(tǒng)首先要捕獲所有傳輸?shù)奖O(jiān)控網(wǎng)卡的網(wǎng)絡數(shù)據(jù),Snort包捕捉引擎利用Libpcap/Winpcap函數(shù)庫對數(shù)據(jù)進行捕獲,該函數(shù)庫是由Berkeley大學的Lawrence Berkeley國家實驗室研制開發(fā)的.捕獲后的數(shù)據(jù)首先被傳輸?shù)浇馕鲆孢M行處理,然后解析引擎對各個協(xié)議的數(shù)據(jù)進行解析處理,以便進一步提交給檢測引擎進行規(guī)則匹配.

      2)預處理器 數(shù)據(jù)包要經過一系列的預處理之后才能傳輸?shù)綑z測模塊進行監(jiān)測.每一個預處理插件都是根據(jù)數(shù)據(jù)包的不同屬性對數(shù)據(jù)包進行處理,在對不符合規(guī)范的數(shù)據(jù)包進行加工修改之后傳輸給檢測模塊,或者直接丟棄該數(shù)據(jù)包,發(fā)出報警.

      3)檢測引擎 檢測引擎是Snort系統(tǒng)的核心,Snort將檢測規(guī)則存儲在一張二維鏈表中,當網(wǎng)絡數(shù)據(jù)和二維規(guī)則鏈表發(fā)生匹配時則產生報警,報警信號傳輸?shù)捷敵霾寮鲞M一步處理.Snort還可以根據(jù)用戶的需求向規(guī)則鏈表添加匹配規(guī)則,從而提高了Snort檢測機制的靈活性.

      4)輸出插件 輸出插件接收來自檢測引擎,預處理器和解析引擎產生的報警信息,對報警信息進行進一步的處理,并以日志的形式存儲數(shù)據(jù)記錄.

      Snort是基于規(guī)則的網(wǎng)絡入侵系統(tǒng),它有一套靈活的規(guī)則定義語言[6],用戶可以根據(jù)實際需求改變現(xiàn)有的規(guī)則或是添加新的規(guī)則.每一條規(guī)則包括2個部分:規(guī)則頭和規(guī)則選項.規(guī)則頭中包括規(guī)則動作(檢測到入侵時觸發(fā)的動作)、協(xié)議(TCP,UDP,ICMP)、源和目標的IP地址以及端口信息.規(guī)則選項部分由各種判斷是否引發(fā)報警的條件組成,這些條件用來幫助檢測引擎對相應入侵活動產生報警.一條Snort規(guī)則如圖1所示.

      圖1 Snort規(guī)則

      圖1中括號前的內容為規(guī)則頭,規(guī)則頭的第1部分表示規(guī)則動作,它的值可以是 log,alert,pass,activate,dynamic,當輸入數(shù)據(jù)跟規(guī)則發(fā)生匹配時,則響應指定動作,例子中規(guī)則動作的值為alert,表示如果發(fā)生匹配,則產生一個警報;第2部分是協(xié)議類型,包括TCP,UDP,ICMP;第3部分表示源地址的IP地址;第4部分是端口號,例子中any any表示檢測來自任意IP地址和TCP端口的數(shù)據(jù)包,如果協(xié)議部分是ICMP,則不定義端口號部分;第5部分表示數(shù)據(jù)流的流向;第6部分表示目的地址,例子中該部分值為10.1.1.0/24,表示一個C類網(wǎng)的所有IP地址,80是目的端口,指HTTP(超文本傳輸協(xié)議)的端口號.

      圖1中括號內的內容為規(guī)則選項,由一個或多個選項組成,每一個選項包括關鍵字部分和值部分,選項之間用分號分割開.選項內容包括數(shù)據(jù)包相關特征說明、規(guī)則的相關說明、規(guī)則匹配后的動作和對選項的附加說明.例子中包含2個選項content和msg,表示當發(fā)現(xiàn)數(shù)據(jù)包中有“cgi-bin/phf”內容時,Snort會發(fā)送報警信息“CGI-PHF access”.

      針對圖1中的規(guī)則,網(wǎng)絡數(shù)據(jù)如果符合以下要求,則與該規(guī)則發(fā)生匹配并產生一條警報信息:

      1)該數(shù)據(jù)是一個TCP數(shù)據(jù)包;

      2)該數(shù)據(jù)來自任意IP地址和任意TCP端口;

      3)該數(shù)據(jù)的目標地址屬于10.1.1.0/24的C類網(wǎng)絡,端口號為80;

      4)該數(shù)據(jù)包含“cgi-bin/phf”字符串.

      2 改進優(yōu)化方案

      傳統(tǒng)的基于Snort的入侵檢測[7-9]系統(tǒng)雖然能夠有效地處理小規(guī)模的網(wǎng)絡流量,但是隨著互聯(lián)網(wǎng)的快速發(fā)展,不斷涌現(xiàn)出新的問題.傳統(tǒng)檢測系統(tǒng)是被動檢測入侵活動,不能即時地主動發(fā)現(xiàn)安全隱患,且存在丟包漏報的現(xiàn)象.為了改善入侵檢測系統(tǒng)的檢測能力,筆者提出了一種新的基于Snort的設計方案,在Snort的基礎上加入了對未知入侵活動的檢測,把不符合一定規(guī)范的數(shù)據(jù)特征動態(tài)加入到了Snort異常特征庫中,實現(xiàn)了對未知入侵行為的檢測和阻止.

      2.1 方案設計 筆者在Snort系統(tǒng)原有功能模塊的基礎上新增了規(guī)則數(shù)據(jù)庫、優(yōu)化處理模塊以及流出數(shù)據(jù)處理模塊.規(guī)則數(shù)據(jù)庫存儲經Snort過濾掉正常數(shù)據(jù)的特征,優(yōu)化處理模塊負責對規(guī)則數(shù)據(jù)庫按照一定規(guī)則進行優(yōu)化,并把可疑行為的特征從特征數(shù)據(jù)庫提取出來,加入到Snort的異常特征數(shù)據(jù)庫.流出數(shù)據(jù)處理模塊負責把經Snort過濾掉的正常數(shù)據(jù)格式化,然后存儲到特征數(shù)據(jù)庫中.輸出模塊實現(xiàn)對入侵活動結果的響應,筆者在原有輸出模塊功能的基礎上加入了可視化輸出接口,以可視化形式顯示數(shù)據(jù)信息.基本結構如圖2所示.

      圖2 改進優(yōu)化方案的基本結構

      下面重點介紹新增的幾個模塊:

      1)輸出模塊和流出數(shù)據(jù)處理模塊 輸出模塊的工作是對檢測引擎發(fā)出的報警信號產生響應處理,并反饋信息到顯示終端供用戶及時瀏覽.筆者設定Snort工作在入侵檢測模式,它把流入網(wǎng)卡的數(shù)據(jù)包與異常特征規(guī)則庫進行一一匹配,若發(fā)生匹配則通知輸出模塊,由輸出模塊產生警報事件或寫入日志文件.

      流出數(shù)據(jù)處理把經檢測引擎過濾掉的正常數(shù)據(jù)按照一定格式導入到預先定義好的特征數(shù)據(jù)庫中,輸出模塊可以調用特征數(shù)據(jù)庫向用戶顯示數(shù)據(jù)信息.

      2)優(yōu)化處理模塊 優(yōu)化處理模塊是該系統(tǒng)的核心模塊,它的作用是對特征數(shù)據(jù)庫里的記錄進行優(yōu)化處理.數(shù)據(jù)庫每個記錄的屬性除了包含源地址、目的地址信息和數(shù)據(jù)特征之外,還包含該數(shù)據(jù)特征出現(xiàn)的頻率.優(yōu)化處理模塊從數(shù)據(jù)庫中提取特征名稱和頻率2個字段,基于頻率字段對數(shù)據(jù)流進行監(jiān)測.

      筆者預先對每一個特征的頻率設定一個閥值,閥值的大小由網(wǎng)絡的大小和該特征被觸發(fā)的幾率決定,例如將某一條特征的頻率閥值設為325,如果該特征頻率字段的值大于325,則表明該數(shù)據(jù)存在異常,這時候觸發(fā)處理模塊從特征數(shù)據(jù)庫中提取該特征的完整信息并進行格式化處理,然后加入到Snort的異常特征數(shù)據(jù)庫中,當出現(xiàn)未知的異常入侵行為時,某一特征在特定時間段內頻繁訪問主機,采用以上方法可以有效地把此類入侵行為及時反饋給系統(tǒng),并將該入侵行為的特征動態(tài)插入到Snort異常特征庫中,Snort可以及時攔截該入侵行為并發(fā)出警報.頻率字段需要每隔一特定時間段進行歸零處理,即每小時進行一次歸零,表示計算某特征數(shù)據(jù)每小時出現(xiàn)的頻率.該模塊處理流程如圖3所示.

      圖3 優(yōu)化處理模塊流程圖

      此外,規(guī)則數(shù)據(jù)庫還包括以下幾方面的優(yōu)化:

      1)根據(jù)協(xié)議對規(guī)則進行分類;

      2)源地址和目的地址以及端口的惟一性;

      3)頻率高的規(guī)則移到數(shù)據(jù)表頂端;

      4)定期刪除過期規(guī)則.

      以上對規(guī)則數(shù)據(jù)庫的優(yōu)化一方面縮短了檢索時間,另一方面便于用戶觀察入侵檢測系統(tǒng)的活動信息.每隔一個特定時期,筆者將未被激發(fā)過或頻率較小的規(guī)則從數(shù)據(jù)庫中移除,避免規(guī)則數(shù)據(jù)過于龐大,即把這個時間值設定為1周,每隔1周對數(shù)據(jù)庫中的規(guī)則進行1次清理.

      2.2 改進設計方案的優(yōu)勢 互聯(lián)網(wǎng)對數(shù)據(jù)安全的要求不斷提高,本文分析了Snort基于規(guī)則庫入侵檢測系統(tǒng)的優(yōu)點和不足,在此基礎上提出了改進方案,實現(xiàn)了對未知入侵數(shù)據(jù)的有效監(jiān)控,提升了互聯(lián)網(wǎng)的安全指數(shù).以下是改進后的系統(tǒng)的幾點優(yōu)勢:

      1)該系統(tǒng)根據(jù)特征的出現(xiàn)頻率檢測未知入侵,并及時把存在異常的數(shù)據(jù)特征動態(tài)加入Snort異常特征庫,實現(xiàn)了對未知入侵數(shù)據(jù)的阻攔.

      2)特征數(shù)據(jù)庫按照協(xié)議進行分類,便于用戶統(tǒng)計和觀察流入數(shù)據(jù)的分布,用戶可以通過可視化工具直觀地觀察數(shù)據(jù)相關信息.

      3)該結構是基于Snort系統(tǒng)的改進優(yōu)化,繼承了Snort良好的適應性和擴展性.因此,可以通過增加檢索引擎來適應更大規(guī)模的網(wǎng)絡,也可以通過可視化信息顯示接口連接不同終端來顯示信息.這種可擴展性有利于今后做進一步的研究,以不斷增強軟件的功能.

      3 實驗結果

      筆者在百兆局域網(wǎng)中搭建實驗所需的環(huán)境,基于Windows操作系統(tǒng),采用Snort 2.8.5.3 for Window版本,數(shù)據(jù)庫為SQL Server2000.

      用主機1負責發(fā)送數(shù)據(jù)包,主機2進行入侵檢測,主機3負責規(guī)則數(shù)據(jù)庫的優(yōu)化處理以及Snort規(guī)則庫的管理.主機2包括Snort規(guī)則庫和檢測引擎模塊,負責對流入數(shù)據(jù)進行檢測.未被檢測為入侵行為的數(shù)據(jù)從主機2流出并流入主機3,主機3包含筆者定義的特征數(shù)據(jù)庫和優(yōu)化處理模塊,將流入主機3的數(shù)據(jù)按照一定格式提取特征,并將該特征存入特征數(shù)據(jù)庫.優(yōu)化處理模塊負責對該主機上的特征數(shù)據(jù)庫進行分類以及各規(guī)則的頻率檢測.把系統(tǒng)的檢測部分和規(guī)則數(shù)據(jù)庫的優(yōu)化管理部分分別配置在2個主機上,這使得各部分的任務分配更加明確,也為以后規(guī)模更大的網(wǎng)絡提供了良好的配置結構.

      3.1 試驗1 試驗對改進后的入侵檢測系統(tǒng)和原Snort系統(tǒng)進行了整體性能的比較(見圖4).從圖4中可以看出,在網(wǎng)絡流量較小的情況下,Snort改進后的系統(tǒng)所截獲的攻擊數(shù)量都很高,能夠保證網(wǎng)絡傳輸數(shù)據(jù)的安全性.但當網(wǎng)絡流量不斷增大時,Snort檢測到的攻擊數(shù)目不斷下降,丟包現(xiàn)象不斷加劇,而采用改進后的檢測系統(tǒng),在網(wǎng)絡流量未達到300 Mbps時,所檢測到的攻擊數(shù)目都保持在穩(wěn)定的數(shù)量等級;但隨著網(wǎng)絡流量的繼續(xù)增大,開始出現(xiàn)丟包現(xiàn)象,檢測到的攻擊數(shù)量有所減少.與Snort原檢測系統(tǒng)相比,改進后的系統(tǒng)的檢測能力有較大提高.

      3.2 實驗2 本實驗對改進后的系統(tǒng)進行了獨立測試,檢測了系統(tǒng)對不同攻擊類型入侵行為的捕獲能力以及對未知入侵行為的捕獲能力.由于實驗數(shù)據(jù)量相對較小,因此只將各個規(guī)則的頻率閥值設定為小于10的靜態(tài)值,這個值為多次試驗而得到的經驗值.由主機1發(fā)送4種類型的入侵行為,每種類型分別包含已知特征的入侵和未知特征的入侵,其數(shù)量如表1所示.

      圖4 入侵數(shù)據(jù)攔截量對比

      表2和表3是針對入侵數(shù)據(jù)的檢測結果,總檢測率=總的攔截數(shù)量/(已知特征入侵數(shù)量+未知特征入侵數(shù)量)×100%,未知特征入侵檢測率=未知特征入侵攔截量/未知特征入侵數(shù)量×100%.系統(tǒng)總的檢測率=攔截總量/入侵總量=88.7%.未知特征入侵的檢測率=未知特征入侵行為攔截總量/未知特征入侵總量=72.9%.

      表1 各類型入侵行為數(shù)量

      表2 對各類型入侵的檢測率

      表3 對各類型未知入侵的檢測率

      通過以上實驗可以看出,改進后的入侵檢測系統(tǒng)優(yōu)于原Snort系統(tǒng),對于未知特征的入侵行為具備了有效的識別檢測能力.

      4 結束語

      Snort是基于特征的入侵檢測系統(tǒng),它對于不包含在特征庫中的入侵行為不能有效地進行監(jiān)測.為此,筆者在Snort的基礎上建立了新的特征數(shù)據(jù)庫,存儲被Snort過濾掉的數(shù)據(jù),當某一行為的頻率超過一定閥值時,則檢測為入侵行為,并將其動態(tài)加入到Snort異常特征庫中,從而實現(xiàn)了對該行為的攔截.為了得到性能更好的入侵檢測系統(tǒng),需要對閥值的設定提供更好的方案,以降低誤檢率.此外,系統(tǒng)還提供了可視化信息反饋接口,將流入數(shù)據(jù)和入侵行為的信息顯示給用戶.對于動態(tài)地設定特征頻率字段的閥值以及為用戶提供更友好的信息顯示平臺,將是下一步的研究重點.

      [1]劉洋.計算機網(wǎng)絡安全與防范淺析[J].科技創(chuàng)業(yè)家,2012(2):105.

      [2]GO'MEZ J,GIL C,PADILLA N,et al.Design of a Snort-Based Hybrid intrusion detection system[J].Lecture Notes in Computer Science,2009,5518:515-522.

      [3]史志才,夏永祥.高速網(wǎng)絡環(huán)境下的入侵檢測技術研究綜述[J].計算機應用研究,2010,27(5):1606-1610.

      [4]王冬霞,張玉輝.基于Snort入侵檢測系統(tǒng)的研究與設計[J].科技廣場,2011(9):117-119.

      [5]齊建東,陶蘭,孫總參,等.入侵檢測工具—Snort剖析[J].計算機工程與設計,2004,25(1):36-38,48.

      [6]趙志偉,陳寶.Snort規(guī)則的分析與研究[J].黑龍江科技信息,2008(14):87.

      [7]商可旻,武小年,楊麗,等.基于Snort的入侵檢測分層結構的設計與實現(xiàn)[J].桂林電子科技大學報,2011,31(5):369-372.

      [8]AYDIN M Ali,ZAIM A Halim ,CEYLAN K G?khan.A hybrid intrusion detection system design for computer network security[J].Computers& Electrical Engineering,2009,35(3):517-526.

      [9]韓國峰.基于Snort的入侵檢測系統(tǒng)分析及應用[J].內蒙古科技與經濟,2011(20):56-58.

      猜你喜歡
      引擎數(shù)據(jù)包規(guī)則
      撐竿跳規(guī)則的制定
      數(shù)獨的規(guī)則和演變
      SmartSniff
      讓規(guī)則不規(guī)則
      Coco薇(2017年11期)2018-01-03 20:59:57
      藍谷: “涉藍”新引擎
      商周刊(2017年22期)2017-11-09 05:08:31
      TPP反腐敗規(guī)則對我國的啟示
      無形的引擎
      河南電力(2015年5期)2015-06-08 06:01:46
      基于Cocos2d引擎的PuzzleGame開發(fā)
      基于Libpcap的網(wǎng)絡數(shù)據(jù)包捕獲器的設計與實現(xiàn)
      視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
      平湖市| 福州市| 阿图什市| 乐清市| 江华| 白朗县| 黄梅县| 安龙县| 论坛| 通山县| 石景山区| 酉阳| 瓮安县| 大冶市| 开鲁县| 临江市| 公主岭市| 望都县| 泾川县| 顺昌县| 安福县| 武穴市| 界首市| 登封市| 永城市| 山阳县| 铅山县| 泰兴市| 永兴县| 元江| 泗水县| 忻州市| 肇东市| 沧源| 五家渠市| 山阳县| 青海省| 渭源县| 巴南区| 桑植县| 石门县|