大型論壇檢測(cè)系統(tǒng)的開(kāi)發(fā)與應(yīng)用2_第1頁(yè)
大型論壇檢測(cè)系統(tǒng)的開(kāi)發(fā)與應(yīng)用2_第2頁(yè)
大型論壇檢測(cè)系統(tǒng)的開(kāi)發(fā)與應(yīng)用2_第3頁(yè)
大型論壇檢測(cè)系統(tǒng)的開(kāi)發(fā)與應(yīng)用2_第4頁(yè)
大型論壇檢測(cè)系統(tǒng)的開(kāi)發(fā)與應(yīng)用2_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

591論文網(wǎng)www.591LW.com大型論壇檢測(cè)系統(tǒng)的開(kāi)發(fā)與應(yīng)用摘要互聯(lián)網(wǎng)發(fā)展迅速,網(wǎng)絡(luò)論壇也隨之發(fā)展起來(lái)。它在給人們帶來(lái)了諸多方便的同時(shí)也產(chǎn)生了諸如傳播色情暴力、發(fā)表反動(dòng)言論和泄漏技術(shù)機(jī)密等一系列嚴(yán)重的問(wèn)題。因此人們對(duì)網(wǎng)絡(luò)論壇內(nèi)容監(jiān)測(cè)的需求已經(jīng)迫在眉睫,而對(duì)它的深入分析和研究就更具有極為重要的意義。本文介紹了網(wǎng)絡(luò)基礎(chǔ)知識(shí)、網(wǎng)絡(luò)監(jiān)測(cè)和過(guò)濾的原理以及數(shù)據(jù)從客戶端傳到服務(wù)器端的方式。分析了互聯(lián)網(wǎng)論壇監(jiān)測(cè)系統(tǒng)的目的、系統(tǒng)的組成原理和系統(tǒng)的功能模塊。其主要模塊包括包捕獲模塊、解碼模塊、模式匹配模塊。它還提出了利用以太網(wǎng)的廣播特性,在共享式網(wǎng)絡(luò)環(huán)境下使用BPF技術(shù)來(lái)獲取傳輸中的信息。系統(tǒng)在Linux操作系統(tǒng)下,調(diào)用Libpcap庫(kù)函數(shù)來(lái)實(shí)現(xiàn)抓包,對(duì)包中的內(nèi)容進(jìn)行分析,找出有害的信息,從而實(shí)現(xiàn)過(guò)濾功能。利用文中介紹的方法來(lái)構(gòu)建監(jiān)測(cè)系統(tǒng),能起到一定的監(jiān)測(cè)作用。關(guān)鍵詞:論壇監(jiān)測(cè);抓包;過(guò)濾;伯克利數(shù)據(jù)包過(guò)濾器

DesignandImplementationoftheInternetForumDetectiveSystemAbstractAstheinternethasbeendevelopingrapidly,theinternetforumhasbroughtmanyconvenienttothepeople.Butatthesametime,italsohasbeenhavingaseriesofquestions,suchasspreadsthepornography,declaresthereactionaryopinion,divulgesthesecretoftechnology,etc.ThereforetherequirementoftheInternetforumdetectivesystemhasbeenstaredintheface,andthoroughanalysisforthesystemhastheextremelyvitalsignificance.Thethesisintroducesthebaseknowledgeofnetwork,theprincipleofthenetworkdetectingandfilter.Pointedoutamethodofhowthedatatransportfromthecustomertotheserver.Thethesishasanalyzedthegoalofinternetforumdetectivesystem,theprincipleofsystemcompositionandthefunctionmodule.Theimportantmoduleincludesthemoduleofcapturepackage,moduleofdecode,moduleofmatching.ThesystemproposesthebroadcastcharacteristicofEthernet,usingtheBPFtechnologytogainthenetworkinformationinthecommonnetworkenvironment.ThesystemhasbaseonLinuxoperationsystem,transferringalibpcapstoreroomfunctiontograspthepackage,analyzingthecontentofthepackageandfindingthebadmessageinordertorealizethefunctionoffilter.Thethesisusesthemethodwhichwasreferredjustnowtoconstructthesystemdetective,anditrealizessomeofitsfunctions.Keywords:Theforumdetecting;Libpcap;filter;BPF

目錄論文總頁(yè)數(shù):25頁(yè)1引言 11.1課題背景 11.2本課題研究的意義 11.3本課題的研究方向 12網(wǎng)絡(luò)監(jiān)測(cè)和過(guò)濾技術(shù) 12.1網(wǎng)絡(luò)監(jiān)測(cè)技術(shù)簡(jiǎn)介 22.2包捕獲 32.2.1利用以太網(wǎng)的廣播特性進(jìn)行包捕獲 32.3包過(guò)濾 33系統(tǒng)需求分析 43.1互聯(lián)網(wǎng)論壇監(jiān)測(cè)的產(chǎn)生 43.2論壇內(nèi)容監(jiān)測(cè)系統(tǒng)的總體目標(biāo) 43.2.1系統(tǒng)所需的環(huán)境配置 53.2.2系統(tǒng)的流程圖 63.3系統(tǒng)功能分析 64論壇監(jiān)測(cè)軟件設(shè)計(jì)的總體方案 94.1論壇監(jiān)測(cè)軟件主要功能 94.2論壇監(jiān)測(cè)系統(tǒng)功能模塊的描述 105論壇監(jiān)測(cè)軟件的實(shí)現(xiàn) 125.1運(yùn)行環(huán)境和操作系統(tǒng)選擇 125.2系統(tǒng)對(duì)軟硬件配置的要求 125.3預(yù)期成果 125.4軟件模塊的實(shí)現(xiàn) 125.5論壇監(jiān)測(cè)軟件的對(duì)象關(guān)系圖 165.6論壇監(jiān)測(cè)的關(guān)鍵代碼 166結(jié)果測(cè)試,性能分析 206.1測(cè)試指標(biāo): 206.2測(cè)試環(huán)境 206.3監(jiān)測(cè)計(jì)算機(jī)處于局域網(wǎng)內(nèi)部 206.3.1用戶機(jī)和目標(biāo)論壇配置 216.3.2網(wǎng)關(guān)的配置 216.3.3測(cè)試方法與結(jié)果 216.4監(jiān)測(cè)計(jì)算機(jī)處于外部網(wǎng)絡(luò) 216.4.1用戶機(jī)和目標(biāo)論壇配置 226.4.2網(wǎng)關(guān)的配置 226.4.3測(cè)試方法與結(jié)果 22結(jié)論 23參考文獻(xiàn) 23第20頁(yè)共25頁(yè)1引言1.1課題背景互聯(lián)網(wǎng)發(fā)展迅速,網(wǎng)絡(luò)論壇不僅逐漸成為企業(yè)內(nèi)部的溝通橋梁,也是企業(yè)和外部進(jìn)行各類業(yè)務(wù)往來(lái)的重要管道。同時(shí)企業(yè)如何能夠從海量的數(shù)據(jù)信息中獲取民眾焦點(diǎn)和社會(huì)輿論動(dòng)向已經(jīng)成為管理部門(mén)日常工作的重中之重。1.2本課題研究的意義通過(guò)設(shè)計(jì)流量控制,身份驗(yàn)證,屏蔽各種端口等方法對(duì)用戶上網(wǎng)發(fā)信息到目標(biāo)論壇進(jìn)行嚴(yán)格管理與控制,有效預(yù)防木馬、病毒和用戶進(jìn)行反動(dòng),色情的信息傳遞。1.3本課題的研究方向綜合運(yùn)用以前所學(xué)的專業(yè)知識(shí),設(shè)計(jì)開(kāi)發(fā)一個(gè)互聯(lián)網(wǎng)監(jiān)測(cè)軟件,本設(shè)計(jì)要求實(shí)現(xiàn)能夠自動(dòng)獲取目標(biāo)論壇的發(fā)布內(nèi)容,系統(tǒng)針對(duì)發(fā)帖作者、發(fā)帖時(shí)間、帖子URL、帖子標(biāo)題和帖子正文等關(guān)鍵字段開(kāi)放基于單個(gè)字段或是組合選項(xiàng)的熱點(diǎn)查詢等這些功能,具體包括以下內(nèi)容:在設(shè)計(jì)與開(kāi)發(fā)中,重點(diǎn)如何解決客戶發(fā)的信息能夠捕獲到的問(wèn)題;在設(shè)計(jì)與開(kāi)發(fā)中,難點(diǎn)是對(duì)捕獲的信息過(guò)濾的問(wèn)題。本系統(tǒng)的開(kāi)發(fā)首先分析互聯(lián)網(wǎng)論壇監(jiān)測(cè)系統(tǒng)軟件的相關(guān)功能,結(jié)合本次畢業(yè)設(shè)計(jì)的相關(guān)要求寫(xiě)出需求分析;其次,綜合運(yùn)用以前所學(xué)的相關(guān)知識(shí)(包括計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、相關(guān)協(xié)議、信息安全相關(guān)知識(shí)等),選擇所熟悉的開(kāi)發(fā)工具進(jìn)行本畢業(yè)設(shè)計(jì)的開(kāi)發(fā);在設(shè)計(jì)中以需求分析為基礎(chǔ),寫(xiě)出系統(tǒng)開(kāi)發(fā)計(jì)劃、實(shí)現(xiàn)流程及相關(guān)問(wèn)題的實(shí)現(xiàn)方法;同時(shí),在開(kāi)發(fā)設(shè)計(jì)與實(shí)現(xiàn)中,要保存好相關(guān)的設(shè)計(jì)文擋,為后面的畢業(yè)論文的寫(xiě)作準(zhǔn)備材料;最后,系統(tǒng)開(kāi)發(fā)完畢后,進(jìn)行調(diào)試和試運(yùn)行,做好調(diào)試和試運(yùn)行的相關(guān)記錄,也為后面的畢業(yè)論文的寫(xiě)作準(zhǔn)備材料。2網(wǎng)絡(luò)監(jiān)測(cè)和過(guò)濾技術(shù)伴隨著互聯(lián)網(wǎng)的迅速普及,良莠不齊的網(wǎng)絡(luò)發(fā)布內(nèi)容日漸泛濫。而隨之帶來(lái)的安全和管理問(wèn)題不得不受到用戶的重視。從小型公司員工上網(wǎng)浪費(fèi)工作時(shí)間和公司資源,到商業(yè)間諜通過(guò)一封郵件將公司機(jī)密泄露,無(wú)不體現(xiàn)著網(wǎng)絡(luò)監(jiān)測(cè)的必要性。而監(jiān)測(cè)也僅僅是一種手段,必須和企業(yè)的管理機(jī)制掛鉤,有了比較好的銜接才能真正的實(shí)現(xiàn)事半功倍。在眾多的網(wǎng)絡(luò)安全技術(shù)中,監(jiān)測(cè)過(guò)濾技術(shù)是一個(gè)廣泛使用的技術(shù)。監(jiān)視實(shí)時(shí)通訊的信息并提取有害內(nèi)容,而且在不影響網(wǎng)絡(luò)性能的基礎(chǔ)上提取信息體,并進(jìn)行高效的匹配從而建立有害信息庫(kù),為進(jìn)一步攔截和做出統(tǒng)計(jì)分析做準(zhǔn)備。2.1網(wǎng)絡(luò)監(jiān)測(cè)技術(shù)簡(jiǎn)介絕大多數(shù)的現(xiàn)代操作系統(tǒng)都提供了對(duì)底層網(wǎng)絡(luò)數(shù)據(jù)包捕獲的機(jī)制,其最初的目的在于對(duì)網(wǎng)絡(luò)通信情況進(jìn)行監(jiān)測(cè),以對(duì)網(wǎng)絡(luò)的一些異常情況進(jìn)行調(diào)試處理。但隨著互連網(wǎng)的快速普及和網(wǎng)絡(luò)攻擊行為的頻繁出現(xiàn),保護(hù)網(wǎng)絡(luò)的運(yùn)行安全也成為監(jiān)測(cè)軟件的另一個(gè)重要目的。目前的監(jiān)測(cè)軟件主要有兩種類型。一種是通過(guò)偵測(cè)記錄信息進(jìn)行監(jiān)測(cè),類似于木馬程序,這種監(jiān)測(cè)軟件通過(guò)抓屏、記錄鍵盤(pán)擊鍵信息或竊取IM記錄文件等方式能夠獲取用戶信息。另外一種通過(guò)捕獲網(wǎng)絡(luò)中的廣播數(shù)據(jù)從而進(jìn)行監(jiān)測(cè)。監(jiān)測(cè)特指“sniffer”(通常直譯為嗅探或窺探),即利用計(jì)算機(jī)網(wǎng)絡(luò)接口截獲目的地為其他計(jì)算機(jī)的數(shù)據(jù)報(bào)文。大體上來(lái)說(shuō),可以將監(jiān)測(cè)程序分為兩個(gè)組成部分:·內(nèi)核空間部分:負(fù)責(zé)從網(wǎng)絡(luò)中捕獲以及過(guò)濾數(shù)據(jù)包?!び脩艨臻g部分:負(fù)責(zé)處理用戶界面、格式化、協(xié)議分析,此外如果核心層沒(méi)有進(jìn)行過(guò)濾的話,還必須負(fù)責(zé)過(guò)濾部分工作。監(jiān)測(cè)程序大體結(jié)構(gòu)如下圖1:網(wǎng)絡(luò)網(wǎng)絡(luò)緩沖區(qū)過(guò)濾區(qū)過(guò)濾區(qū)緩沖區(qū)傳輸層網(wǎng)絡(luò)層DLPI接口協(xié)議分析模塊系統(tǒng)無(wú)關(guān)捕獲模塊用戶交互模塊其它監(jiān)測(cè)程序用戶程序包捕獲用戶層核心層圖1監(jiān)測(cè)程序結(jié)構(gòu)2.2包捕獲不同的操作系統(tǒng)實(shí)現(xiàn)的底層包捕獲機(jī)制可能是不一樣的,但從形式上看大同小異。數(shù)據(jù)包常規(guī)的傳輸路徑依次為網(wǎng)卡、設(shè)備驅(qū)動(dòng)層、數(shù)據(jù)鏈路層、IP層、傳輸層、最后到達(dá)應(yīng)用程序。而包捕獲機(jī)制是在數(shù)據(jù)鏈路層增加一個(gè)旁路處理,對(duì)發(fā)送和接收到的數(shù)據(jù)包做過(guò)濾/緩沖等相關(guān)處理,最后直接傳遞到應(yīng)用程序。值得注意的是,包捕獲機(jī)制并不影響操作系統(tǒng)對(duì)數(shù)據(jù)包的網(wǎng)絡(luò)棧處理。2.2.1利用以太網(wǎng)的廣播特性進(jìn)行包捕獲以太網(wǎng)數(shù)據(jù)傳輸通過(guò)廣播實(shí)現(xiàn),通常在同一個(gè)共享局域網(wǎng)的所有網(wǎng)絡(luò)接口都有訪問(wèn)在物理媒體上傳輸?shù)乃袛?shù)據(jù)的能力,但是在系統(tǒng)正常工作時(shí),應(yīng)用程序只能接收到本主機(jī)為目標(biāo)主機(jī)的數(shù)據(jù)包,其他數(shù)據(jù)包過(guò)濾后將被丟棄不作處理。該過(guò)濾機(jī)制可以作用在鏈路層、網(wǎng)絡(luò)層和傳輸層這幾個(gè)層次。鏈路層主要指網(wǎng)卡驅(qū)動(dòng)程序判斷所收到包的目標(biāo)以太網(wǎng)地址,在系統(tǒng)正常工作時(shí),一個(gè)合法的網(wǎng)絡(luò)接口應(yīng)該只響應(yīng)這樣的兩種數(shù)據(jù)幀:·幀的目標(biāo)區(qū)域具有和本地網(wǎng)絡(luò)接口相匹配的硬件地址。·幀的目標(biāo)區(qū)域具有廣播地址。在接收到上面兩種情況的數(shù)據(jù)包時(shí),網(wǎng)絡(luò)接口通過(guò)CPU產(chǎn)生硬件中斷,操作系統(tǒng)進(jìn)行中斷處理后將幀中所包含的數(shù)據(jù)傳送給網(wǎng)絡(luò)層進(jìn)一步處理。而其他情況下數(shù)據(jù)幀將被丟棄不作處理。網(wǎng)絡(luò)層判斷目標(biāo)IP地址是否為本機(jī)所綁定的IP地址,如果不是本機(jī)所綁定IP地址,將丟棄這些IP數(shù)據(jù)報(bào);如果符合本機(jī)1P地址則交給傳輸層處理。傳輸層中的TCP或者UDP判斷目標(biāo)端口是否在本機(jī)已經(jīng)打開(kāi),如果沒(méi)有打開(kāi),則拋棄這些包,否則將向應(yīng)用層提交內(nèi)容。要監(jiān)測(cè)到流經(jīng)網(wǎng)卡的不屬于自己主機(jī)的數(shù)據(jù),必須繞過(guò)系統(tǒng)正常工作的處理機(jī)制,直接訪問(wèn)網(wǎng)絡(luò)底層。首先將網(wǎng)卡工作模式置于混雜(promiscuous)模式。當(dāng)網(wǎng)絡(luò)接口處于這種混雜模式時(shí),該網(wǎng)絡(luò)接口具備“廣播地址”,它對(duì)所有接收到的幀都產(chǎn)生硬件中斷以提醒操作系統(tǒng)處理流經(jīng)該物理媒體上的每一個(gè)報(bào)文(絕大多數(shù)的網(wǎng)絡(luò)接口具備置成promiscuous方式的能力)。操作系統(tǒng)直接訪問(wèn)數(shù)據(jù)鏈路層,截獲相關(guān)數(shù)據(jù),由應(yīng)用程序如IP層,TCP層的協(xié)議對(duì)數(shù)據(jù)過(guò)濾處理,這樣就可以監(jiān)測(cè)到流經(jīng)網(wǎng)卡的所有數(shù)據(jù)。監(jiān)測(cè)程序工作在網(wǎng)絡(luò)環(huán)境中的底層,它會(huì)攔截所有的正在網(wǎng)絡(luò)上傳送的數(shù)據(jù),并且通過(guò)相應(yīng)的軟件處理,可以實(shí)時(shí)分析這些數(shù)據(jù)的內(nèi)容,進(jìn)而分析所處的網(wǎng)絡(luò)狀態(tài)和整體布局。2.3包過(guò)濾網(wǎng)絡(luò)信息監(jiān)測(cè)將獲取所有的網(wǎng)絡(luò)信息,但在實(shí)際應(yīng)用中,其中存在若干用戶不關(guān)心的數(shù)據(jù),或者稱為垃圾數(shù)據(jù)。如果垃圾數(shù)據(jù)比重極大,將嚴(yán)重影響系統(tǒng)工作效率。事實(shí)上,網(wǎng)絡(luò)監(jiān)測(cè)模塊過(guò)濾功能的效率是該網(wǎng)絡(luò)監(jiān)測(cè)的關(guān)鍵,因?yàn)閷?duì)于網(wǎng)絡(luò)上的每一數(shù)據(jù)包都會(huì)使用該模塊處理,判斷是否符合過(guò)濾條件。低效率的過(guò)濾程序會(huì)導(dǎo)致數(shù)據(jù)包丟失、來(lái)不及分析處理等。用戶可以按特定的子網(wǎng)主機(jī)以及特定的協(xié)議端口如Http,FTP,E-mail等進(jìn)行過(guò)濾,只將用戶關(guān)心的敏感數(shù)據(jù)向上層提交,從而提高系統(tǒng)的工作效率。信息的簡(jiǎn)單過(guò)濾有如下幾種。協(xié)議過(guò)濾:根據(jù)傳輸層和網(wǎng)絡(luò)層中的特性過(guò)濾,如選擇。TCP數(shù)據(jù)而非UDP數(shù)據(jù)。類型過(guò)濾:站過(guò)濾:根據(jù)MAC地址,篩選出某個(gè)工作站或服務(wù)器的數(shù)據(jù)。服務(wù)過(guò)濾:根據(jù)端口篩選特定類型服務(wù)。內(nèi)容的過(guò)濾:根據(jù)收到信息的內(nèi)容,選擇性的數(shù)據(jù)過(guò)濾。本系統(tǒng)采用內(nèi)容過(guò)濾的方法來(lái)實(shí)現(xiàn)論壇監(jiān)測(cè)。3系統(tǒng)需求分析3.1互聯(lián)網(wǎng)論壇監(jiān)測(cè)的產(chǎn)生互聯(lián)網(wǎng)發(fā)展迅速,并在日益趨向跨國(guó)界、多語(yǔ)種、分布式和多接入的態(tài)勢(shì)。同時(shí)企業(yè)如何能夠從海量的數(shù)據(jù)信息中獲取民眾焦點(diǎn)和社會(huì)輿論動(dòng)向已經(jīng)成為管理部門(mén)日常工作的重中之重。從小型公司員工上網(wǎng)浪費(fèi)工作時(shí)間和公司資源,到商業(yè)間諜通過(guò)一封郵件將公司機(jī)密泄露,無(wú)不體現(xiàn)著網(wǎng)絡(luò)監(jiān)測(cè)的必要性。所以一種能夠?qū)崟r(shí)監(jiān)測(cè)網(wǎng)絡(luò)流量和網(wǎng)絡(luò)傳輸信息,又能夠通過(guò)網(wǎng)絡(luò)信息中把色情和反動(dòng)字眼的內(nèi)容過(guò)濾的軟件,是我們迫切需要的。因此互聯(lián)網(wǎng)論壇內(nèi)容監(jiān)測(cè)系統(tǒng)的產(chǎn)生就顯得尤為重要。它是當(dāng)今網(wǎng)絡(luò)發(fā)展的必然產(chǎn)物,也是未來(lái)網(wǎng)絡(luò)的不可或缺的。3.2論壇內(nèi)容監(jiān)測(cè)系統(tǒng)的總體目標(biāo)論壇監(jiān)測(cè)系統(tǒng)總體目標(biāo):通過(guò)設(shè)計(jì)流量控制,身份驗(yàn)證,屏蔽各種端口等方法對(duì)用戶上網(wǎng)、收發(fā)郵件、聊天和電腦游戲進(jìn)行嚴(yán)格管理與控制;有效預(yù)防黑客、木馬和病毒,進(jìn)行反動(dòng),色情的信息。對(duì)用戶上網(wǎng)行為的監(jiān)測(cè)和管理事實(shí)上要配合一個(gè)復(fù)雜的網(wǎng)絡(luò)系統(tǒng)體系去實(shí)現(xiàn),首先要定義出了網(wǎng)絡(luò)用戶的類型,普通用戶、管理員等都應(yīng)有不同的網(wǎng)絡(luò)權(quán)限去獲得網(wǎng)絡(luò)的資源。此外對(duì)用戶的數(shù)據(jù)的監(jiān)測(cè)就通過(guò)流控設(shè)備,了解所使用的網(wǎng)絡(luò)服務(wù)和各個(gè)服務(wù)的流量,對(duì)敏感的流量和服務(wù)有必要進(jìn)行抓包分析?;ヂ?lián)網(wǎng)論壇內(nèi)容監(jiān)測(cè)系統(tǒng)能夠自動(dòng)獲取目標(biāo)論壇的發(fā)布內(nèi)容,系統(tǒng)針對(duì)發(fā)帖作者、發(fā)帖時(shí)間、帖子URL、帖子標(biāo)題和帖子正文等關(guān)鍵字段開(kāi)放基于單個(gè)字段或是組合選項(xiàng)的熱點(diǎn)查詢功能,并能自動(dòng)生成數(shù)據(jù)報(bào)告,從而幫助系統(tǒng)使用者真正實(shí)現(xiàn)對(duì)于社會(huì)熱點(diǎn)的把握和社會(huì)動(dòng)向的預(yù)期。3.2.1系統(tǒng)所需的環(huán)境配置拓?fù)鋱D如下圖2:論壇發(fā)布內(nèi)容論壇發(fā)布內(nèi)容目標(biāo)論壇2目標(biāo)論壇1目標(biāo)論壇n定點(diǎn)深入挖掘信息獲取/存儲(chǔ)平臺(tái)數(shù)據(jù)報(bào)告生成平臺(tái)圖2系統(tǒng)功能圖從上圖可知,互聯(lián)網(wǎng)論壇監(jiān)測(cè)系統(tǒng)所需要包括的兩個(gè)獨(dú)立的平臺(tái):數(shù)據(jù)獲取/存儲(chǔ)平臺(tái)和數(shù)據(jù)報(bào)告生成平臺(tái)。其實(shí)這兩個(gè)平臺(tái)都是起到方便客戶查找的功能。數(shù)據(jù)獲取和存儲(chǔ)平臺(tái):接入互聯(lián)網(wǎng),對(duì)定點(diǎn)網(wǎng)站、論壇進(jìn)行數(shù)據(jù)深入挖掘,基于發(fā)帖人、發(fā)帖時(shí)間、主題及正文進(jìn)行分類檢索與統(tǒng)計(jì),對(duì)目標(biāo)站點(diǎn)的信息提取率達(dá)到90%;專項(xiàng)針對(duì)目標(biāo)論壇的信息發(fā)布進(jìn)行內(nèi)容獲取,對(duì)目標(biāo)論壇分組,基于論壇組進(jìn)行高效的輪詢式全文獲??;采用純文本方式存儲(chǔ),以最大限度節(jié)約空間。數(shù)據(jù)報(bào)告生成平臺(tái):以海量信息為基礎(chǔ),自動(dòng)聚成目標(biāo)論壇當(dāng)前熱點(diǎn),并發(fā)布信息快照、生成數(shù)據(jù)報(bào)告。系統(tǒng)還應(yīng)該需要:定點(diǎn)網(wǎng)站深入挖掘·網(wǎng)絡(luò)終端瀏覽行為智能模擬·目標(biāo)站點(diǎn)信息提取率達(dá)到90%·專項(xiàng)針對(duì)論壇發(fā)布內(nèi)容獲取·目標(biāo)論壇分組,基于論壇組的高效輪詢式全文獲取此功能主要能夠很快的建立目標(biāo)論壇網(wǎng)站的目錄,并根據(jù)需要定點(diǎn)某個(gè)網(wǎng)站。在這個(gè)定點(diǎn)網(wǎng)站中利用搜索,提取所需的信息。數(shù)據(jù)挖掘·關(guān)注熱點(diǎn)查詢·發(fā)帖人、發(fā)帖時(shí)間、主題及正文的分類檢索與統(tǒng)計(jì)此功能進(jìn)一步對(duì)某個(gè)網(wǎng)站進(jìn)行信息的有針對(duì)性的很具體的搜索,達(dá)到信息的快速獲取。信息聚類生成數(shù)據(jù)報(bào)告·以海量信息為基礎(chǔ)·自動(dòng)聚成目標(biāo)論壇當(dāng)前熱點(diǎn)·熱點(diǎn)發(fā)帖信息快照此功能是從論壇中的所有信息,自動(dòng)篩選其熱點(diǎn)信息供查找和閱讀。3.2.2系統(tǒng)的流程圖由以上對(duì)論壇監(jiān)測(cè)的系統(tǒng)分析,要實(shí)現(xiàn)這些功能,關(guān)鍵技術(shù)就是實(shí)現(xiàn)抓包和過(guò)濾,因此得到該系統(tǒng)從開(kāi)始抓包到最后匹配丟棄的一個(gè)流程圖。如下圖3:丟棄并報(bào)警正常抓包分析包匹配關(guān)鍵字是否圖3系統(tǒng)流程圖3.3系統(tǒng)功能分析數(shù)據(jù)包捕獲功能論壇內(nèi)容監(jiān)測(cè)要實(shí)現(xiàn)抓包,就離不開(kāi)Libpcap調(diào)用抓包庫(kù)函數(shù)。所以先介紹Libpcap:Libpcap接口支持基于BSD數(shù)據(jù)包過(guò)濾器(BPF:BerkeleyPaeketFilter)的數(shù)據(jù)過(guò)濾機(jī)制。Libpcap庫(kù)只支持BPF接口的內(nèi)核過(guò)濾。如果主機(jī)上沒(méi)有BPF機(jī)制,則所有的數(shù)據(jù)包都必須讀取到用戶空間后,再在Libpcap庫(kù)中進(jìn)行過(guò)濾處理,這樣就會(huì)增加額外的處理負(fù)擔(dān),導(dǎo)致性能的下降。系統(tǒng)由網(wǎng)絡(luò)接口卡、BPF和Libpcap組成。網(wǎng)卡部分監(jiān)視共享網(wǎng)絡(luò)中的所有包,BPF用過(guò)濾條件匹配監(jiān)視到的包,若匹配成功則將之從網(wǎng)卡驅(qū)動(dòng)的緩沖區(qū)復(fù)制到核心區(qū)。核心緩沖區(qū)分為兩部分:存儲(chǔ)緩沖區(qū)和復(fù)制緩沖區(qū)。存儲(chǔ)緩沖區(qū)用于容納過(guò)濾匹配成功后的數(shù)據(jù)包,復(fù)制緩沖區(qū)用于將包從核心緩沖區(qū)復(fù)制到用戶緩沖區(qū)。當(dāng)存儲(chǔ)緩沖區(qū)滿而復(fù)制緩沖區(qū)空時(shí),BPF將兩者交換。這樣的設(shè)計(jì)使用戶程序不需與網(wǎng)卡驅(qū)動(dòng)程序交互。Libpcap完成了如下工作:·向用戶程序提供抽象接口·根據(jù)用戶要求生成過(guò)濾指令·管理用戶緩沖區(qū)(用戶程序不可見(jiàn))·負(fù)責(zé)用戶程序與內(nèi)核的交互如圖4所示:用戶程序用戶程序Llibpcap庫(kù)函數(shù)用戶緩沖區(qū)用戶程序Llibpcap庫(kù)函數(shù)用戶緩沖區(qū)復(fù)制緩沖區(qū)存儲(chǔ)緩沖區(qū)過(guò)濾器復(fù)制緩沖區(qū)存儲(chǔ)緩沖區(qū)過(guò)濾器網(wǎng)絡(luò)接口卡用戶級(jí)內(nèi)核級(jí)網(wǎng)絡(luò)圖4Libpcap工作流程圖包過(guò)濾功能根據(jù)目前社會(huì)存在的各種問(wèn)題及語(yǔ)言習(xí)慣,建立有害信息庫(kù),通過(guò)包捕獲功能提取的IM軟件傳輸?shù)拿魑南?,將其與有害信息庫(kù)中的關(guān)鍵詞進(jìn)行匹配,提取含有有害信息數(shù)據(jù)。如法輪功,帶有色情的信息和圖片。包過(guò)濾就離不開(kāi)BerkeleyPacketFilter(BPF),即伯克利數(shù)據(jù)包過(guò)濾器,它提供了一種新的流量監(jiān)測(cè)結(jié)構(gòu),性能比其它工具有顯著提高。BPF工作原理:許多版本的UNIX都提供用戶級(jí)別的網(wǎng)絡(luò)監(jiān)測(cè)功能,因?yàn)楸O(jiān)測(cè)程序以用戶級(jí)別進(jìn)程工作。數(shù)據(jù)包的拷貝必須跨越內(nèi)核/用戶保護(hù)界限,這就需要使用名為包過(guò)濾器(packetfilter)的內(nèi)核代理程序。BPF主要由兩大部分組成:網(wǎng)絡(luò)分接頭(NetworkTap)和數(shù)據(jù)包過(guò)濾器(PacketFilter)。網(wǎng)絡(luò)分接頭從網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序處收集數(shù)據(jù)包拷貝,并傳遞給正在監(jiān)測(cè)的應(yīng)用程序。過(guò)濾器決定某一數(shù)據(jù)包是被接收還是拒絕,以及如果被接受,數(shù)據(jù)中的那些部分被拷貝給應(yīng)用程序。如下圖5:…………應(yīng)用程序應(yīng)用程序……應(yīng)用程序應(yīng)用程序協(xié)議棧緩存緩存緩存協(xié)議棧緩存緩存緩存過(guò)濾器過(guò)濾器過(guò)濾器過(guò)濾器過(guò)濾器過(guò)濾器橋接橋接BPF橋接橋接BPF鏈路層驅(qū)動(dòng)器鏈路層鏈路層驅(qū)動(dòng)器鏈路層驅(qū)動(dòng)器鏈路層驅(qū)動(dòng)器圖5BPF組成結(jié)構(gòu)圖匹配報(bào)警功能根據(jù)任務(wù)的實(shí)時(shí)性要求,報(bào)警、記錄日志、圖形顯示等功能應(yīng)建立在不影響包捕獲的基礎(chǔ)上。當(dāng)數(shù)據(jù)包匹配成功后,說(shuō)明內(nèi)容為有害的,因此該信息丟棄,并發(fā)出報(bào)警聲。4論壇監(jiān)測(cè)軟件設(shè)計(jì)的總體方案互聯(lián)網(wǎng)論壇監(jiān)測(cè)系統(tǒng)使用的是用戶/服務(wù)器的模式。做服務(wù)器端的多臺(tái)機(jī)子在一個(gè)局域網(wǎng)內(nèi),組成目標(biāo)論壇,接收來(lái)自其他網(wǎng)絡(luò)的客戶機(jī)的信息。做客戶端的機(jī)子在另外的局域網(wǎng)內(nèi),發(fā)信息給目標(biāo)論壇。服務(wù)器機(jī)子裝上這個(gè)監(jiān)測(cè)軟件后,可以捕獲到客戶端機(jī)子向這臺(tái)機(jī)子發(fā)的信息(帖子)實(shí)現(xiàn)監(jiān)測(cè)功能。同時(shí)如果發(fā)的信息中含有發(fā)法輪功字眼等反動(dòng)信息。該軟件就自動(dòng)刪除該帖子實(shí)現(xiàn)過(guò)濾功能。并同時(shí)發(fā)出警報(bào)聲??蛻舳藱C(jī)子和服務(wù)器端機(jī)子分別在各自的路由器網(wǎng)關(guān)下構(gòu)成一個(gè)小型的內(nèi)部局域網(wǎng)。他們分別有各自的出口網(wǎng)關(guān)。由此可得到它的拓?fù)鋱D如下圖6:HUBHUB目標(biāo)論壇監(jiān)聽(tīng)機(jī)PCHUBPC圖6系統(tǒng)總體結(jié)構(gòu)4.1論壇監(jiān)測(cè)軟件主要功能對(duì)外部網(wǎng)絡(luò)的監(jiān)測(cè):根據(jù)具體網(wǎng)絡(luò)大小和監(jiān)測(cè)應(yīng)用的范圍有所不同而做些修改即可。通過(guò)監(jiān)測(cè)機(jī)對(duì)網(wǎng)絡(luò)中所有主機(jī)的數(shù)據(jù)進(jìn)行檢測(cè),收集網(wǎng)絡(luò)中的數(shù)據(jù),當(dāng)發(fā)現(xiàn)正常的數(shù)據(jù)流時(shí),監(jiān)測(cè)機(jī)不采取任何動(dòng)作,當(dāng)發(fā)現(xiàn)有敏感的數(shù)據(jù)時(shí)即可將其先隔離并保存下來(lái),然后報(bào)警,通過(guò)管理員的操作和檢驗(yàn)后再對(duì)用戶pc加以處理。這樣的工作流程對(duì)于中小型企業(yè)來(lái)說(shuō)是比較適用,只需要一個(gè)監(jiān)測(cè)軟件即可,設(shè)備的投入也不大,效果也比較好。數(shù)據(jù)獲?。骸せヂ?lián)網(wǎng)論壇監(jiān)測(cè)系統(tǒng)呈現(xiàn)簡(jiǎn)潔、歸一化的操作界面,多線程獲取網(wǎng)站發(fā)布數(shù)據(jù)?!ぴ诠芾砣藛T設(shè)定的遍歷層數(shù)范圍內(nèi),系統(tǒng)遞歸獲取起始及隨后頁(yè)面中所有超鏈接所對(duì)應(yīng)的內(nèi)容?!は到y(tǒng)在受限于上述遍歷層數(shù)的同時(shí),還能接受管理人員對(duì)于最大下載字節(jié)數(shù)與每次請(qǐng)求間隔時(shí)間的設(shè)置,從而避免因其內(nèi)容獲取操作而造成目標(biāo)論壇的工作負(fù)載驟然增加。·接入互聯(lián)網(wǎng),對(duì)定點(diǎn)網(wǎng)站、論壇進(jìn)行數(shù)據(jù)深入挖掘,基于發(fā)帖人、發(fā)帖時(shí)間、主題及正文進(jìn)行分類檢索與統(tǒng)計(jì),對(duì)目標(biāo)站點(diǎn)的信息提取率達(dá)到90%。專項(xiàng)針對(duì)目標(biāo)論壇的信息發(fā)布進(jìn)行內(nèi)容獲取,對(duì)目標(biāo)論壇分組,基于論壇組進(jìn)行高效的輪詢式全文獲??;采用純文本方式存儲(chǔ),以最大限度節(jié)約空間?!わ@示當(dāng)前已經(jīng)獲取帖子的發(fā)帖人、發(fā)帖時(shí)間、帖子位置、帖子標(biāo)題、帖子URL等基本信息。內(nèi)容過(guò)濾功能:包括對(duì)不需要監(jiān)視的對(duì)象、內(nèi)容、行為進(jìn)行過(guò)濾(忽略監(jiān)視),可針對(duì)3種對(duì)象(整個(gè)網(wǎng)絡(luò)、分組、電腦)?!と勘O(jiān)視/不監(jiān)視、只監(jiān)視部分應(yīng)用。根據(jù)不用管理需要,可設(shè)置為某些對(duì)象監(jiān)視,某些對(duì)象不監(jiān)視(比如管理員和老板沒(méi)有必要被監(jiān)視),某些用戶應(yīng)用監(jiān)視,某些應(yīng)用不監(jiān)視。由于網(wǎng)頁(yè)監(jiān)視很多廣告垃圾而且比較消耗硬盤(pán)空間等資源?!と绻腥嗽谟^看網(wǎng)站的帖子后,想發(fā)表評(píng)論,如果評(píng)論中包含色情和反動(dòng)的字眼就自動(dòng)刪除該帖子,并發(fā)出警報(bào)?!ぞW(wǎng)站過(guò)濾白名單和黑名單功能??稍O(shè)置只監(jiān)視具體的一些網(wǎng)站,也可以忽略監(jiān)視某些網(wǎng)站;比如一個(gè)公司里通常SINA這樣的網(wǎng)站可能同時(shí)所有的人都有去看,如果都監(jiān)視的話將相當(dāng)浪費(fèi)資源又內(nèi)容重復(fù),實(shí)際上也無(wú)意義和必要。因此采用過(guò)濾方法模糊控制模式去忽略對(duì)一些公共的東西過(guò)濾。比如輸入SINA,將過(guò)濾全部包含SINA的所有URL訪問(wèn),這叫做白名單過(guò)濾。對(duì)包含色情和反動(dòng)信息的過(guò)濾叫做黑名單過(guò)濾。流量監(jiān)視與限制:包括針對(duì)具體的對(duì)象,能夠詳細(xì)準(zhǔn)確監(jiān)視其發(fā)生的流量,并能夠限制其占據(jù)的流量帶寬。數(shù)據(jù)備份和配置管理:包括允許定義數(shù)據(jù)保存時(shí)間或刪除過(guò)時(shí)的數(shù)據(jù)。數(shù)據(jù)、配置和日志的查看、打印、備份恢復(fù)功能。簡(jiǎn)單容易的數(shù)據(jù)備份方式和海量存儲(chǔ)模式。支持監(jiān)視內(nèi)容和配置文件的海量模式備份、恢復(fù)。4.2論壇監(jiān)測(cè)系統(tǒng)功能模塊的描述對(duì)用戶上網(wǎng)行為的監(jiān)測(cè)和管理事實(shí)上要配合一個(gè)復(fù)雜的網(wǎng)絡(luò)系統(tǒng)體系去實(shí)現(xiàn),首先要定義網(wǎng)絡(luò)用戶的類型,普通用戶、管理員等都應(yīng)有不同的網(wǎng)絡(luò)權(quán)限去獲得網(wǎng)絡(luò)的資源,因此就需要網(wǎng)管功能的軟硬件了。此外對(duì)用戶的數(shù)據(jù)的監(jiān)測(cè)就只能通過(guò)流控設(shè)備去實(shí)現(xiàn),了解所使用的各個(gè)服務(wù)的流量,對(duì)敏感的流量和服務(wù)有必要進(jìn)行抓包分析。特別是對(duì)技術(shù)含量較高的企業(yè)有很大用途。本系統(tǒng)根據(jù)功能模塊化分為后臺(tái)和前臺(tái)軟件兩部分。后臺(tái)部分由主進(jìn)程和主線程完成。主進(jìn)程通過(guò)主控模塊實(shí)現(xiàn)。主線程通過(guò)包捕獲模塊、解碼模塊、模式匹配模塊和輸出模塊來(lái)完成。前臺(tái)部分包括圖形顯示模塊、命令模塊。主控模塊實(shí)現(xiàn)的功能包括所有模塊的初始化、命令行解釋、配置文件解釋、建立主線程、關(guān)閉主線程。包捕獲模塊是主線程的主程序,它將數(shù)據(jù)包捕獲后的處理交給解碼模塊。解碼模塊,定義不同的數(shù)據(jù)結(jié)構(gòu)取得IP地址、TCP層的端口號(hào)以及信息實(shí)體等數(shù)據(jù),在將這些數(shù)據(jù)填寫(xiě)到數(shù)據(jù)結(jié)構(gòu)中供模式匹配模塊來(lái)使用。解碼模塊把從網(wǎng)絡(luò)上抓取的原始數(shù)據(jù)包,從下向上沿各個(gè)協(xié)議棧進(jìn)行解碼并填充相應(yīng)的數(shù)據(jù)結(jié)構(gòu),以便模式匹配模塊處理。模式匹配模塊應(yīng)用KWP算法將匹配字庫(kù)與捕獲到的IM信息進(jìn)行匹配,提取有害信息,對(duì)有害信息進(jìn)行定位。輸出模塊接收模式匹配模塊匹配出的結(jié)果建立黑名單,根據(jù)輸出類型分別分發(fā)到圖形顯示模塊、日志模塊及提供黑名單給網(wǎng)關(guān)計(jì)算機(jī)以便于攔截計(jì)算機(jī)攔截有害內(nèi)容。命令模塊將用戶的信息傳遞給主控模塊。圖形顯示模塊顯示目前的關(guān)鍵字和匹配成功的信息和信息的源IP地址、目的IP地址、端口號(hào)、ID號(hào)。日志模塊實(shí)現(xiàn)各種報(bào)文日志功能,也就是把各種類型的報(bào)文記錄到各科類型的日志中。系統(tǒng)功能模塊圖如下圖7:圖7系統(tǒng)功能模塊5論壇監(jiān)測(cè)軟件的實(shí)現(xiàn)5.1運(yùn)行環(huán)境和操作系統(tǒng)選擇通過(guò)分析,后臺(tái)軟件選用RedHat7.2(Linux2.4內(nèi)核)作為開(kāi)發(fā)平臺(tái)。主要因?yàn)椋篖inux網(wǎng)絡(luò)功能強(qiáng)大,其本身是依靠網(wǎng)絡(luò)技術(shù)發(fā)展的。Linux2.4內(nèi)核對(duì)libpcap支持的比較好。并且可以得到libpcap的更新版本。目前的幾種主流抓包軟件都有支持Linux的版本,便于比較功能。Linux下的軟件是開(kāi)放式源代碼產(chǎn)品,便于學(xué)習(xí)?;陂_(kāi)放式源代碼的特性,系統(tǒng)中不會(huì)存在后門(mén),安全性好。由于Window系統(tǒng)的圖形開(kāi)發(fā)功能強(qiáng)大,因此選擇在Win2000professional上開(kāi)發(fā)前臺(tái)軟件。5.2系統(tǒng)對(duì)軟硬件配置的要求服務(wù)器端建議用戶的計(jì)算機(jī)使用以下配置(或更高):CPU:Intel或兼容機(jī)硬盤(pán):7200轉(zhuǎn)/分,剩余空間>100M內(nèi)存:建議512MB或更多鼠標(biāo):3D光電鼠鍵盤(pán):標(biāo)準(zhǔn)104鍵MicrosoftWindowsNTServer4.0、Windows2000Server、MicrosoftWindowsNTServer企業(yè)版、Windows2000AdvancedServer及Windows2000DataCenterServer或者更高軟件版本??蛻舳送扑]配置:客戶端要求不高,IE5.01以上或者兼容版本。5.3預(yù)期成果本設(shè)計(jì)預(yù)期成果是完成互聯(lián)網(wǎng)論壇監(jiān)測(cè)的功能并能夠?qū)崿F(xiàn)通過(guò)身份驗(yàn)證,實(shí)現(xiàn)客戶端訪問(wèn)服務(wù)器時(shí),可以通過(guò)服務(wù)器上的監(jiān)測(cè)系統(tǒng),把客戶端的信息捕獲到并實(shí)現(xiàn)過(guò)濾功能。提供本畢業(yè)設(shè)計(jì)開(kāi)發(fā)的軟件和畢業(yè)設(shè)計(jì)論文。5.4軟件模塊的實(shí)現(xiàn)主控模塊:主進(jìn)程功能通過(guò)主控模塊完成,主控模塊是系統(tǒng)的初始化進(jìn)程。首先它負(fù)責(zé)解釋命令行,它調(diào)用了getopt函數(shù),來(lái)進(jìn)行命令行的解析。如果命令行給出的參數(shù)不正確,會(huì)提示用戶一個(gè)信息然后退出。如果命令行給出的參數(shù)正確,將參數(shù)相應(yīng)的數(shù)據(jù)放在一個(gè)全局的緩沖區(qū)內(nèi)。參數(shù)內(nèi)容即過(guò)濾規(guī)則供包捕獲模塊使用。第二點(diǎn)建立socket,主控模塊socket的處理主要是完成接收命令模塊發(fā)送的消息,根據(jù)數(shù)據(jù)包的類型標(biāo)志位分別處理。第三處理用戶命令?!?dòng)抓包:初始化抓包線程?!ねV棺グ宏P(guān)閉抓包線程。·查看當(dāng)前流量:打開(kāi)系統(tǒng)中/pros/net/dev文件,從而獲得網(wǎng)絡(luò)接口的流量數(shù)據(jù),然后將數(shù)據(jù)后發(fā)送給前臺(tái)軟件進(jìn)行顯示?!そY(jié)束主程序:最后等待用戶退出消息,結(jié)束該系統(tǒng)工作,完成應(yīng)用退出時(shí)的釋放資源工作。包捕獲模塊:包捕獲模塊是通過(guò)啟動(dòng)主線程來(lái)完成的。主線程啟動(dòng)后首先讀取存放關(guān)鍵詞的文件,將需要捕獲的關(guān)鍵詞放在一個(gè)全局的緩沖區(qū)內(nèi)。第二步建立socket,主線程中的socket主要是完成數(shù)據(jù)包的捕獲和匹配后,將信息按照定義的接口發(fā)送信息。第三步根據(jù)全局系統(tǒng)緩沖區(qū)中存放的命令參數(shù),定義過(guò)濾規(guī)則,建立過(guò)濾器指令鏈表頭,該數(shù)據(jù)結(jié)構(gòu)詳細(xì)介紹在后面。過(guò)濾規(guī)則中包括數(shù)據(jù)鏈路層網(wǎng)絡(luò)傳輸類型、網(wǎng)絡(luò)層IP地址范圍以及傳輸層使用的端口號(hào)。第四步調(diào)用包捕獲模塊開(kāi)始抓包。包捕獲模塊主要調(diào)用Libpcap完成用戶層次的數(shù)據(jù)包截獲工作。Libpcap庫(kù)所提供的主要功能函數(shù)有pcap_open_live(),pcap_read(),pcap_compile(),pcap_setfilter(),pcap_close()。這5個(gè)接口函數(shù)的主要功能如下所述:pcap_open_live(),用來(lái)獲得一個(gè)數(shù)據(jù)截獲描述符,該描述符用于查看在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包;pcap_read(),用于讀取底層數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)包,并對(duì)捕獲到的數(shù)據(jù)包用參數(shù)所設(shè)定的回調(diào)函數(shù)進(jìn)行處理;pcap_compile(),用于生成過(guò)濾器指令鏈表;pcap_setfilter(),用于設(shè)定過(guò)濾器;pcapclose(),關(guān)閉相關(guān)的文件井釋放對(duì)應(yīng)資源。打開(kāi)數(shù)據(jù)包截獲設(shè)備,定義t是指向數(shù)據(jù)包截獲設(shè)備描述符結(jié)構(gòu)pcap的全局指針。該函數(shù)由查詢當(dāng)前系統(tǒng)可用的數(shù)據(jù)包截獲設(shè)備,得到該設(shè)各描述符以及設(shè)置過(guò)濾器規(guī)則組成。結(jié)構(gòu)pcap是實(shí)現(xiàn)數(shù)據(jù)包截獲機(jī)制的一個(gè)關(guān)鍵數(shù)據(jù)結(jié)構(gòu)。Structpcap{intfd;文件描述符,這里指數(shù)據(jù)包的描述符,即底層過(guò)濾器特殊文件描述符intsnapshot;快照,這里是所指定查看數(shù)據(jù)包的長(zhǎng)度。intlinktype;底層數(shù)據(jù)鏈路層接口類型。inttzoff;時(shí)區(qū)與格林尼治時(shí)區(qū)的偏移量。intoffset;對(duì)應(yīng)于不同對(duì)齊方式的偏移量。structpcap_sf;表示數(shù)據(jù)包轉(zhuǎn)儲(chǔ)文件的文件結(jié)構(gòu)。structpcap_md;表示數(shù)據(jù)包截獲機(jī)制狀態(tài)和相關(guān)設(shè)備狀態(tài)的結(jié)構(gòu)。intbufsize;數(shù)據(jù)包緩沖區(qū)大小。u-char*buffer;數(shù)據(jù)包緩沖區(qū)的首地址。u-char*bf;緩沖區(qū)指針。intcc;用于計(jì)數(shù)目的的整數(shù)。u_char*pkt;用于特定函數(shù)目的的地址指針。structbyprogramfcode;為一指向過(guò)濾器程序代碼的指針。charerrbuf[PCAP_ERRBUF_SIZE];用于存放錯(cuò)誤信息字符串的數(shù)組。};過(guò)濾器程序用pcap_compile(),pcap_setfilter()函數(shù)和bpf_program數(shù)據(jù)結(jié)構(gòu)來(lái)描述,該數(shù)據(jù)結(jié)構(gòu)如下所示:Structbpf_program{U_intbf_len;這定這段指令程序的長(zhǎng)度。Structbpf_insn*bf_insns;指向一個(gè)過(guò)濾器指令鏈表頭的指針值。};程序的循環(huán)部分是讀取打開(kāi)的截獲設(shè)備上的所有數(shù)據(jù)包,直到滿足設(shè)置的最大截獲數(shù)目。如果失敗返回,則顯示出錯(cuò)信息。由于最大截獲數(shù)目設(shè)置為-1,該函數(shù)在無(wú)錯(cuò)誤情況下,將進(jìn)入永久循環(huán)過(guò)程中。解碼模塊:包捕獲模塊中,定義了從網(wǎng)絡(luò)上抓取原始數(shù)據(jù)包后的處理函數(shù)。過(guò)程復(fù)雜,因此劃分出解碼模塊專門(mén)對(duì)捕獲的原始數(shù)據(jù)包進(jìn)行處理。BPF是工作在數(shù)據(jù)鏈路層,按照以太網(wǎng)頭結(jié)構(gòu)取得數(shù)據(jù)包在該層中的信息。以太網(wǎng)頭數(shù)據(jù)結(jié)構(gòu)定義如下。根據(jù)數(shù)據(jù)結(jié)構(gòu)中以太網(wǎng)類型一項(xiàng)可以繼續(xù)判斷是IP傳輸。structEtherHdr{unsignedcharether_dst[6]:目標(biāo)網(wǎng)卡地址。unsignedcharether_src[6];源網(wǎng)卡地址。unsignedcharether_type[6];以太網(wǎng)類型。};去掉以太網(wǎng)頭部信息可以得到IP層數(shù)據(jù)實(shí)體。IP層頭部數(shù)據(jù)數(shù)據(jù)結(jié)構(gòu)定義如下。分析該數(shù)據(jù)結(jié)構(gòu),可以很容易取出該數(shù)據(jù)流的源IP地址、目的IP地址、傳輸層協(xié)議類型。structip{unsignedintipversion:4;ipv4unsignedintip_length:4;IP包頭長(zhǎng)度unsignedchariptos;服務(wù)類型unsignedshortip_total_lengthIP數(shù)據(jù)包的總長(zhǎng)度unsignedshortip_flags;標(biāo)志位unsignedcharip_ttl;生存期unsignedcharip_protocol;傳輸層協(xié)議類型unsignedshortip_checksum;IP頭的校驗(yàn)和unsignedintip_source;源IP地址unsignedintip_dest;目的IP地址};當(dāng)解碼模塊按照TCP/IP格式取得數(shù)據(jù)傳輸體中的實(shí)際數(shù)據(jù)時(shí)(數(shù)據(jù)實(shí)體),需要按照一定的協(xié)議格式進(jìn)行匹配處理。模式匹配模塊模式匹配模塊通過(guò)打開(kāi)存取有害詞庫(kù)的文件提取并建立匹配字庫(kù)。將匹配字庫(kù)與從解碼模塊提取的信息實(shí)體內(nèi)容進(jìn)行字符串比較,比較算法使用KMP算法。模式匹配模塊采用順序匹配方式逐個(gè)匹配關(guān)鍵詞,如果匹配成功退出該程序,如果不成功繼續(xù)匹配直到匹配完所有的關(guān)鍵詞。匹配算法部分因?yàn)椴捎肒MP算法,所以編寫(xiě)生成NEXT數(shù)組函數(shù)和匹配函數(shù)組成。當(dāng)匹配成功時(shí)調(diào)用處理模塊完成報(bào)警、記錄日志攔截計(jì)算機(jī)功能。圖形顯示模塊該模塊完成前臺(tái)軟件的所有工作。主要兩大部份,一部分提供命令接口供用戶使用,另一部分將數(shù)據(jù)存儲(chǔ),顯示并進(jìn)行報(bào)警。系統(tǒng)啟動(dòng)后,對(duì)網(wǎng)絡(luò)進(jìn)行初始化,與后臺(tái)軟件建立聯(lián)系。當(dāng)用戶選擇命令發(fā)送時(shí),可以有啟動(dòng)抓包、結(jié)束抓包、傳送流程三種選擇。5.5論壇監(jiān)測(cè)軟件的對(duì)象關(guān)系圖以下是該系統(tǒng)從管理員發(fā)出命令到抓包,分析數(shù)據(jù),過(guò)濾數(shù)據(jù),以及最后的發(fā)現(xiàn)有害數(shù)據(jù)報(bào)警的各個(gè)對(duì)象的關(guān)系圖。如圖8所示:管理員管理員命令日志報(bào)警顯示前臺(tái)軟件后臺(tái)接收對(duì)象報(bào)警數(shù)據(jù)圖8系統(tǒng)對(duì)象關(guān)系圖5.6論壇監(jiān)測(cè)的關(guān)鍵代碼6結(jié)果測(cè)試,性能分析6.1測(cè)試指標(biāo):?jiǎn)?dòng)包捕獲。停止包捕獲。捕獲到非法數(shù)據(jù)后有顯示功能。捕獲到非法數(shù)據(jù)后有報(bào)警功能。捕獲到非法數(shù)據(jù)后有日志功能。對(duì)黑名單用戶的信息有顯示、報(bào)瞥、日志功能。抓包和丟包率的測(cè)試。6.2測(cè)試環(huán)境針對(duì)圖所示監(jiān)測(cè)計(jì)算機(jī)所處的位置,設(shè)計(jì)了兩種測(cè)試環(huán)境。分別用來(lái)測(cè)試監(jiān)測(cè)計(jì)算機(jī)處于局域網(wǎng)絡(luò)內(nèi)部和局域網(wǎng)外部的監(jiān)測(cè)效果。6.3監(jiān)測(cè)計(jì)算機(jī)處于局域網(wǎng)內(nèi)部示意圖如下圖9:圖9局域網(wǎng)內(nèi)部監(jiān)聽(tīng)拓?fù)鋱D圖9局域網(wǎng)內(nèi)部監(jiān)聽(tīng)拓?fù)鋱D目標(biāo)論壇HUB監(jiān)聽(tīng)機(jī)用戶機(jī)26.3.1用戶機(jī)和目標(biāo)論壇配置這里我們把監(jiān)測(cè)計(jì)算機(jī)處于局域網(wǎng)內(nèi)部的這種情況做實(shí)驗(yàn),配置如下:用戶機(jī)2網(wǎng)卡的IP地址設(shè)為0,網(wǎng)關(guān)地址設(shè)為,DNS地址設(shè)為,用ipconfig/all查看它的MAC

溫馨提示

  • 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)論