第一篇:基于數(shù)據(jù)流SFCM挖掘的入侵檢測系統(tǒng)模型論文
我國的入侵檢測系統(tǒng)面臨的挑戰(zhàn)及亟待解決的問題
近年來,我國的網(wǎng)絡(luò)安全受到各行各業(yè)人士 的 普遍關(guān)注。許多相關(guān)學(xué)者致力于維護(hù)網(wǎng)絡(luò)安全的研究當(dāng)中,導(dǎo)致我國網(wǎng)絡(luò)安全技術(shù)得到普遍提升。但是有關(guān)網(wǎng)絡(luò)攻擊的情況還是不斷出現(xiàn)。其中有一個(gè)很重要的原因就是,網(wǎng)絡(luò)攻擊也在以同樣的速度,甚至更快的速度向前發(fā)展。對實(shí)際情況進(jìn)行分析,主要包括以下幾個(gè)方面:攻擊攻擊向自動(dòng)化的方向發(fā)展。前些年,我國出現(xiàn)的主要網(wǎng)絡(luò)攻擊都是通過手工的方式進(jìn)行的,但是通過近幾年的發(fā)展,自動(dòng)化攻擊幾乎成了網(wǎng)絡(luò)攻擊的新常態(tài)。通過分析,入侵檢測技術(shù)面臨的挑戰(zhàn)主要包括以下幾個(gè)方面。
1.1如何提升入侵檢測技術(shù)的檢測速度
在網(wǎng)絡(luò)信息技術(shù)的飛速發(fā)展和多元化變化 之 下,網(wǎng)絡(luò)的發(fā)展已經(jīng)漸漸超出了摩爾定律的規(guī)律。尤其是在網(wǎng)絡(luò)帶寬的快速增長條件下,入侵檢測技術(shù)的發(fā)展已經(jīng)無法滿足新時(shí)期網(wǎng)絡(luò)發(fā)展的要求。如果檢測技術(shù)漸漸跟不上網(wǎng)絡(luò)數(shù)據(jù)傳輸速度的要求,就會(huì)導(dǎo)致其中的數(shù)據(jù)包的遺漏。
1.2如何提高入侵檢測系統(tǒng)的準(zhǔn)確性
通過對新的入侵檢測手段的運(yùn)用進(jìn)行分析 發(fā) 現(xiàn),誤用檢測系統(tǒng)的特征庫不能及時(shí)得到更新是導(dǎo)致信息漏報(bào)的主要原因。在異常的檢測系統(tǒng)當(dāng)中,如何快速分辨哪些 行 為 屬 于 異 常 的,是 一 個(gè) 急 需 解 決 的 問 題。從目前的入侵檢測技術(shù)系統(tǒng)來看,很多情況下無法判斷該組可疑的數(shù)據(jù)是由于錯(cuò)誤操作行為導(dǎo)致的,還是由于入侵攻擊導(dǎo)致的。
1.3如何提升入侵檢測系統(tǒng)的安全性能
入侵檢測系統(tǒng)也是電腦高手常常要攻擊的對象。由于新時(shí)期,電腦高手技能的增長,對入侵檢測系統(tǒng)的安全性提出了新的要求。在以前,電腦高手想要入侵計(jì)算機(jī)網(wǎng)絡(luò),都要講防火墻作為最主要的攻擊對象。隨著入侵檢測系統(tǒng)對計(jì)算機(jī)網(wǎng)絡(luò)信息保護(hù)機(jī)能的增強(qiáng),其也漸漸成為電腦高手進(jìn)行攻擊的重要目標(biāo)。因此,對提升入侵檢測系統(tǒng)安全性能提供了較大的挑戰(zhàn)。
1.4如何提高入侵檢測系統(tǒng)的自主學(xué)習(xí)能力
我國傳統(tǒng)的入侵檢測規(guī)則,主要依賴的是手 工 進(jìn)行添加。手工與自動(dòng)化相比必然存在較大的劣勢,不僅更新速度較慢,實(shí)時(shí)性能也較差。往往是當(dāng)不安全狀況發(fā)生之后,才開始采取相應(yīng)的措施進(jìn)行補(bǔ)救?;跀?shù)據(jù)流SFCM挖掘的入侵檢測系統(tǒng)模型
2.1數(shù)據(jù)流采集模塊
數(shù)據(jù)采集 模 塊 的 主 要 任 務(wù) 就 是 無 損 捕 獲 網(wǎng) 絡(luò) 報(bào)文。而且,還要進(jìn)行一些較為簡單的報(bào)文檢測,對一些錯(cuò)誤的報(bào)文進(jìn)行排查。在之前進(jìn)行數(shù)據(jù)采集時(shí),其網(wǎng)絡(luò)上的數(shù)據(jù)流是網(wǎng)絡(luò)正常使用時(shí)一段時(shí)間的數(shù)據(jù)流,即使沒有受到任何的攻擊,也有可能存在一定的干擾噪聲。由于這些數(shù)據(jù)能作為訓(xùn)練數(shù)據(jù),數(shù)據(jù)采集模塊的主要任務(wù)就是進(jìn)行網(wǎng)絡(luò)報(bào)文的無損捕獲,與此同時(shí),還需要去完成一些簡單斷為正常模型提供就有效的數(shù)據(jù)。
2.2數(shù)據(jù)流整理模塊
該模塊主要負(fù)責(zé)的就是訓(xùn)練數(shù)據(jù)整理、數(shù) 據(jù) 除 去噪音等工作,數(shù)據(jù)流的整理模塊在進(jìn)行數(shù)據(jù)采集的過程中,信息在沒有入侵攻擊的信息侵入時(shí),都是一些常用的系統(tǒng)處理操作。數(shù)據(jù)的采集主要的任務(wù)就是對報(bào)文進(jìn)行無損捕獲,對于采集到的數(shù)據(jù)能不能成為訓(xùn)練數(shù)據(jù),那就要取決于所采集到時(shí)段的數(shù)據(jù)質(zhì)量。
2.3 SFCM算法模塊
聚類分析是當(dāng)前我國運(yùn)用的十分重要的數(shù)據(jù)挖掘技術(shù),在實(shí)際運(yùn)用當(dāng)中發(fā)揮了十分重要的作用。聚類分析首先將數(shù)據(jù)集中的數(shù)據(jù)對象根據(jù)性質(zhì)進(jìn)行分組,這樣每個(gè)組內(nèi)部數(shù)據(jù)大致類似。但是各組之間,數(shù)據(jù)的相似性卻較低。然后運(yùn)用SFCM算法從各組中計(jì)算出與網(wǎng)絡(luò)安全相關(guān)的系統(tǒng)特征屬性。然后按照提取出的屬性,設(shè)計(jì)出導(dǎo)致出現(xiàn)安全事件的分類模型。從而大大降低了由于人為因素導(dǎo)致的在入侵模式分析時(shí)的失誤,達(dá)到對安全事件進(jìn)行識別的自動(dòng)化程度。結(jié)語
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的快速發(fā)展,人們在 享 受 網(wǎng)絡(luò)帶來的利益之后,更加擔(dān)心的是網(wǎng)絡(luò)使用的安全性。入侵檢測是一種具有高度積極性質(zhì)的網(wǎng)絡(luò)安全防護(hù)技術(shù),數(shù)據(jù)挖掘流失一種能夠有效地對高維的、動(dòng)態(tài)變化的大量流式數(shù)據(jù)進(jìn)行挖掘的方法。將入侵檢測與數(shù)據(jù)挖掘與識別相結(jié)合,一定能夠?yàn)槲覈木W(wǎng)絡(luò)安全打造一個(gè)堅(jiān)固的防護(hù)網(wǎng)。
參考文獻(xiàn)
[1]毛伊敏,楊路明,陳志剛等。基于數(shù)據(jù)流挖掘技術(shù)的入侵檢測模型與算法[J].中南大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,(09)。
[2]張凈,孫志揮,宋余慶等。基于信息論的高維海量數(shù)據(jù)離群點(diǎn)挖掘[J].計(jì)算機(jī)科學(xué),2011,(07)。
[3]高崢,陳蜀宇,李國勇?;旌先肭謾z測系統(tǒng)的研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2010,(06)。
第二篇:入侵檢測技術(shù)論文
目錄
第一章 緒論
1.1 入侵檢測技術(shù)的背景 1.2 程序設(shè)計(jì)的目的 第二章 入侵檢測系統(tǒng) 2.1 網(wǎng)絡(luò)入侵概述
2.2 網(wǎng)絡(luò)存在的安全隱患
2.3 網(wǎng)絡(luò)入侵與攻擊的常用手段 2.4 入侵檢測技術(shù)
2.4.1 誤用入侵檢測技術(shù) 2.4.2 異常入侵檢測技術(shù)
第三章 協(xié)議分析 3.1 協(xié)議分析簡介 3.2 協(xié)議分析的優(yōu)勢
第四章 PANIDS系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn) 4.1 PANIDS系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)
4.2 系統(tǒng)基本信息讀取模塊的設(shè)計(jì)及實(shí)現(xiàn) 4.3 網(wǎng)絡(luò)數(shù)據(jù)包捕獲模塊的設(shè)計(jì)及實(shí)現(xiàn) 4.4 基于協(xié)議分析的入侵檢測模塊的設(shè)計(jì)及實(shí)現(xiàn) 4.4.1 數(shù)據(jù)包的分解 4.4.2 入侵檢測的實(shí)現(xiàn) 4.5 實(shí)驗(yàn)結(jié)果及結(jié)論
第五章 總結(jié)與參考文獻(xiàn)
摘要
網(wǎng)絡(luò)技術(shù)高速發(fā)展的今天,人們越來越依賴于網(wǎng)絡(luò)進(jìn)行信息的處理。因此,網(wǎng)絡(luò)安全就顯得相當(dāng)重要,隨之產(chǎn)生的各種網(wǎng)絡(luò)安全技術(shù)也得到了不斷地發(fā)展。防火墻、加密等技術(shù),總的來說均屬于靜態(tài)的防御技術(shù)。如果單純依靠這些技術(shù),仍然難以保證網(wǎng)絡(luò)的安全性。入侵檢測技術(shù)是一種主動(dòng)的防御技術(shù),它不僅能檢測未經(jīng)授權(quán)的對象入侵,而且也能監(jiān)視授權(quán)對象對系統(tǒng)資源的非法使用。傳統(tǒng)的入侵檢測系統(tǒng)一般都采用模式匹配技術(shù),但由于技術(shù)本身的特點(diǎn),使其具有計(jì)算量大、檢測效率低等缺點(diǎn),而基于協(xié)議分析的檢測技術(shù)較好的解決了這些問題,其運(yùn)用協(xié)議的規(guī)則性及整個(gè)會(huì)話過程的上下文相關(guān)性,不僅提高了入侵檢測系統(tǒng)的速度,而且減少了漏報(bào)和誤報(bào)率。本文提出了一種基于協(xié)議分析的網(wǎng)絡(luò)入侵檢測系統(tǒng)PANIDS的模型,在該模型中通過Winpcap捕獲數(shù)據(jù)包,并對數(shù)據(jù)包進(jìn)行協(xié)議分析,判斷其是否符合某種入侵模式,從而達(dá)到入侵檢測的目的。
關(guān)鍵詞: 入侵檢測,協(xié)議分析,PANIDS
第一章 緒論
1.1 入侵檢測技術(shù)的背景
隨著計(jì)算機(jī)網(wǎng)絡(luò)的飛速發(fā)展,網(wǎng)絡(luò)通信已經(jīng)滲透到社會(huì)經(jīng)濟(jì)、文化和科學(xué)的各個(gè)領(lǐng)域;對人類社會(huì)的進(jìn)步和發(fā)展起著舉足輕重的作用,它正影響和改變著人們工作、學(xué)習(xí)和生活的方式。另外,Internet的發(fā)展和應(yīng)用水平也已經(jīng)成為衡量一個(gè)國家政治、經(jīng)濟(jì)、軍事、技術(shù)實(shí)力的標(biāo)志;發(fā)展網(wǎng)絡(luò)技術(shù)是國民經(jīng)濟(jì)現(xiàn)代化建設(shè)不可缺少的必要條件。網(wǎng)絡(luò)使得信息的獲取、傳遞、存儲(chǔ)、處理和利用變得更加有效、迅速,網(wǎng)絡(luò)帶給人們的便利比比皆是。然而,網(wǎng)絡(luò)在給人們的學(xué)習(xí)、生活和工作帶來巨大便利的同時(shí)也帶來了各種安全問題。網(wǎng)絡(luò)黑客可以輕松的取走你的機(jī)密文件,竊取你的銀行存款,破壞你的企業(yè)帳目,公布你的隱私信函,篡改、干擾和毀壞你的數(shù)據(jù)庫,甚至直接破壞你的磁盤或計(jì)算機(jī),使你的網(wǎng)絡(luò)癱瘓或者崩潰。因此,研究各種切實(shí)有效的安全技術(shù)來保障計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)的安全,已經(jīng)成為刻不容緩的課題。伴隨著網(wǎng)絡(luò)的發(fā)展,各種網(wǎng)絡(luò)安全技術(shù)也隨之發(fā)展起來。常用的網(wǎng)絡(luò)安全技術(shù)有:數(shù)據(jù)加密、虛擬專用網(wǎng)絡(luò)(VPN,Virtual Private Network)、防火墻、殺毒軟件、數(shù)字簽名和身份認(rèn)證等技術(shù)。這些傳統(tǒng)的網(wǎng)絡(luò)安全技術(shù),對保護(hù)網(wǎng)絡(luò)的安全起到非常重要的作用,然而它們也存在不少缺陷。例如,防火墻技術(shù)雖然為網(wǎng)絡(luò)服務(wù)提供了較好的身份認(rèn)證和訪問控制,但是它不能防止來自防火墻內(nèi)部的攻擊、不能防備最新出現(xiàn)的威脅、不能防止繞過防火墻的攻擊,入侵者可以利用脆弱性程序或系統(tǒng)漏洞繞過防火墻的訪問控制來進(jìn)行非法攻擊。傳統(tǒng)的身份認(rèn)證技術(shù),很難抵抗脆弱性口令、字典攻擊、特洛伊木馬、網(wǎng)絡(luò)窺探器以及電磁輻射等攻擊手段。虛擬專用網(wǎng)技術(shù)只能保證傳輸過程中的安全,并不能防御諸如拒絕服務(wù)攻擊、緩沖區(qū)溢出等常見的攻擊。另外,這些技術(shù)都屬于靜態(tài)安全技術(shù)的范疇;靜態(tài)安全技術(shù)的缺點(diǎn)是只能靜態(tài)和消極地防御入侵,而不能主動(dòng)檢測和跟蹤入侵。而入侵檢測技術(shù)是一種動(dòng)態(tài)安全技術(shù),它主動(dòng)地收集包括系統(tǒng)審計(jì)數(shù)據(jù),網(wǎng)絡(luò)數(shù)據(jù)包以及用戶活動(dòng)狀態(tài)等多方面的信息;然后進(jìn)行安全性分析,從而及時(shí)發(fā)現(xiàn)各種入侵并產(chǎn)生響應(yīng)。1.2 程序設(shè)計(jì)的目的
在目前的計(jì)算機(jī)安全狀態(tài)下,基于防火墻、加密技術(shù)等的安全防護(hù)固然重要;但是要根本改善系統(tǒng)的安全現(xiàn)狀,必須要發(fā)展入侵檢測技術(shù)。它已經(jīng)成為計(jì)算機(jī)安全策略中的核心技術(shù)之一。Intrusion Detection System(簡稱IDS)作為一種主動(dòng)的安全防護(hù)技術(shù),提供了對內(nèi)部攻擊、外部攻擊和誤操作的實(shí)時(shí)保護(hù)。從網(wǎng)絡(luò)安全立體縱深的多層次防御角度出發(fā),入侵檢測理應(yīng)受到高度重視,這從國外入侵檢測產(chǎn)品市場的蓬勃發(fā)展就可以看出。在國內(nèi),隨著上網(wǎng)關(guān)鍵部門、關(guān)鍵業(yè)務(wù)越來越多,迫切需要具有自主版權(quán)的入侵檢測產(chǎn)品;但目前我國的入侵檢測技術(shù)還不夠成熟,處于發(fā)展和跟蹤國外技術(shù)的階段,所以對入侵檢測系統(tǒng)的研究非常重要。傳統(tǒng)的入侵檢測系統(tǒng)中一般采用傳統(tǒng)的模式匹配技術(shù),將待分析事件與入侵規(guī)則相匹配。從網(wǎng)絡(luò)數(shù)據(jù)包的包頭開始與攻擊特征字符串比較。若比較結(jié)果不同,則下移一個(gè)字節(jié)再進(jìn)行;若比較結(jié)果相同,那么就檢測到一個(gè)可 能 的攻擊。這種逐字節(jié)匹配方法具有計(jì)算負(fù)載大及探測不夠靈活兩個(gè)最根本的缺陷。面對近幾年不斷出現(xiàn)的ATM、千兆以太網(wǎng)、G比特光纖網(wǎng)等高速網(wǎng)絡(luò)應(yīng)用,實(shí)現(xiàn)實(shí)時(shí)入侵檢測成為一個(gè)現(xiàn)實(shí)的問題。適應(yīng)高速網(wǎng)絡(luò)的環(huán)境,改進(jìn)檢測算法以提高運(yùn)行速度和效率是解決該問題的一個(gè)途徑。協(xié)議分析能夠智能地”理解”協(xié)議,利用網(wǎng)絡(luò)協(xié)議的高度規(guī)則性快速探測攻擊的存在,從而大大減少了模式匹配所需的運(yùn)算。所以說研究基于協(xié)議分析的入侵檢測技術(shù)具有很強(qiáng)的現(xiàn)實(shí)意義。
第二章 入侵檢測系統(tǒng)
2.1 網(wǎng)絡(luò)入侵概述
網(wǎng)絡(luò)在給人們帶來便利的同時(shí)也引入了很多安全問題。從防衛(wèi)者的角度來看,網(wǎng)絡(luò)安全的目標(biāo)可以歸結(jié)為以下幾個(gè)方面 :(1)網(wǎng)絡(luò)服務(wù)的可用性。在需要時(shí),網(wǎng)絡(luò)信息服務(wù)能為授權(quán)用戶提供實(shí)時(shí)有效的服務(wù)。
(2)網(wǎng)絡(luò)信息的保密性。網(wǎng)絡(luò)服務(wù)要求能防止敏感信息泄漏,只有授權(quán)用戶才能獲取服務(wù)信息。
(3)網(wǎng)絡(luò)信息的完整性。網(wǎng)絡(luò)服務(wù)必須保證服務(wù)者提供的信息內(nèi)容不能被非授權(quán)篡改。完整性是對信息的準(zhǔn)確性和可靠性的評價(jià)指標(biāo)。
(4)網(wǎng)絡(luò)信息的不可抵賴性。用戶不能否認(rèn)消息或文件的來源地,也不能否認(rèn)接受了信息或文件。
(5)網(wǎng)絡(luò)運(yùn)行的可控性。也就是網(wǎng)絡(luò)管理的可控性,包括網(wǎng)絡(luò)運(yùn)行的物理的可控性和邏輯或配置的可控性,能夠有效地控制網(wǎng)絡(luò)用戶的行為及信息的傳播范圍。
2.2 網(wǎng)絡(luò)存在的安全隱患
網(wǎng)絡(luò)入侵從根本上來說,主要是因?yàn)榫W(wǎng)絡(luò)存在很多安全隱患,這樣才使得攻擊者有機(jī)可乘。導(dǎo)致網(wǎng)絡(luò)不安全的主要因素可以歸結(jié)為下面幾點(diǎn):
(1)軟件的Bug。眾所周知,各種操作系統(tǒng)、協(xié)議棧、服務(wù)器守護(hù)進(jìn)程、各種應(yīng)用程序等都存在不少漏洞??梢圆豢鋸埖恼f,幾乎每個(gè)互聯(lián)網(wǎng)上的軟件都或多或少的存在一些安全漏洞。這些漏洞中,最常見的有緩沖區(qū)溢出、競爭條件(多個(gè)程序同時(shí)訪問一段數(shù)據(jù))等。
(2)系統(tǒng)配置不當(dāng)。操作系統(tǒng)的默認(rèn)配置往往照顧用戶的友好性,但是容易使用的同時(shí)也就意味著容易遭受攻擊。這類常見的漏洞有:系統(tǒng)管理員配置不恰當(dāng)、系統(tǒng)本身存在后門等。
(3)脆弱性口令。大部分人為了輸入口令的時(shí)候方便簡單,多數(shù)都使用自己或家人的名字、生日、門牌號、電話號碼等作為口令。攻擊者可以通過猜測口令或拿到口令文件后,利用字典攻擊等手段來輕易破解口令。
(4)信息泄漏。入侵者常用的方法之一就是竊聽。在廣播式的局域網(wǎng)上,將網(wǎng)卡配置成”混雜”模式,就可以竊聽到該局域網(wǎng)的所有數(shù)據(jù)包。如果在服務(wù)器上安裝竊聽軟件就可以拿到遠(yuǎn)程用戶的帳號和口令。
(5)設(shè)計(jì)的缺陷。最典型的就是TCP/IP協(xié)議,在協(xié)議設(shè)計(jì)時(shí)并沒有考慮到安全因素。雖然現(xiàn)在已經(jīng)充分意識到了這一點(diǎn),但是由于TCP/IP協(xié)議已經(jīng)廣泛使用,因此暫時(shí)還無法被完全代替。另外,雖然操作系統(tǒng)設(shè)計(jì)的時(shí)候考慮了很多安全因素,但是仍然無法避免地存在一些缺陷。例如,廣泛使用的Windows操作系統(tǒng),幾乎每隔幾個(gè)月都要出一定數(shù)量的安全補(bǔ)丁,就是因?yàn)橄到y(tǒng)存在很多安全隱患。2.3 網(wǎng)絡(luò)入侵與攻擊的常用手段
長期以來,黑客攻擊技術(shù)沒有成為系統(tǒng)安全研究的一個(gè)重點(diǎn),一方面是攻擊技術(shù)很大程度上依賴于個(gè)人的經(jīng)驗(yàn)以及攻擊者之間的交流,這種交流通常都是地下的,黑客有他們自己的交流方式和行為準(zhǔn)則,這與傳統(tǒng)的學(xué)術(shù)研究領(lǐng)域不相同;另一方面,研究者還沒有充分認(rèn)識到:只有更多地了解攻擊技術(shù),才能更好地保護(hù)系統(tǒng)的安全。下面簡單介紹幾種主要的攻擊類型。1.探測攻擊
通過掃描允許連接的服務(wù)和開放端口,能迅速發(fā)現(xiàn)目標(biāo)主機(jī)端口的分配情況以及所提供的各項(xiàng)服務(wù)和服務(wù)程序的版本號。另外通過掃描還可以探測到系統(tǒng)的漏洞等信息。黑客找到有機(jī)可乘的服務(wù)或端口后就可以進(jìn)行攻擊了。常見的探測掃描程序有:SATAN、NTScan、X_Scan、Nessus等。2.網(wǎng)絡(luò)監(jiān)聽
將網(wǎng)卡設(shè)置為混雜模式,對已流經(jīng)某個(gè)以太網(wǎng)段的所有數(shù)據(jù)包進(jìn)行監(jiān)聽,以獲取敏感信息,如包含了”usename”或”password”等信息的數(shù)據(jù)包。常見的網(wǎng)絡(luò)監(jiān)聽工具有:NetRay、Sniffer、Etherfind、Snoop、Tcpdump等。3.解碼類攻擊
通過各種方法獲取password文件,然后用口令猜測程序來破譯用戶帳號和密碼。常見的解碼工具有:Crack、LophtCrack等。
2.4 入侵檢測技術(shù)
入侵檢測技術(shù)可以分為兩大類:異常入侵檢測技術(shù)和誤用入侵檢測技術(shù)。下面分別介紹這兩種入侵檢測技術(shù)。2.4.1 誤用入侵檢測技術(shù)
誤用入侵檢測首先對表示特定入侵的行為模式進(jìn)行編碼,建立誤用模式庫;然后對實(shí)際檢測過程中得到的審計(jì)事件數(shù)據(jù)進(jìn)行過濾,檢查是否包含入侵特征串。誤用檢測的缺陷在于只能檢測已知的攻擊模式。常見的誤用入侵檢測技術(shù)有以下幾種:
1.模式匹配
模式匹配是最常用的誤用檢測技術(shù),特點(diǎn)是原理簡單、擴(kuò)展性好、檢測效率高、可以實(shí)時(shí)檢測;但是只能適用于比較簡單的攻擊方式。它將收集到的信息與已知的網(wǎng)絡(luò)入侵和系統(tǒng)誤用模式串進(jìn)行比較,從而發(fā)現(xiàn)違背安全策略的行為。著名的輕量級開放源代碼入侵檢測系統(tǒng)Snort就是采用這種技術(shù)。2.專家系統(tǒng)
該技術(shù)根據(jù)安全專家對可疑行為的分析經(jīng)驗(yàn)來形成一套推理規(guī)則,然后在此基礎(chǔ)上建立相應(yīng)的專家系統(tǒng)來自動(dòng)對所涉及的入侵行為進(jìn)行分析。該系統(tǒng)應(yīng)當(dāng)能夠隨著經(jīng)驗(yàn)的積累而利用其自學(xué)習(xí)能力進(jìn)行規(guī)則的擴(kuò)充和修正。專家系統(tǒng)方法存在一些實(shí)際問題:處理海量數(shù)據(jù)時(shí)存在效率問題,這是由于專家系統(tǒng)的推理和決策模塊通常使用解釋型語言來實(shí)現(xiàn),所以執(zhí)行速度比編譯型語言慢;專家系統(tǒng)的性能完全取決于設(shè)計(jì)者的知識和技能;規(guī)則庫維護(hù)非常艱巨,更改規(guī)則時(shí)必須考慮到對知識庫中其他規(guī)則的影響等等。3.狀態(tài)遷移法
狀態(tài)遷移圖可用來描述系統(tǒng)所處的狀態(tài)和狀態(tài)之間可能的遷移。狀態(tài)遷移圖用于入侵檢測時(shí),表示了入侵者從合法狀態(tài)遷移到最終的危害狀態(tài)所采取的一系列行動(dòng)。
在檢測未知的脆弱性時(shí),因?yàn)闋顟B(tài)遷移法強(qiáng)調(diào)的是系統(tǒng)處于易受損的狀態(tài)而不是未知入侵的審計(jì)特征,因此這種方法更具有健壯性。而它潛在的一個(gè)弱點(diǎn)是太拘泥于預(yù)先定義的狀態(tài)遷移序列。這種模型運(yùn)行在原始審計(jì)數(shù)據(jù)的抽象層次上,它利用系統(tǒng)狀態(tài)的觀念和事件的轉(zhuǎn)變流;這就有可能提供了一種既能減少誤警率又能檢測到新的攻擊的途徑。另外,因?yàn)樯婕傲吮容^高層次的抽象,有希望把它的知識庫移植到不同的機(jī)器、網(wǎng)絡(luò)和應(yīng)用的入侵檢測上。2.4.2 異常入侵檢測技術(shù)
異常檢測是通過對系統(tǒng)異常行為的檢測來發(fā)現(xiàn)入侵。異常檢測的關(guān)鍵問題在于正常使用模式的建立,以及如何利用該模式對當(dāng)前系統(tǒng)或用戶行為進(jìn)行比較,從而判斷出與正常模式的偏離程度?!蹦J健保╬rofiles)通常使用一組系統(tǒng)的度量(metrics)來定義。度量,就是指系統(tǒng)或用戶行為在特定方面的衡量標(biāo)準(zhǔn)。每個(gè)度量都對應(yīng)于一個(gè)門限值。常用的異常檢測技術(shù)有: 1.統(tǒng)計(jì)分析
最早的異常檢測系統(tǒng)采用的是統(tǒng)計(jì)分析技術(shù)。首先,檢測器根據(jù)用戶對象的動(dòng)作為每個(gè)用戶建立一個(gè)用戶特征表,通過比較當(dāng)前特征與已存儲(chǔ)定型的以前特征,從而判斷是否異常行為。統(tǒng)計(jì)分析的優(yōu)點(diǎn):有成熟的概率統(tǒng)計(jì)理論支持、維護(hù)方便,不需要象誤用檢測系統(tǒng)那樣不斷地對規(guī)則庫進(jìn)行更新和維護(hù)等。統(tǒng)計(jì)分析的缺點(diǎn):大多數(shù)統(tǒng)計(jì)分析系統(tǒng)是以批處理的方式對審計(jì)記錄進(jìn)行分析的,不能提供對入侵行為的實(shí)時(shí)檢測、統(tǒng)計(jì)分析不能反映事件在時(shí)間順序上的前后相關(guān)性,而不少入侵行為都有明顯的前后相關(guān)性、門限值的確定非常棘手等。2.神經(jīng)網(wǎng)絡(luò)
這種方法對用戶行為具有學(xué)習(xí)和自適應(yīng)功能,能夠根據(jù)實(shí)際檢測到的信息有效地加以處理并做出入侵可能性的判斷。利用神經(jīng)網(wǎng)絡(luò)所具有的識別、分類和歸納能力,可以使入侵檢測系統(tǒng)適應(yīng)用戶行為特征的可變性。從模式識別的角度來看,入侵檢測系統(tǒng)可以使用神經(jīng)網(wǎng)絡(luò)來提取用戶行為的模式特征,并以此創(chuàng)建用戶的行為特征輪廓??傊?,把神經(jīng)網(wǎng)絡(luò)引入入侵檢測系統(tǒng),能很好地解決用戶行為的動(dòng)態(tài)特征以及搜索數(shù)據(jù)的不完整性、不確定性所造成的難以精確檢測的問題。利用神經(jīng)網(wǎng)絡(luò)檢測入侵的基本思想是用一系列信息單元(命令)訓(xùn)練神經(jīng)單元,這樣在給定一組輸入后,就可能預(yù)測輸出。將神經(jīng)網(wǎng)絡(luò)應(yīng)用于攻擊模式的學(xué)習(xí),理論上也是可行的。但目前主要應(yīng)用于系統(tǒng)行為的學(xué)習(xí),包括用戶以及系統(tǒng)守護(hù)程序的行為。與統(tǒng)計(jì)理論相比,神經(jīng)網(wǎng)絡(luò)更好地表達(dá)了變量間的非線性關(guān)系,并且能自動(dòng)學(xué)習(xí)并更新。
神經(jīng)網(wǎng)絡(luò)也存在一些問題:在不少情況下,系統(tǒng)趨向于形成某種不穩(wěn)定的網(wǎng)絡(luò)結(jié)構(gòu),不能從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)特定的知識,這種情況目前尚不能完全確定產(chǎn)生的原因;另外,神經(jīng)網(wǎng)絡(luò)對判斷為異常的事件不會(huì)提供任何解釋或說明信息,這導(dǎo)致了用戶無法確認(rèn)入侵的責(zé)任人,也無法判斷究竟是系統(tǒng)哪方面存在的問題導(dǎo)致了攻擊者得以成功入侵。
前面介紹了誤用檢測和異常檢測所使用的一些常用檢測手段,在近期入侵檢測系統(tǒng)的發(fā)展過程中,研究人員提出了一些新的入侵檢測技術(shù)。這些技術(shù)不能簡單地歸類為誤用檢測或異常檢測,它們提供了一種有別于傳統(tǒng)入侵檢測視角的技術(shù)層次。這些新技術(shù)有:免疫系統(tǒng)、基因算法、數(shù)據(jù)挖掘、基于代理的檢測等等,他們提供了更具有普遍意義的分析檢測技術(shù),或者提出了新的檢測系統(tǒng)構(gòu)架,因此無論是對誤用檢測還是對異常檢測來說都可以得到很好的應(yīng)用。
第三章 協(xié)議分析
3.1 協(xié)議分析簡介 1.以太幀協(xié)議分析
這是對以太網(wǎng)數(shù)據(jù)幀頭進(jìn)行協(xié)議分析,并把分析的結(jié)果記入Packet結(jié)構(gòu)中。分析完以太幀頭后把數(shù)據(jù)包傳送到下一級協(xié)議分析程序中。數(shù)據(jù)幀的第13和14兩個(gè)字節(jié)組成的字段是協(xié)議類型字段。如果用十六進(jìn)制表示,那么IP協(xié)議對應(yīng)0X0800、ARP對應(yīng)0X0806、RARP對應(yīng)0X0835。2.ARP和RARP數(shù)據(jù)包協(xié)議分析
這是對ARP或RARP數(shù)據(jù)進(jìn)行協(xié)議分析,并把協(xié)議分析后的數(shù)據(jù)送入基于ICMP協(xié)議規(guī)則集的匹配檢測模塊進(jìn)行檢測,查看是否存在ARP和RARP相關(guān)的攻擊。由于基于ARP/RARP協(xié)議的攻擊較少,所以把他們歸入ICMP協(xié)議規(guī)則集中。3.IP數(shù)據(jù)包協(xié)議分析
這是對IP 數(shù)據(jù)包進(jìn)行協(xié)議分析,并把協(xié)議分析后的數(shù)據(jù)送入基于IP協(xié)議規(guī)則集的匹配檢測程序中進(jìn)行檢測。IP數(shù)據(jù)包首部的第一個(gè)字節(jié)的后面4個(gè)比特組成的字段標(biāo)識了IP首部的長度。該字段的值乘以4就等于IP首部的長度。沒有包含IP選項(xiàng)的普通IP首部長度為20,如果大于20就說明此IP數(shù)據(jù)包包含IP首部。第5和第6個(gè)字節(jié)是IP數(shù)據(jù)包的16位標(biāo)識,每一IP數(shù)據(jù)包都有唯一的標(biāo)識。該標(biāo)識在IP數(shù)據(jù)包分片重組時(shí)中起到至關(guān)重要的作用,每個(gè)分片就是通過檢查此ID號來判別是否屬于同一個(gè)IP包。第7個(gè)字節(jié)開始的前3個(gè)比特是重要的標(biāo)志位:第一個(gè)標(biāo)志位(最高位)為保留位(該位必須為0,否則就是一個(gè)錯(cuò)誤的IP數(shù)據(jù)包),第二個(gè)標(biāo)志位DF指示該IP數(shù)據(jù)包能否分片(該位為0則表示該IP數(shù)據(jù)包可以分片,為1則不能分片),第三個(gè)標(biāo)志位MF指示該數(shù)據(jù)包是否為最后一個(gè)分片(該位為0表示此數(shù)據(jù)包是最后一個(gè)分片,為1表示不是最后一個(gè)分片)。從MF標(biāo)志位開始的后面13個(gè)比特位記錄了分片的偏移量。分片的IP數(shù)據(jù)包,各個(gè)分片到目的端才會(huì)重組;傳輸過程中每個(gè)分片可以獨(dú)立選路。如何才能重組一個(gè)分片了的IP數(shù)據(jù)包呢?首先,16位分片ID(Fragment ID)標(biāo)識了每個(gè)IP數(shù)據(jù)包的唯一性。數(shù)據(jù)包分片后,它的每個(gè)分片具有相同的標(biāo)識。其次,通過每個(gè)分片的片偏移量可以確定每個(gè)分片的位置,再結(jié)合MF可以判斷該分片是否為最后一個(gè)分片。綜合上述信息,就可以順利的重組一個(gè)數(shù)據(jù)包。分片重組對網(wǎng)絡(luò)入侵檢測系統(tǒng)具有重要意義。首先,有一些攻擊方法利用了操作系統(tǒng)協(xié)議棧中分片合并實(shí)現(xiàn)上的漏洞,例如著名的TearDrop攻擊就是在短時(shí)間內(nèi)發(fā)送若干偏移量有重疊的分片,目標(biāo)機(jī)接收到這樣的分片的時(shí)候就會(huì)合并分片,由于其偏移量的重疊而發(fā)生內(nèi)存錯(cuò)誤,甚至?xí)?dǎo)致協(xié)議棧的崩潰。這種攻擊手段單從一個(gè)數(shù)據(jù)包上是無法辨認(rèn)的,需要在協(xié)議分析中模擬操作系統(tǒng)的分片合并,以發(fā)現(xiàn)不合法的分片。另外,Tiny Fragment(極小分片)等攻擊方法,將攻擊信息隱藏在多個(gè)微小分片內(nèi)來繞過入侵檢測系統(tǒng)或防火墻的檢測從而達(dá)到攻擊的目的。對付這種攻擊也需要在檢測的過程中合并碎片,恢復(fù)數(shù)據(jù)包的真實(shí)面目。
IP包頭的第10個(gè)字節(jié)開始的后面八個(gè)比特位表示了協(xié)議的類型:其中1表示ICMP協(xié)議,2表示IGMP協(xié)議,6表示TCP協(xié)議,17表示UDP協(xié)議。(這些數(shù)字是十進(jìn)制的)。對IP數(shù)據(jù)包檢測完畢后,如果檢測到攻擊就記錄該數(shù)據(jù)包,然后重新開始檢測一個(gè)新的原始數(shù)據(jù)包。如果沒有檢測到攻擊,則在判斷上層協(xié)議類型之后就把數(shù)據(jù)包分流到TCP、UDP等協(xié)議分析程序中進(jìn)行進(jìn)一步協(xié)議分析。4.TCP數(shù)據(jù)包協(xié)議分析
這是對TCP數(shù)據(jù)包進(jìn)行協(xié)議分析,并把協(xié)議分析后的數(shù)據(jù)送入基于TCP協(xié)議規(guī)則集的匹配檢測程序中進(jìn)行檢測。首先讀入TCP數(shù)據(jù)包,對TCP包頭進(jìn)行協(xié)議分析;并檢查是否有TCP選項(xiàng),如果有的話就對TCP選項(xiàng)進(jìn)行協(xié)議分析。然后,判斷該TCP數(shù)據(jù)包是否發(fā)生分段,如果發(fā)生了分段就進(jìn)行TCP重組。再把重組后的數(shù)據(jù)包送入基于TCP協(xié)議規(guī)則集的匹配檢測程序進(jìn)行檢測。如果檢測到攻擊就記錄下該攻擊數(shù)據(jù)包,以備攻擊取證等使用。記錄數(shù)據(jù)包后又返回,重新讀取一個(gè)新的數(shù)據(jù)包。如果沒有檢測到攻擊,就把該數(shù)據(jù)包送入下一級協(xié)議分析模塊中,作進(jìn)一步的協(xié)議分析。
5.ICMP數(shù)據(jù)包協(xié)議分析
這是對ICMP數(shù)據(jù)包進(jìn)行協(xié)議分析,并把協(xié)議分析后的數(shù)據(jù)送入基于ICMP協(xié)議規(guī)則集的匹配檢測程序中進(jìn)行檢測。ICMP報(bào)文有很多類型,根據(jù)報(bào)文中的類型字段和代碼字段就可以區(qū)分每一種ICMP報(bào)文類型。6.UDP協(xié)議分析
這是對UDP數(shù)據(jù)包進(jìn)行協(xié)議分析,并把協(xié)議分析后的數(shù)據(jù)送入基于UDP協(xié)議規(guī)則集的匹配檢測程序中進(jìn)行檢測。如果檢測到攻擊就記錄該數(shù)據(jù)包,然后返回并讀取下一個(gè)數(shù)據(jù)包。如果沒有檢測到攻擊,那么就把數(shù)據(jù)包送入基于應(yīng)用層協(xié)議規(guī)則集的檢測模塊進(jìn)行進(jìn)一步的檢測分析。應(yīng)用層協(xié)議很復(fù)雜,這里不進(jìn)行詳細(xì)討論。
3.2 協(xié)議分析的優(yōu)勢(1)提高性能:當(dāng)系統(tǒng)提升協(xié)議棧來解析每一層時(shí),它用已獲得的知識來消除在數(shù)據(jù)包結(jié)構(gòu)中不可能出現(xiàn)的攻擊。比如4層協(xié)議是TCP,那就不用再搜索其他第四層協(xié)議如UDP上形成的攻擊。如果數(shù)據(jù)包最高層是簡單網(wǎng)絡(luò)管理協(xié)議SNMP(Simple Network Management Protocol),那就不用再尋找Telnet或HTTP攻擊。這樣檢測的范圍明顯縮小,而且更具有針對性;從而使得IDS系統(tǒng)性能得到明顯改善。
(2)能夠探測碎片攻擊等基于協(xié)議漏洞的攻擊:在基于協(xié)議分析的IDS中,各種協(xié)議都被解析。如果出現(xiàn)IP分片,數(shù)據(jù)包將首先被重裝;然后再對整個(gè)數(shù)據(jù)包進(jìn)行詳細(xì)分析來檢測隱藏在碎片中的潛在攻擊行為。這是采用傳統(tǒng)模式匹配技術(shù)的NIDS所無法做到的。(3)降低誤報(bào)和漏報(bào)率:協(xié)議分析能減少傳統(tǒng)模式匹配NIDS系統(tǒng)中常見的誤報(bào)和漏報(bào)現(xiàn)象。在基于協(xié)議分析的NIDS系統(tǒng)中誤報(bào)率會(huì)明顯減少,因?yàn)樗鼈冎篮兔總€(gè)協(xié)議有關(guān)的潛在攻擊的確切位置以及該位置每個(gè)字節(jié)的真正含義。例如,針對基于協(xié)議分析的IDS不但能識別簡單的路徑欺騙:例如把CGI攻擊”/cgi-bin/phf”變?yōu)椤?cgi-bin/./phf”或”/cgi-binphf”;而且也能識別復(fù)雜的HEX編碼欺騙:例如”/winnt/system32/cmd.exe”,編碼后變?yōu)椤?winnt/system32/%2563md.exe”,通過協(xié)議分析%25 解碼后為‘%’,%63解碼后為‘c’,這樣就解析出了攻擊串。又如針對Unicode(UTF-8)的編碼欺騙(與ASCII字符相關(guān)的HEX編碼一直到%7f,Unicode編碼值要高于它),攻擊串編碼后得到”/winnt/system32%c0%afcmd.exe”,通過解碼可知%c0%af在Unicode中對應(yīng)/,所以解碼后就能順利還原出攻擊串。第四章 PANIDS系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)
4.1 PANIDS系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)
PANIDS系統(tǒng) 主要由系統(tǒng)基本信息讀取模塊、網(wǎng)絡(luò)數(shù)據(jù)包捕獲模塊、基于協(xié)議分析的入侵檢測模塊、響應(yīng)模塊和控制管理中心等幾部分組成。4.2 系統(tǒng)基本信息讀取模塊的設(shè)計(jì)及實(shí)現(xiàn)
為了更好的顯示出本機(jī)的特性,在此PANIDS系統(tǒng)中特別增加系統(tǒng)基本信息讀取模塊。通過此模塊能顯示出主機(jī)名和本機(jī)的IP地址和所使用的Winsock的版本
在此模塊中主要用到函數(shù)gethostname()和gethostbyname()。gethostname()函數(shù)作用是獲取本地主機(jī)的主機(jī)名,其定義如下:
int PASCAL FAR gethostname(char FAR * name, int namelen);name:用于指向所獲取的主機(jī)名的緩沖區(qū)的指針。Namelen:緩沖區(qū)的大小,以字節(jié)為單位。
gethostbyname()在此模塊中是一個(gè)主要函數(shù),該函數(shù)可以從主機(jī)名數(shù)據(jù)庫中得到對應(yīng)的”主機(jī)”。其定義如下:
#include
gethostbyname()返回對應(yīng)于給定主機(jī)名的包含主機(jī)名字和地址信息的hostent結(jié)構(gòu)指針。結(jié)構(gòu)的聲明與gethostaddr()中一致。如果沒有錯(cuò)誤發(fā)生,gethostbyname()返回如上所述的一個(gè)指向hostent結(jié)構(gòu)的指針,否則,返回一個(gè)空指針。hostent結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu)如下: struct hostent { char *h_name;//地址的正式名稱
char **h_aliases;//空字節(jié)-地址的預(yù)備名稱的指針 int h_addrtype;//地址類型,通常是AF_INET int h_length;//地址的比特長度
char **h_addr_list;//零字節(jié)-主機(jī)網(wǎng)絡(luò)地址指針,網(wǎng)絡(luò)字節(jié)順序 };返回的指針指向一個(gè)由Windows Sockets實(shí)現(xiàn)分配的結(jié)構(gòu)。應(yīng)用程序不應(yīng)該試圖修改這個(gè)結(jié)構(gòu)或者釋放它的任何部分。此外,每一線程僅有一份這個(gè)結(jié)構(gòu)的拷貝,所以應(yīng)用程序應(yīng)該在發(fā)出其他Windows Scokets API調(diào)用前,把自己所需的信息拷貝下來。
gethostbyname()實(shí)現(xiàn)沒有必要識別傳送給它的IP地址串。對于這樣的請求,應(yīng)該把IP地址串當(dāng)作一個(gè)未知主機(jī)名同樣處理。如果應(yīng)用程序有IP地址串需要處理,它應(yīng)該使用inet_addr()函數(shù)把地址串轉(zhuǎn)換為IP地址,然后調(diào)用gethostbyaddr()來得到hostent結(jié)構(gòu)。4.3 網(wǎng)絡(luò)數(shù)據(jù)包捕獲模塊的設(shè)計(jì)及實(shí)現(xiàn) 網(wǎng)絡(luò)數(shù)據(jù)包捕獲的方法有很多,比如既可以利用原始套接字來實(shí)現(xiàn),也可以通過Libpcap、Jpcap和WinPcap 提供的接口函數(shù)來實(shí)現(xiàn)。Libpcap、Jpcap和WinPcap是世界各地的網(wǎng)絡(luò)專家共同努力的結(jié)果,為開發(fā)者提供了很多高效且與系統(tǒng)無關(guān)的網(wǎng)絡(luò)數(shù)據(jù)包截獲接口函數(shù);所以在性能上一般比采用普通的套接字方法要好。LibPcap是一個(gè)優(yōu)秀跨平臺的網(wǎng)絡(luò)抓包開發(fā)工具,JPcap是它的一個(gè)Java版本。WinPcap在某種程度上可以說它是LibPcap的一個(gè)Windows版本,因?yàn)樗鼈兊拇蟛糠纸涌诤瘮?shù)以及所采用的數(shù)據(jù)結(jié)構(gòu)都是一樣的。另外,WinPcap在某些方面進(jìn)行了優(yōu)化,還提供了發(fā)送原始數(shù)據(jù)包和統(tǒng)計(jì)網(wǎng)絡(luò)通信過程中各種信息的功能(LibPcap沒有統(tǒng)計(jì)功能),方便進(jìn)行測試;所以采用WinPcap所提供的庫函數(shù)來截獲網(wǎng)絡(luò)數(shù)據(jù)包。
Winpcap捕獲數(shù)據(jù)包的實(shí)現(xiàn)
1.網(wǎng)絡(luò)數(shù)據(jù)包捕獲的主要數(shù)據(jù)結(jié)構(gòu)(1)PACKET結(jié)構(gòu)
typedef struct _PACKET { HANDLE hEvent;OVERLAPPED OverLapped;PVOID Buffer;//這個(gè)buffer就是指向存放數(shù)據(jù)包的用戶緩沖區(qū) UINT Length;//buffer的長度
DWORD ulBytesReceived;//調(diào)用PacketReceivePacket()函數(shù)所讀 //取的字節(jié)數(shù),可能包含多個(gè)數(shù)據(jù)包 BOOLEAN bIoComplete;} PACKET, *LPPACKET;其他未注釋的幾個(gè)成員,都是過時(shí)的成員,他們的存在只是為了與原來的兼容。此結(jié)構(gòu)主要用來存放從內(nèi)核中讀取的數(shù)據(jù)包。(2)pcap_file_header 結(jié)構(gòu) struct pcap_file_header{ bpf_u_int32 magic;//一個(gè)標(biāo)識號,標(biāo)識特定驅(qū)動(dòng)器產(chǎn)生的dump文件 u_short version_major;//WinPcap的主版本號 u_short version_minor;//WinPcap的次版本號
bpf_int32 thiszone;//GMT時(shí)間與本地時(shí)間的校正值 bpf_u_int32 sigfigs;//精確的時(shí)間戳
bpf_u_int32 snaplen;//每個(gè)數(shù)據(jù)包需要存放到硬盤上的最大長度 bpf_u_int32 linktype;//鏈路層的數(shù)據(jù)類型 };//這個(gè)頭部共24個(gè)字節(jié)
把截獲的數(shù)據(jù)包以標(biāo)準(zhǔn)的Windump格式存放到硬盤上時(shí),就是以這個(gè)結(jié)構(gòu) 作為文件的開頭。(3)bpf_hdr結(jié)構(gòu) struct bpf_hdr { struct timeval bh_tstamp;//數(shù)據(jù)包捕獲的時(shí)間戳信息 UINT bh_caplen;//數(shù)據(jù)包被捕獲部分的長度 UINT bh_datalen;//數(shù)據(jù)的原始長度 USHORT bh_hdrlen;//此結(jié)構(gòu)的長度 };從內(nèi)核中讀取數(shù)據(jù)包并存放在用戶緩沖區(qū)中時(shí),采用此結(jié)構(gòu)來封裝所截獲的 數(shù)據(jù)包。其中timeval的結(jié)構(gòu)如下 struct timeval { long tv_sec;//以秒為單位的時(shí)間 long tv_usec;//以毫秒為單位的時(shí)間 };(4)dump_bpf_hdr結(jié)構(gòu) struct dump_bpf_hdr{ struct timeval ts;//數(shù)據(jù)包捕獲的時(shí)間戳 UINT caplen;//數(shù)據(jù)包被捕獲部分的長度 UINT len;//數(shù)據(jù)包的原始長度 };把數(shù)據(jù)包存放到硬盤上或者向網(wǎng)絡(luò)上發(fā)送數(shù)據(jù)包時(shí),都使用此結(jié)構(gòu)來封裝每一個(gè)數(shù)據(jù)包。
2.數(shù)據(jù)包捕獲的具體實(shí)現(xiàn)
在了解其數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)上,下面來分析其是如何具體實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)包捕獲的。其前期的主要過程應(yīng)為:首先應(yīng)找到設(shè)備列表,然后顯示適配器列表和選擇適配器,最后通過pcap_open_live()函數(shù)根據(jù)網(wǎng)卡名字將所選的網(wǎng)卡打開,并設(shè)置為混雜模式。
用Winpacp捕獲數(shù)據(jù)包時(shí),數(shù)據(jù)包捕獲的程序流程圖如圖4.3所示,其中pcap_loop()是截包的關(guān)鍵環(huán)節(jié),它是一個(gè)循環(huán)截包函數(shù),分析此函數(shù)的源碼可知,其內(nèi)部主要處理過程如圖4.4所示。在pcap_loop()的每次循環(huán)中,首先通過調(diào)用PacketReceivePacket()函數(shù),從內(nèi)核緩沖區(qū)中把一組數(shù)據(jù)包讀取到用戶緩沖區(qū)。然后,根據(jù)bpf_hdr結(jié)構(gòu)提供的該數(shù)據(jù)包的定位信息,把用戶緩沖區(qū)的多個(gè)數(shù)據(jù)包逐個(gè)的提取出來,并依次送入回調(diào)函數(shù)進(jìn)行進(jìn)一步處理。通過這個(gè)過程就實(shí)現(xiàn)了網(wǎng)絡(luò)數(shù)據(jù)包的捕獲。
4.4 基于協(xié)議分析的入侵檢測模塊的設(shè)計(jì)及實(shí)現(xiàn)
此模塊是基于協(xié)議分析入侵檢測系統(tǒng)PANIDS的核心部分,下面我們重點(diǎn)討論此模塊的設(shè)計(jì)及實(shí)現(xiàn)。4.4.1 數(shù)據(jù)包的分解 當(dāng)需要發(fā)送數(shù)據(jù)時(shí),就需要進(jìn)行封裝。封裝的過程就是把用戶數(shù)據(jù)用協(xié)議來進(jìn)行封裝,首先由應(yīng)用層協(xié)議進(jìn)行封裝,如HTTP協(xié)議。而HTTP協(xié)議是基于TCP協(xié)議的。它就被TCP協(xié)議進(jìn)行封裝,http包作為TCP數(shù)據(jù)段的數(shù)據(jù)部分。而TCP協(xié)議是基于IP協(xié)議的,所以TCP段就作為IP協(xié)議的數(shù)據(jù)部分,加上IP協(xié)議頭,就構(gòu)成了IP數(shù)據(jù)報(bào),而IP數(shù)據(jù)報(bào)是基于以太網(wǎng)的,所以這個(gè)時(shí)候就被封裝成了以太網(wǎng)幀,這個(gè)時(shí)候就可以發(fā)送數(shù)據(jù)了。通過物理介質(zhì)進(jìn)行傳送。在這里我們所用到的是數(shù)據(jù)包的分解。分解的過程與封裝的過程恰恰相反,這個(gè)時(shí)候就需要從一個(gè)以太網(wǎng)幀中讀出用戶數(shù)據(jù),就需要一層一層地進(jìn)行分解,首先是去掉以太網(wǎng)頭和以太網(wǎng)尾,在把剩下的部分傳遞給IP層軟件進(jìn)行分解,去掉IP頭,然后把剩下的傳遞給傳輸層,例如TCP協(xié)議,此時(shí)就去掉TCP頭,剩下應(yīng)用層協(xié)議部分?jǐn)?shù)據(jù)包了,例如HTTP協(xié)議,此時(shí)HTTP協(xié)議軟件模塊就會(huì)進(jìn)一步分解,把用戶數(shù)據(jù)給分解出來,例如是HTML代碼。這樣應(yīng)用軟件就可以操作用戶數(shù)據(jù)了,如用瀏覽器來瀏覽HTML頁面。其具體的數(shù)據(jù)包分解如下:
ethernet =(struct sniff_ethernet*)(pkt_data);ip =(struct sniff_ip*)(pkt_data + size_ethernet);tcp =(struct sniff_tcp*)(pkt_data + size_ethernet + size_ip);udp =(struct sniff_udp*)(pkt_data + size_ethernet + size_ip);icmp =(struct sniff_icmp*)(pkt_data + size_ethernet + size_ip);4.4.2 入侵檢測的實(shí)現(xiàn)
通過Winpcap捕獲數(shù)據(jù)包,數(shù)據(jù)包分解完以后就對其進(jìn)行協(xié)議分析,判斷分組是否符合某種入侵模式,如果符合,則進(jìn)行入侵告警。在本系統(tǒng)中實(shí)現(xiàn)了對多種常見入侵模式的檢測,采用的入侵模式包括ICMP分片、常用端口、IGMP分片、WinNuke攻擊、應(yīng)用層攻擊。1.ICMP分片
ICMP報(bào)文是TCP/IP協(xié)議中一種控制報(bào)文,它的長度一般都比較小,如果出現(xiàn)ICMP報(bào)文分片,那么說明一定出現(xiàn)了Ping of Death攻擊。
在本系統(tǒng)中ip->ip_p == 0×1,這是表示ip首部的協(xié)議類型字段,0×1代表ICMP。
string str1 = inet_ntoa(in_addrIP);string str2 = inet_ntoa(ip->ip_src);當(dāng)(ip->ip_off > 1)&& str1!= str2時(shí),就表認(rèn)為是Ping of Death攻擊。如果都符合,就報(bào)警(調(diào)用函數(shù)將受到攻擊的時(shí)間、攻擊名稱以及攻擊的IP地址顯示出來)。
2.常用端口
一些攻擊特洛伊木馬、蠕蟲病毒等都會(huì)采用一些固定端口進(jìn)行通信,那么如果在分組分析過程中發(fā)現(xiàn)出現(xiàn)了某個(gè)端口的出現(xiàn),則可以認(rèn)為可能出現(xiàn)了某種攻擊,這里為了減少誤判,應(yīng)當(dāng)設(shè)置一個(gè)閾值,僅當(dāng)某個(gè)端口的分組出現(xiàn)超過閾值后才進(jìn)行報(bào)警。這就意味著檢測到發(fā)往某個(gè)端口的的分組超過閾值后才認(rèn)為出現(xiàn)了某種攻擊,并進(jìn)行告警。本系統(tǒng)定義了兩種端口掃描,Trojan Horse端口掃描和代理服務(wù)器端口掃描。Trojan Horse端口掃描實(shí)現(xiàn)如下:首先根據(jù)if((tcp->th_flags & TH_SYN)==TH_SYN)判斷其是否為TCP SYN報(bào)文,若是,并且端口為Trojan Horse的常用掃描端口時(shí),最后判斷報(bào)文數(shù)是否超過閾值TrojanThreshold,如果超過的后,就被認(rèn)定為Trojan Horse端口掃描,然后報(bào)警。對代理服務(wù)器端口掃描檢測的實(shí)現(xiàn)方法和Trojan Horse端口掃描實(shí)現(xiàn)方法一樣,這里不再論述。
3.IGMP分片
IGMP(Internet Group Message Protocol)是Internet中多播組管理協(xié)議,其長度也一般較小。同上ip->ip_p==0×2也是表示首部的協(xié)議類型字段,0×2代表IGMP,本系統(tǒng)實(shí)現(xiàn)了對其兩種攻擊模式的檢測。
(1)通過if(ntohs(ip->ip_len)>1499)首先判斷其是否為分片的IGMP報(bào)文,若是,并且收到的報(bào)文數(shù)超過設(shè)定的閾值IGMPThreshold,則就最終判定其為IGMP DoS攻擊,然后報(bào)警。
(2)通過if(strcmp(mbf,mbuffer)==0||strcmp(mbf,”0.0.0.0″)==0)判斷其是否為某種特定的源地址等于目的地址或者目的地址等于0的報(bào)文,若是,并且收到的報(bào)文數(shù)超過設(shè)定的閾值LandThreshold則被判定為land DoS攻擊,然后報(bào)警。
4.WinNuke攻擊 通過if((tcp->th_flags & TH_URG)==TH_URG)判斷其是否為TCP URG報(bào)文,若是,則根據(jù)WinNuke的典型特征是使用TCP中的Ugrent指針,并使用135、137、138、139端口,因此可以利用這兩個(gè)特征加以判斷,同樣為了減少誤判,應(yīng)當(dāng)設(shè)置一個(gè)閾值。當(dāng)閾值超過設(shè)定的WinNukeThreshold時(shí),就被最終判定為WinNuke攻擊,然后報(bào)警。5.應(yīng)用層攻擊
其是分析應(yīng)用層的數(shù)據(jù)特征,判斷是否存在入侵。在本系統(tǒng)中實(shí)現(xiàn)了對一種較為簡單的應(yīng)用層攻擊的檢測。它也是屬于TCP SYN報(bào)文中的一種。主要思想是監(jiān)測報(bào)文中是否存在system32關(guān)鍵字,如果存在,則報(bào)警。
4.5 實(shí)驗(yàn)結(jié)果及結(jié)論
程序編譯成功后,執(zhí)行可執(zhí)行文件,此時(shí)系統(tǒng)已被啟動(dòng),然后在”設(shè)置”菜單中將網(wǎng)卡設(shè)為混雜模式,點(diǎn)擊”開始”按鈕,本系統(tǒng)開始檢測。由實(shí)驗(yàn)結(jié)果可知,本系統(tǒng)能較好的檢測出一些典型攻擊,并能在界面上顯示出攻擊日期/時(shí)間、攻擊的類型、攻擊源的IP地址,達(dá)到了預(yù)期的效果。
第五章 總結(jié)與參考文獻(xiàn)
入侵檢測是一種積極主動(dòng)的安全防護(hù)技術(shù);它既能檢測未經(jīng)授權(quán)的對象入侵系統(tǒng),又能監(jiān)視授權(quán)對象對系統(tǒng)資源的非法操作。入侵檢測與防火墻、身份認(rèn)證、數(shù)據(jù)加密、數(shù)字簽名等安全技術(shù)共同構(gòu)筑了一個(gè)多層次的動(dòng)態(tài)安全體系。本文主要對基于網(wǎng)絡(luò)的入侵檢測系統(tǒng)的關(guān)鍵技術(shù)進(jìn)行了研究和探討。首先較全面、系統(tǒng)地分析了入侵檢測技術(shù)的歷史、現(xiàn)狀和發(fā)展趨勢、了解了黑客常用的攻擊手段及其原理。然后,系統(tǒng)地闡述了入侵檢測的原理。接著講述了協(xié)議分析和模式匹配技術(shù),最后,針對當(dāng)前典型的網(wǎng)絡(luò)入侵,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于協(xié)議分析的網(wǎng)絡(luò)入侵檢測系統(tǒng)PANIDS,實(shí)現(xiàn)了多層次的協(xié)議分析,包括基本協(xié)議的解析、協(xié)議上下文的關(guān)聯(lián)分析以及應(yīng)用層協(xié)議的分析,并取得了較為滿意的檢測效果。
[1] 戴英俠,連一峰,王航.系統(tǒng)安全與入侵檢測[M].北京:清華大學(xué)出版社 [2] 聶元銘,丘平.網(wǎng)絡(luò)信息安全技術(shù)[M].北京:科學(xué)出版社
[3] 董玉格,金海,趙振.攻擊與防護(hù)-網(wǎng)絡(luò)安全與實(shí)用防護(hù)技術(shù)[M].北京:人民 郵電出版社 [4] 戴云,范平志.入侵檢測系統(tǒng)研究綜述[J].計(jì)算機(jī)工程與應(yīng)用 [5] 劉文淘.網(wǎng)絡(luò)入侵檢測系統(tǒng)[M].北京:電子工業(yè)出版社,
第三篇:無線局域網(wǎng)入侵檢測協(xié)議分析論文
無線局域網(wǎng)入侵檢測系統(tǒng)的研究
【摘要】 自從20世紀(jì)90年代出現(xiàn)無線局域網(wǎng)以來,由于WLAN具有多方面的優(yōu)點(diǎn),令其發(fā)展十分迅速,但在無線局域網(wǎng)蓬勃發(fā)展的同時(shí),安全問題也越來越突出。本文先介紹了無線局域網(wǎng)的特點(diǎn)、IEEE802.11系列協(xié)議標(biāo)準(zhǔn)以及無線局域網(wǎng)中的固有漏洞,然后又介紹了常見的入侵方式,其次系統(tǒng)的介紹了入侵檢測的概念、基本原理、工作模式、分類及發(fā)展趨勢,并闡述了各種局域網(wǎng)入侵檢測系統(tǒng)的關(guān)鍵技術(shù),并通過分析比較得出:無線局域網(wǎng)入侵檢測系統(tǒng)在設(shè)計(jì)上有別于有線入侵檢測系統(tǒng)。本文在深入分析了無線局域網(wǎng)技術(shù)以及常見入侵檢測技術(shù)的基礎(chǔ)上,針對無線局域網(wǎng)絡(luò)的特點(diǎn),提出了一個(gè)將協(xié)議分析和模式匹配相結(jié)合的無線入侵檢測系統(tǒng)模型。模式匹配算法具有快速簡單的優(yōu)點(diǎn),在實(shí)際應(yīng)用中最為廣泛,但計(jì)算量大,檢測準(zhǔn)確性低,通過改進(jìn)模式匹配算法,取得了較好的結(jié)果。協(xié)議分析技術(shù)可以利用網(wǎng)絡(luò)協(xié)議的高度規(guī)則性快速探測攻擊的存在,通過層次化、格式化的無線網(wǎng)絡(luò)報(bào)文逐層分析,可提高檢測效率,并有效控制漏報(bào)率和誤報(bào)率。最后提出了該系統(tǒng)的框架和主要的流程步驟,對其中的關(guān)鍵模塊進(jìn)行了詳細(xì)設(shè)計(jì)。該系統(tǒng)利用Winpcap函數(shù)庫對無線傳輸數(shù)據(jù)進(jìn)行捕獲,然后利用解碼模塊對捕獲到...更多還原
【Abstract】 Wireless local area network has developed very rapidly since the 1990s for it’s many advantages, and at the same time, the security problem has become more and more remarkable.This paper firstly describes the characteristics of WLAN, protocol standards of IEEE802.11 series and the inherent vulnerability in the WLAN, then presents the common intrusion method, and at last, introduces the concept of intrusion detection, basic principles, work patterns, classification and trends, systematically.At...更多還原
【關(guān)鍵詞】 無線局域網(wǎng); 入侵檢測; 協(xié)議分析;
【Key words】 wireless LAN; intrusion detection; protocol analysis;
【索購全文】Q聯(lián)系Q:138113721 Q聯(lián)系Q: 139938848付費(fèi)即發(fā)
目錄 摘要 3-4 ABSTRACT 4-5 第一章 緒論 8-11
1.1 研究背景 8
1.2 無線入侵檢測技術(shù)研究現(xiàn)狀 8-10
1.3 本文主要研究內(nèi)容和結(jié)構(gòu) 10-11 第二章 WLAN概述 11-18
2.1 WLAN標(biāo)準(zhǔn) 11-13
2.1.1 IEEE 802.11 11
2.1.2 IEEE 802.11b 11-12
2.1.3 IEEE 802.11a 12
2.1.4 IEEE 802.11g 12
2.1.5 IEEE 802.11i 12
2.1.6 IEEE 802.11n 12-13
2.2 WLAN的組成 13-14
2.3 WLAN組網(wǎng)方式 14-15
2.4 IEEE802.11協(xié)議分析 15-17
2.5 本章小結(jié) 17-18
第三章 無線局域網(wǎng)入侵檢測系統(tǒng) 18-28
3.1 無線局域網(wǎng)安全技術(shù) 18-19
3.1.1 MAC地址過濾和服務(wù)區(qū)標(biāo)識符(SSID)匹配 18
3.1.2 WEP協(xié)議 18
3.1.3 WPA技術(shù) 18-19
3.1.4 802.11i協(xié)議 19
3.2 WLAN常見的入侵方式 19-21
3.2.1 網(wǎng)絡(luò)竊聽 19
3.2.2 假冒身份 19-20
3.2.3 拒絕服務(wù)攻擊 20
3.2.4 SSID猜解與誘騙 20
3.2.5 中間人攻擊 20-21
3.2.6 異常報(bào)文攻擊 21
3.2.7 重放攻擊 21
3.3 入侵檢測的概念 21-22
3.4 入侵檢測技術(shù) 22-27
3.4.1 入侵檢測的發(fā)展 22
3.4.2 入侵檢測的分類 22-27
3.5 本章小結(jié) 27-28
第四章 基于協(xié)議分析的入侵檢測系統(tǒng)設(shè)計(jì) 28-52
4.1 模式匹配與協(xié)議分析結(jié)合的入侵檢測方法 28-29
4.2 基于協(xié)議分析技術(shù)的檢測過程 29-31
4.2.1 協(xié)議分析樹的構(gòu)建 30-31
4.3 基于協(xié)議分析技術(shù)的入侵檢測體系結(jié)構(gòu) 31-32
4.4 檢測代理關(guān)鍵模塊設(shè)計(jì) 32-49
4.4.1 數(shù)據(jù)捕獲模塊 33-37
4.4.2 預(yù)檢測模塊 37-38
4.4.3 解碼模塊 38-42
4.4.4 規(guī)則解析模塊 42-43
4.4.5 協(xié)議分析模塊 43-44
4.4.6 模式匹配算法 44-47
4.4.7 改進(jìn)的BM算法 47-49
4.5 對常見攻擊的檢測效果分析 49-51
4.5.1 IP 攻擊 49-50
4.5.2 ICMP 攻擊 50
4.5.3 其他攻擊 50-51
4.6 本章小結(jié) 51-52 結(jié)論 52-53 參考文獻(xiàn)
第四篇:論文檢測系統(tǒng)比較
論文檢測系統(tǒng)比較
更多信息請見 論文檢測聯(lián)盟
目前主要流行的論文檢測系統(tǒng)有如下幾種:中國知網(wǎng)論文檢測系統(tǒng)(中國知網(wǎng)CNKI學(xué)術(shù)不端檢測系統(tǒng))、paperpass論文檢測、維普通達(dá)論文檢測、萬方論文檢測、paperrater論文檢測、寫邦論文檢測。相信,還會(huì)出現(xiàn)越來越多的檢測系統(tǒng)的,說實(shí)話,這些對學(xué)生來說是個(gè)負(fù)累。
學(xué)校用的是知網(wǎng)論文檢測系統(tǒng)喲,中國知網(wǎng)出的,熟悉圖書館的同學(xué)應(yīng)該知道知網(wǎng)數(shù)據(jù)庫,中文文獻(xiàn)非常全,所以他們的檢測系統(tǒng)非常權(quán)威,基本上所有高校都是用這個(gè)。知網(wǎng)論文檢測又分為:學(xué)術(shù)不斷文獻(xiàn)檢測系統(tǒng)4.0(大家熟悉的VIP系統(tǒng))、學(xué)位論文學(xué)術(shù)不端行為檢測系統(tǒng)(TMLC2)、科技期刊論文檢測、社科期刊論文檢測、大學(xué)生論文抄襲檢測系統(tǒng)等。說實(shí)話,知網(wǎng)的銷售人員可能都不太說得清楚集中的區(qū)別。
大概來說,中國知網(wǎng)是按照篇數(shù)收費(fèi)的,每種檢測系統(tǒng)都有字?jǐn)?shù)限制的。常見的知網(wǎng)VIP論文檢測系統(tǒng)字?jǐn)?shù)無限制,價(jià)格最高,淘寶價(jià)格大約200左右,時(shí)常波動(dòng);大學(xué)生論文檢測系統(tǒng)就是小論文檢測系統(tǒng),字?jǐn)?shù)限制是1萬字符,期刊檢測系統(tǒng)字?jǐn)?shù)限制是6000字符左右,因?yàn)槠诳?,最多不?huì)超過9000、10000字吧,檢測人員都是有把關(guān)的。
中國知網(wǎng)論文檢測抄襲修改是最難的,知網(wǎng)的算法應(yīng)該是不光考慮關(guān)鍵詞、還要考慮句子、段落的相似度,所以修改起來很難,除非換個(gè)個(gè)。不過目前市面上是有專門的團(tuán)隊(duì)來處理抄襲率的。能夠做到不變意思,改變句式,從而達(dá)到降低抄襲率的目的。一般按照知網(wǎng)檢測報(bào)告上面的重復(fù)字符數(shù)計(jì)費(fèi),千字200元以下,根據(jù)專業(yè)、時(shí)間要求不同價(jià)格有區(qū)別。論文檢測系統(tǒng)評測(續(xù))請見論文檢測聯(lián)盟
第五篇:gocheck論文檢測系統(tǒng)
gocheck.cn論文檢測系統(tǒng)
gocheck論文檢測系統(tǒng)網(wǎng)址 http://gocheck.cn/agent/159699
畢業(yè)生畢業(yè)論文通過的必備網(wǎng)站,看看自己的論文是否抄襲或者“借鑒”太多
權(quán)威的網(wǎng)站
Gocheck.cn網(wǎng)站誕生于2009年,是全球首個(gè)面對論文寫作者開發(fā)的文本相似度對比檢測系統(tǒng),系統(tǒng)自推出以來已經(jīng)獲得超過1000萬次用戶使用的信賴。憑借業(yè)界最先進(jìn)的語義比對算法,Gocheck.cn論文檢測專家已快速發(fā)展成為全球領(lǐng)先的提供論文原創(chuàng)性評價(jià)及寫作輔導(dǎo)服務(wù)的權(quán)威在線平臺。
優(yōu)秀的算法
網(wǎng)站自主研發(fā)的業(yè)界領(lǐng)先的“指紋比對加VSM+”算法,能夠快速精準(zhǔn)的命中并識別出檢測文件與比對源中的相似內(nèi)容,自查系統(tǒng)的檢測速度和檢測精準(zhǔn)度已經(jīng)達(dá)到國內(nèi)領(lǐng)先水平。海量比對庫
Gocheck.cn論文檢測專家依托維普資源庫和Tonda論文庫收錄了海量對比資源,其包括超過9000萬篇的中外學(xué)術(shù)期刊、超過1000萬篇的學(xué)位論文以及數(shù)十億中英文互聯(lián)網(wǎng)網(wǎng)頁,同時(shí)資源庫以每月100萬篇的速度增加,所以它是目前文獻(xiàn)資源涵蓋最全面的論文抄襲自查系統(tǒng),可檢測中文、英文兩種語言的論文文本。