999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于LINUX下橋模式的入侵檢測系統的研究

2008-01-01 00:00:00楊俊玲
商場現代化 2008年5期

[摘要] 本文設計的基于Linux2.6內核橋模式的入侵檢測系統,有別于傳統網絡入侵檢測系統旁路監聽的方式,它使用了橋模式的入侵檢測方式,對數據包的檢測在數據鏈路層進行,以此達到數據包檢測快速、高效的目的。對該系統在真實網絡環境下進行的正常訪問及入侵測試試驗表明:本文設計的基于Linux橋模式的入侵檢測系統達到了無漏報、快速、高效的效果,可以有效的檢測入侵,同時保障了對正常訪問的響應。

[關鍵詞] 入侵檢測系統 Linux 網絡安全 橋模式

一、引言

入侵檢測作為一種積極主動地安全防護技術,提供了對內部攻擊、外部攻擊和誤操作的實時保護,在網絡系統受到危害之前攔截和響應入侵。常見的有基于網絡的入侵檢測和基于主機的入侵檢測系統:基于主機的入侵檢測系統HIDS(HOST Intrusion Detection System)實時監視可疑的連接、非法訪問的闖入等;基于網絡的入侵檢測系統NIDS(Net Intrusion Detection System)在關鍵的網段或交換部位偵聽。在實際的部署中,傳統NIDS是并接在網絡中,通過旁路監聽的方式實時地監視網絡中的流量,判斷其中是否含有攻擊的企圖。

傳統NIDS工作在應用層和網絡層。所抓的數據包由底層向上傳,經過分析判斷后再向下送,有較長的網絡延遲。而且特征代碼庫中特征代碼的匹配的計算量大,計算速度慢,容易形成網絡瓶頸。當攻擊者向被保護網絡發送大量的數據,超過NIDS的處理能力,從而使被監聽的端口流量總和超過監聽端口的上限,會發生丟包的情況,而可能導致入侵行為漏報“1 negative”。還有,當Web 服務器已超載,不能夠再處理更多的連接請求時, NIDS會以為該服務器正在受到拒絕服務的攻擊,容易出現假警報“1 positive”(誤警),將良性流量誤認為惡性的。

據統計,目前NIDS的告警信息中,僅有10%是有用的,因此需要提高NIDS的檢測速度,無遺漏的檢測數據包,進行快速處理以適應高速網絡通信的要求。

二、基于Linux內核橋模式的網絡入侵檢測系統的改進思想

1.傳統NIDS是旁路接入一個網絡(或與集線器連接,或接入交換機的SPAN端口),通過旁路監聽的方式實時地監視網絡流量。基于Linux環境下橋模式的NIDS改進了旁路連接,使其成為網絡的一部分,將它部署到網絡的必經之處,使數據包必須經過該NIDS,以此來強制完成對網絡中所有流經的數據包的檢測,從而避免了入侵的漏報(1 negative),達到數據包的無遺漏檢測,這是網橋模式NIDS優于傳統NIDS的一個重要特點。

2.由于一個網橋更像一段網線,將一個網絡的兩個部分連接在一起。一個透明NIDS像網橋一樣工作,檢測通過它的數據包而不被兩端設備發現。一個橋模式的NIDS的網卡不分配任何IP地址,對于現有網絡拓撲結構透明,絲毫不影響網絡管理人員的路由分析,減輕了網絡管理人員的負擔。由于系統結構的透明性,可以在網絡中添加一個IDS而不需要修改網絡中任何設備的參數。橋模式有效的把NIDS本身隱藏起來,使其成為用戶攻擊的一個盲點,解決了NIDS自身的安全性問題。

3.傳統NIDS是在應用層和網絡層完成客戶端的顯示,數據包的分析與檢測,特征碼的存儲等任務,在做數據包截取和分析時,所抓的數據包由底層向上傳送到應用層,然后解開包頭,讀取相關信息進行分析匹配,經過分析判斷后重新包裝包頭,再向下送,把它從應用層送到數據鏈路層通過網卡傳送出去,大大增加了網絡延遲。而且特征代碼庫中特征代碼匹配的計算量大,計算速度慢,容易形成網絡瓶頸。

這種基于底層的NIDS對數據包的獲取、分析與處理都不在網絡層和應用層,而在鏈路層,通過網橋模式來完成,由內核直接處理數據包,根據橋檢測模塊的判斷,讓數據包通過或是丟棄。對于不能在數據鏈路層明確判斷的數據包,傳送到上層,在網絡層進一步通過特征代碼庫進行高級匹配,這樣的工作方式可以加快數據包的處理速度,節省數據包的處理的時間,減小網絡延遲。同時采用了內核包檢測分析原理,使NIDS在遭到攻擊時檢測并以不同的方式向系統報警,以保證合法數據包的正常通過。

4.Linux的穩定性、可靠性和安全性,給NIDS提供了穩定的運行環境。Linux的開放性及模塊設計技術,使Linux內核功能更容易擴展,能夠靈活的把IDS橋檢測程序模塊加載到內核。

三、基于Linux內核橋模式的網絡入侵檢測系統的設計和實現

1.橋模式的建立

在本課題的研究中,將多塊網卡變成一個橋接設備,從而搭建起網橋,每一個網卡就是橋的一個端口,在橋的端口之間完全透明的轉發數據包。采用Linux2.6內核下的bridge橋接模塊來實現,在linux系統將網卡設置成網橋的工作模式,網卡接收到數據包后,經過的網絡協議層次如圖:

2.內核IDS檢測模塊的實現

為提高內核處理效率,將實現在驅動程序之后,在調用網橋模塊的時候進行數據包檢測,選擇的位置在調用netif_receive_skb函數前調用入侵檢測處理函數。自定義包檢測鉤子函數,在網橋模塊中加入鉤子函數,調用點放到process_backlog函數的調用netif_receive_skb語句之前。通過模塊機制,將橋入侵檢測模塊的處理函數和數據結構注冊到內核中。這樣用bridge和netfilter/iptables構建對于用戶和外界均透明的NIDS,實現了把橋入侵檢測模塊加載到內核網絡接口層向網絡層銜接處。

整個橋入侵檢測的處理模塊通過init_module將該機制定義的函數和數據結構注冊到內核中去,它進行初始化,為包檢測處理模塊的實現分配內存、初始化指針等模塊與內核之間的連接操作,而檢測處理模塊所提供的函數通過系統調用packet-_detect_register_hook將這些函數和數據結構注冊到內核中去。將檢測模塊處理函數注冊到內核的數據結構是packet_detect_hook_

ops,在模塊中生成該結構體的實例,將檢測處理函數作為回調函數,賦值給內核中自定義的鉤子函數指針。

在同一目錄下編寫Makefile文件,編譯生成 .ko(kernel object,內核目標文件)模塊,用insmod命令將模塊插入,內核就會在數據包從數據鏈路層送往網絡層之前調用橋IDS模塊的處理函數,從而對流經的所有數據包進行檢測。把IDS橋檢測程序模塊加載到內核后數據包流程如圖所示。

3.IDS檢測模塊程序設計偽代碼

首先,生成packet_detect_hook_ops結構體的實例。

static struct packet_detect_hook_ops _filter=

{

IDS_module, //packet_detect_hookfn類型的指針鉤子hook指向ids模塊處理函數IDS_module

};

其次,通過系統調用module_ init將定義的函數和數據結構注冊到內核中去的,module_ init調用一個初始化函數init,為狀態機制的實現分配內存、初始化指針等操作,并將定義的結構體實例注冊到內核。

int init(void)

{

初始化各種鏈表表頭

packet_detect_register_hook(IDS_Module);// 登記鉤子函數

return 0;

}

最核心部分是IDS檢測模塊部分。

int IDS_module(struct sk_buff *skb)

{

If(查詢特征跟蹤鏈表,有匹配項)

return PACKET_DROP; //通知內核數據包是入侵包,丟掉

else if(網絡狀態異常)

{

記錄數據包信息;

送入高級匹配模塊;

return PACKET_DETECT; //通知內核數據包需進一步檢測

}

else {

return PACKET_NOMAL;//通知內核數據包是正常包

}

}

最后,通過系統調用module_exit,在模塊卸載時,釋放內存,注銷過濾鉤子函數。

void cleanup(void)

{

釋放鏈表空間

packet_detect_unregister_hook(IDS_Module);//注銷鉤子函數

return;

}

module_init(init);//加載ids檢測模塊入口

module_exit(cleanup);//卸載ids檢測模塊出口

四、實驗

1.實驗環境

實驗環境一:11號交換機和10號主機相連模擬內網,1至9號主機與13號交換機相連模擬外網。10號主機使用IIS做Web發布,成為一個Web Server服務器,外網客戶端(1~9號主機)可以向其發送Web請求,Web 服務端(10號主機)提供Web網頁。基于Linux網橋模式NIDS系統系統安裝在12號主機,它工作在網橋模式下,所以可以通過12號NIDS系統的兩塊網卡分別與11號交換機與13號交換機相連,這樣內網外網中間有了一道檢測防御系統,保護Web Server服務器,防止其受到外網的攻擊。實驗環境一的網絡拓撲結構如圖3。

實驗環境二:14號機為傳統NIDS系統,以旁路模式安置在網絡中,其它均同環境一。

2.實驗結果

環境一實驗結果:當網絡存在正常訪問和入侵掃描時,在不同強度的攻擊下,橋模式NIDS系統的性能,包括:監測系統主機CPU(即12號主機)及內存消耗程度。實驗結果如下圖所示:

圖中1號蘭色線表示當網絡存在正常訪問、入侵掃描時,用1號機進行SYN攻擊時橋模式NIDS系統消耗的CPU/內存情況,2號紅色線表示相同條件下,同時用1、2號機進行SYN攻擊時橋模式NIDS系統消耗的CPU/內存消耗情況,3號綠線表示相同條件下,同時用1、2、3號機進行SYN攻擊時橋模式NIDS消耗的CPU/內存消耗情況。

環境二實驗結果:

圖中1號蘭色線表示用1號機進行SYN攻擊時某公司A系列LND-100NIDS系統消耗的網絡帶寬/CPU,2號紅色線表示1、2號機同時進行SYN攻擊時該系統消耗的網絡帶寬/CPU,3號綠線表示1、2、3號機同時進行SYN攻擊時該系統消耗的網絡帶寬/CPU。

從實驗的結果表明,入侵掃描、Syn攻擊器等工具的掃描和攻擊在傳統的NIDS系統下,因流量過大數據包過多,檢測系統無法檢測攔截攻擊包,并在其系統資源消耗過多情況下無法攔截檢查有害信息,造成黑客嗅探入侵成功。而改進后的基于Linux下橋模式的NIDS系統,采用數據鏈路層檢測分析,以較少的CPU消耗為代價,攔截到了攻擊包并檢測出了黑客的入侵掃描行為,同時保證了網絡的正常訪問請求。但兩者網絡帶寬的消耗幾乎相同。

五、結論

基于Linux2.6內核開發改進的橋模式NIDS系統工作在Linux系統內核網絡協議棧的底層,隨內核啟動而工作,真正的做到了內核底層檢測攔截黑客掃描攻擊的效果。用多種攻擊工具進行黑客攻擊和入侵掃描,該系統都能無遺漏的將數據包抓取并檢測,較好地解決了對入侵掃描以及黑客攻擊行為的檢測和抵御。目前該系統的不足之處是內存資源消耗較多,存在著部分內存泄露的問題。這是是造成系統不穩定的潛在因素,也是以后的開發過程中要對該系統逐漸加以完善的地方。

參考文獻:

[1]Robert Graham. NIDS-Pattern Search vs. Protocol Decode[J],Computers Security, 2001. 20:37~41

[2]StevenMcCanne,Van Jacobson.The BSD Packet Filter;A New Architecture for User-level Packet Capture[J].Lawrence Berkeley Laboratory One Cyclotron RoadBerkeley, 1992

[3]Stephen Northcutt. 網絡入侵檢測分析員手冊[M].人民郵電出版社,2000

[4]Love,R著.Linux內核設計與實現[M].北京:機械工業出版社,2006.1

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。

主站蜘蛛池模板: 日韩高清中文字幕| 亚洲久悠悠色悠在线播放| 精品国产免费观看一区| 日韩精品资源| 国产簧片免费在线播放| 熟妇丰满人妻av无码区| 国产精品夜夜嗨视频免费视频| 欧美成人a∨视频免费观看| 免费av一区二区三区在线| 免费三A级毛片视频| 又黄又湿又爽的视频| 国产美女丝袜高潮| 亚洲视频三级| 国产成人一区免费观看| 真实国产乱子伦视频| 视频二区亚洲精品| 国内a级毛片| 色综合激情网| 亚洲婷婷丁香| 91娇喘视频| 国产精品任我爽爆在线播放6080 | 91在线精品麻豆欧美在线| 久久精品电影| 制服无码网站| 一级毛片免费不卡在线| 亚洲欧美日韩另类| 97国产在线观看| 国产精品yjizz视频网一二区| 国产aⅴ无码专区亚洲av综合网| 国产69精品久久| 国产三级成人| 无码'专区第一页| 欧美成人二区| 18禁不卡免费网站| 国禁国产you女视频网站| 中文字幕伦视频| 午夜毛片免费观看视频 | 中文字幕欧美日韩高清| 国产精品亚洲一区二区三区z | 五月婷婷导航| 成人在线天堂| 97狠狠操| 国内精品自在欧美一区| 青草国产在线视频| 免费A级毛片无码免费视频| 天堂av综合网| 91视频首页| 午夜毛片福利| 亚洲 欧美 日韩综合一区| 久久久久久午夜精品| 国产原创演绎剧情有字幕的| 在线免费观看a视频| 欧美高清国产| 国产网站免费观看| 伊伊人成亚洲综合人网7777| 婷婷色中文| 在线观看国产精品日本不卡网| 色欲不卡无码一区二区| 激情综合网址| 成人午夜天| 国产毛片一区| 国产精品欧美日本韩免费一区二区三区不卡 | 欧美色伊人| 无码一区二区三区视频在线播放| 亚洲男人的天堂视频| 激情無極限的亚洲一区免费| 国产a v无码专区亚洲av| 在线无码九区| 91在线国内在线播放老师| 亚洲精品无码在线播放网站| 久无码久无码av无码| 国产成人免费手机在线观看视频| 精品欧美一区二区三区久久久| 欧美成人精品一级在线观看| 国产超碰在线观看| 亚洲中文字幕国产av| 精品国产99久久| 久久中文字幕av不卡一区二区| 激情综合激情| 国产69精品久久久久妇女| 国产极品美女在线播放| 亚洲国产欧洲精品路线久久|