網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第1頁(yè)
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第2頁(yè)
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第3頁(yè)
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第4頁(yè)
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩25頁(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)介

1、 獨(dú)創(chuàng)性聲明本人聲明所呈交的畢業(yè)論文是本人在導(dǎo)師指導(dǎo)下進(jìn)行的理論學(xué)習(xí)、實(shí)習(xí)實(shí)踐以及研究所取得的成果,除了文中特別加以標(biāo)注和致謝之處外,論文中不包含其他人已經(jīng)發(fā)表或撰寫(xiě)過(guò)的研究成果,也不包含獲得 青海民族大學(xué) 或其他教育機(jī)構(gòu)的學(xué)位或證書(shū)而使用過(guò)的材料。與我一起探討、工作的同學(xué)對(duì)本論文所做的任何貢獻(xiàn)均已在論文中作了明確的說(shuō)明并表示了謝意。畢業(yè)論文作者簽名: 簽字日期: 年 月 日畢業(yè)論文版權(quán)使用授權(quán)書(shū)本畢業(yè)論文作者完全了解 青海民族大學(xué) 有關(guān)保留、使用畢業(yè)論文的規(guī)定。特授權(quán)青海民族大學(xué)可以將畢業(yè)論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,并采用影印、縮印或掃描等復(fù)制手段保存、匯編以供查閱和借閱。同

2、意學(xué)校向國(guó)家有關(guān)部門(mén)或機(jī)構(gòu)送交論文的復(fù)印件和磁盤(pán)。論文作者簽名: 簽字日期: 年 月 日 指導(dǎo)教師簽名: 簽字日期: 年 月 日 摘 要隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,社會(huì)進(jìn)入了一個(gè)信息爆炸的時(shí)代,世界也由于網(wǎng)絡(luò)而變小,人們通過(guò)各種技術(shù)和工具使交流突破了空間的限制。在網(wǎng)絡(luò)技術(shù)發(fā)展與普及的同時(shí),網(wǎng)絡(luò)安全問(wèn)題引起了人們的廣泛關(guān)注。因此,研究并開(kāi)發(fā)出一種能夠有效地實(shí)時(shí)捕獲網(wǎng)絡(luò)信息的系統(tǒng)具有極其重要的意義?;谶@一情況,本論文針對(duì)網(wǎng)絡(luò)數(shù)據(jù)的捕獲與數(shù)據(jù)包信息分析等問(wèn)題進(jìn)行了深入的探討和研究。本論文逐一介紹了信息捕獲中的相關(guān)技術(shù)及需求分析,在系統(tǒng)設(shè)計(jì)中對(duì)數(shù)據(jù)包捕獲模塊、解碼數(shù)據(jù)包模塊和數(shù)據(jù)庫(kù)信息模塊的實(shí)現(xiàn)進(jìn)行了詳

3、細(xì)講述。通過(guò)運(yùn)用sniffer開(kāi)發(fā)包實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)包的捕獲,利用tcp/ip 協(xié)議的封裝理論和自下而上的分析實(shí)現(xiàn)了數(shù)據(jù)包信息的分析,并且將分析出來(lái)的信息存入數(shù)據(jù)庫(kù)。另外,還能實(shí)現(xiàn)一些功能,如對(duì)指定的ip地址進(jìn)行數(shù)據(jù)包的捕獲,對(duì)捕獲結(jié)果進(jìn)行顯示等。關(guān)鍵詞:sniffer;數(shù)據(jù)捕獲;信息分析;局域網(wǎng)abstractas development of the network and technology, the society comes into a age of information explosion. due to the network, the world has become sma

4、ller, and people use all kinds of technologies and tools to break through the limitation of communication. the network security has been widely concerned followed by the development and universal of the network technology. therefore, it is great significance that an effective real-time interception

5、network information system is studied and developed. base on this situation, this thesis in-depth studies to capture the network data and so on. besides, it introduces relative technology and the needs information capture. the realization of the data capture module, data packet decoded module and da

6、tabase information module is displayed for detail in the systems design. the network data packet is captured through sniffer, some functions has been realized, such as network data packet capture, data packets of information analysis by using tcp / ip protocol encapsulation theory and bottom-up, and

7、 will analyze the information stored in the database. simultaneously, this software would also increases some functions, such as data packet capture by the ip address, make the results and statistics,display the results of data packet capture and so on.key words: sniffer; data capture; information a

8、nalysis ; lan目 錄1引言111課題意義和背景112課題研究技術(shù)和方法213 sniffer簡(jiǎn)介32研究的目的及內(nèi)容521研究的目的及內(nèi)容522課題研究的相關(guān)技術(shù)63需求931功能需求932性能需求94 網(wǎng)絡(luò)嗅探器原理114.1系統(tǒng)功能概述1142功能模塊設(shè)計(jì)14421數(shù)據(jù)包捕獲模塊設(shè)計(jì)16422數(shù)據(jù)包解析存儲(chǔ)模塊17423數(shù)據(jù)包信息分析模塊設(shè)計(jì)17424數(shù)據(jù)包信息顯示模塊設(shè)計(jì)185網(wǎng)絡(luò)嗅探器的設(shè)計(jì)195.1測(cè)試環(huán)境195.2測(cè)試結(jié)果216、總結(jié)24參考文獻(xiàn):25致謝261引言隨著計(jì)算機(jī)技術(shù)的發(fā)展,網(wǎng)絡(luò)已經(jīng)日益成為生活中不可或缺的通訊工具,但是隨之而來(lái)的非法入侵也是一直威脅著計(jì)算機(jī)

9、網(wǎng)絡(luò)安全,由于在局域網(wǎng)采用廣播的方式,因此,在某個(gè)廣播域中可以監(jiān)聽(tīng)到所有數(shù)據(jù)包,而黑客也能通過(guò)對(duì)這些數(shù)據(jù)包的分析來(lái)獲取局域網(wǎng)中的重要信息。另一方面,我們對(duì)黑客入侵活動(dòng)和其他網(wǎng)絡(luò)犯罪調(diào)查、取證也是通過(guò)網(wǎng)絡(luò)監(jiān)聽(tīng)技術(shù)來(lái)獲取相關(guān)信息。所以,掌握以太網(wǎng)的監(jiān)聽(tīng)技術(shù)原理、實(shí)現(xiàn)方法和防范措施顯得尤為重要。11課題意義和背景本設(shè)計(jì)利用sniffer來(lái)捕獲數(shù)據(jù)包、分析數(shù)據(jù)包,實(shí)現(xiàn)網(wǎng)絡(luò)嗅探功能。sniffer是windows環(huán)境下的鏈接層網(wǎng)絡(luò)訪問(wèn)的工業(yè)標(biāo)準(zhǔn)工具,目前被廣泛使用。sniffer可以使用應(yīng)用程序繞過(guò)操作系統(tǒng)的協(xié)議棧去捕獲和傳輸網(wǎng)絡(luò)數(shù)據(jù)包。通過(guò)對(duì)sniffer的學(xué)習(xí),可以深入的理解與掌握網(wǎng)絡(luò)數(shù)據(jù)的組成,傳

10、輸與分析。 嗅探器,可以理解為一個(gè)安裝在計(jì)算機(jī)上的竊聽(tīng)設(shè)備它可以用來(lái)竊聽(tīng)計(jì)算機(jī)在網(wǎng)絡(luò)上所產(chǎn)生的眾多的信息。簡(jiǎn)單一點(diǎn)解釋?zhuān)阂徊侩娫挼母`聽(tīng)裝置, 可以用來(lái)竊聽(tīng)雙方通話的內(nèi)容,而計(jì)算機(jī)網(wǎng)絡(luò)嗅探器則可以竊聽(tīng)計(jì)算機(jī)程序在網(wǎng)絡(luò)上發(fā)送和接收到的數(shù)據(jù)。計(jì)算機(jī)直接所傳送的數(shù)據(jù),事實(shí)上是大量的二進(jìn)制數(shù)據(jù)。因此, 一個(gè)網(wǎng)絡(luò)竊聽(tīng)程序必須也使用特定的網(wǎng)絡(luò)協(xié)議來(lái)分解嗅探到的數(shù)據(jù), 嗅探器也就必須能夠識(shí)別出那個(gè)協(xié)議對(duì)應(yīng)于這個(gè)數(shù)據(jù)片斷,只有這樣才能夠進(jìn)行正確的解碼嗅探器是網(wǎng)絡(luò)的抓包工具,可以對(duì)網(wǎng)絡(luò)中大量數(shù)據(jù)抓取,從而方便使用者對(duì)網(wǎng)絡(luò)中用戶的一些信息進(jìn)行分析,所以,通常被黑客運(yùn)用于網(wǎng)絡(luò)攻擊。我們?nèi)绻材苷莆站W(wǎng)絡(luò)嗅探器的原理和設(shè)

11、計(jì),可以將它運(yùn)用與網(wǎng)絡(luò)故障檢測(cè)、網(wǎng)絡(luò)狀況的監(jiān)視,還可以加強(qiáng)企業(yè)信息安全防護(hù)。12課題研究技術(shù)和方法網(wǎng)絡(luò)數(shù)據(jù)捕獲技術(shù)是獲取信息的關(guān)鍵技術(shù),它通過(guò)監(jiān)聽(tīng)技術(shù),過(guò)濾技術(shù)獲取原始數(shù)據(jù),根據(jù)tcp/ip分層理論進(jìn)行層層拆解,提取相關(guān)協(xié)議中的信息。本畢業(yè)設(shè)計(jì)主要通過(guò)使用sniffer開(kāi)發(fā)包,在java環(huán)境下編寫(xiě)出了一款簡(jiǎn)單的軟件對(duì)數(shù)據(jù)包信息按tcp協(xié)議類(lèi)型、udp協(xié)議類(lèi)型、arp等分類(lèi)捕獲,捕獲出所需要的敏感信息,并且將捕獲出來(lái)的信息寫(xiě)入數(shù)據(jù)庫(kù)。網(wǎng)絡(luò)嗅探器并不會(huì)告訴你問(wèn)題究竟是什么,而只會(huì)告訴你究竟發(fā)生了什么。對(duì)網(wǎng)絡(luò)嗅探器的研究我加深了對(duì)通信協(xié)議的理解,網(wǎng)絡(luò)數(shù)據(jù)結(jié)構(gòu)的理解。對(duì)網(wǎng)絡(luò)嗅探器的深入研究更重要的是可

12、以讓我們的互聯(lián)網(wǎng)世界更安全、信息更健康。計(jì)算機(jī)的嗅探器比起電話竊聽(tīng)器,有他獨(dú)特的優(yōu)勢(shì): 很多的計(jì)算機(jī)網(wǎng)絡(luò)采用的是“共享媒體。也就是說(shuō),你不必中斷他的通訊,并且配置特別的線路,再安裝嗅探器,你幾乎可以在任何連接著的網(wǎng)絡(luò)上直接竊聽(tīng)到你同一掩碼范圍內(nèi)的計(jì)算機(jī)網(wǎng)絡(luò)數(shù)據(jù)。我們稱(chēng)這種竊聽(tīng)方式為“基于混雜模式的嗅探” 。 盡管如此,這種“共享” 的技術(shù)發(fā)展的很快,慢慢轉(zhuǎn)向“交換” 技術(shù),這種技術(shù)會(huì)長(zhǎng)期內(nèi)會(huì)繼續(xù)使用下去, 它可以實(shí)現(xiàn)有目的選擇的收發(fā)數(shù)據(jù)。13 sniffer簡(jiǎn)介當(dāng)信息以明文的形式在網(wǎng)絡(luò)上傳輸時(shí),便可以使用網(wǎng)絡(luò)監(jiān)聽(tīng)的方式來(lái)進(jìn)行攻擊。將網(wǎng)絡(luò)接口設(shè)置在監(jiān)聽(tīng)模式,便可以將網(wǎng)上傳輸?shù)脑丛床粩嗟男畔⒔孬@。

13、但實(shí)際上sniffer技術(shù)被廣泛地應(yīng)用于網(wǎng)絡(luò)故障診斷、協(xié)議分析、應(yīng)用性能分析和網(wǎng)絡(luò)安全保障等各個(gè)領(lǐng)域。sniffer程序是一種利用以太網(wǎng)的特性把網(wǎng)絡(luò)適配卡(nic,一般為以太網(wǎng)卡)置為雜亂(promiscuous)模式狀態(tài)的工具,一旦網(wǎng)卡設(shè)置為這種模式,它就能接收傳輸在網(wǎng)絡(luò)上的每一個(gè)信息包。普通的情況下,網(wǎng)卡只接收和自己的地址有關(guān)的信息包,即傳輸?shù)奖镜刂鳈C(jī)的信息包。要使sniffer能接收并處理這種方式的信息,系統(tǒng)需要支持bpf,linux下需要支持socket一packet。但一般情況下,網(wǎng)絡(luò)硬件和tcp/ip堆棧不支持接收或者發(fā)送與本地計(jì)算機(jī)無(wú)關(guān)的數(shù)據(jù)包,所以,為了繞過(guò)標(biāo)準(zhǔn)的tcp/ip堆

14、棧,網(wǎng)卡就必須設(shè)置為我們剛開(kāi)始講的混雜模式。一般情況下,要激活這種方式,內(nèi)核必須支持這種偽設(shè)備bp filter,而且需要root權(quán)限來(lái)運(yùn)行這種程序,所以sniffer需要root身份安裝,如果只是以本地用戶的身份進(jìn)入了系統(tǒng),那么不可能嗅探到root的密碼,因此不能運(yùn)行sniffer。sniffer分為軟件和硬件兩種,軟件的sniffer有 sniffer pro、network monitor、packet bone等,其優(yōu)點(diǎn)是易于安裝部署,易于學(xué)習(xí)使用,同時(shí)也易于交流;缺點(diǎn)是無(wú)法抓取網(wǎng)絡(luò)上所有的傳輸,某些情況下也就無(wú)法真正了解網(wǎng)絡(luò)的故障和運(yùn)行情況。硬件的sniffer通常稱(chēng)為協(xié)議分析儀,一

15、般都是商業(yè)性的,價(jià)格也比較昂貴,但會(huì)具備支持各類(lèi)擴(kuò)展的鏈路捕獲能力以及高性能的數(shù)據(jù)實(shí)時(shí)捕獲分析的功能。基于以太網(wǎng)絡(luò)嗅探的sniffer只能抓取一個(gè)物理網(wǎng)段內(nèi)的包,就是說(shuō),監(jiān)聽(tīng)的目標(biāo)中間不能有路由或其他屏蔽廣播包的設(shè)備,這一點(diǎn)很重要。所以,對(duì)一般撥號(hào)上網(wǎng)的用戶來(lái)說(shuō),是不可能利用sniffer來(lái)竊聽(tīng)到其他人的通信內(nèi)容的。sniffer與其他網(wǎng)絡(luò)協(xié)議分析儀最大的差別在于它的人工智能專(zhuān)家系統(tǒng)。簡(jiǎn)單地說(shuō),sniffer能自動(dòng)實(shí)時(shí)監(jiān)視網(wǎng)絡(luò),捕捉數(shù)據(jù),識(shí)別網(wǎng)絡(luò)配置,自動(dòng)發(fā)現(xiàn)網(wǎng)絡(luò)故障并進(jìn)行告警,它能指出: 網(wǎng)絡(luò)故障發(fā)生的位置,以及出現(xiàn)在osi第幾層。 網(wǎng)絡(luò)故障的性質(zhì),產(chǎn)生故障的可能的原因以及為解決故障建議采取

16、的行動(dòng)。 sniffer 還提供了專(zhuān)家配制功能,用戶可以自已設(shè)定專(zhuān)家系統(tǒng)判斷故障發(fā)生的觸發(fā)條件。sniffer可以在全部七層osi協(xié)議上進(jìn)行解碼,目前沒(méi)有任何一個(gè)系統(tǒng)可以做到對(duì)協(xié)議有如此透徹的分析;它采用分層方式,從最低層開(kāi)始,一直到第七層,甚至對(duì)oracle數(shù)據(jù)庫(kù)、sybase數(shù)據(jù)庫(kù)都可以進(jìn)行協(xié)議分析;每一層用不同的顏色加以區(qū)別。sniffer對(duì)每一層都提供了summary、detail、hex等幾種解碼窗口。在同一時(shí)間,最多可以打開(kāi)六個(gè)觀察窗口。sniffer還可以進(jìn)行強(qiáng)制解碼功能,如果網(wǎng)絡(luò)上運(yùn)行的是非標(biāo)準(zhǔn)協(xié)議,可以使用一個(gè)現(xiàn)有標(biāo)準(zhǔn)協(xié)議樣板去嘗試解釋捕獲的數(shù)據(jù)。 sniffer提供了在線實(shí)

17、時(shí)解碼分析和在線捕捉,將捕捉的數(shù)據(jù)存盤(pán)后進(jìn)行解碼分析二種功能。2研究的目的及內(nèi)容21研究的目的及內(nèi)容綜合所學(xué)知識(shí),使知識(shí)系統(tǒng)化與實(shí)用化。研究網(wǎng)絡(luò)抓包功能,可以對(duì)網(wǎng)絡(luò)中大量數(shù)據(jù)包抓取,從而方便使用者對(duì)網(wǎng)絡(luò)中用戶的一些信息進(jìn)行分析,掌握這些原理,我們可以運(yùn)用網(wǎng)絡(luò)抓包工具來(lái)進(jìn)行網(wǎng)絡(luò)故障檢測(cè)、網(wǎng)絡(luò)狀況監(jiān)聽(tīng),加強(qiáng)信息的安全防護(hù),預(yù)防黑客的攻擊等。本系統(tǒng)需要實(shí)現(xiàn)的共更能模塊有數(shù)據(jù)包捕獲模塊、數(shù)據(jù)包信息顯示模塊、數(shù)據(jù)包解析及存儲(chǔ)模塊、數(shù)據(jù)包分析模塊。當(dāng)一個(gè)黑客成功地攻陷了一臺(tái)主機(jī),并拿到了root權(quán)限,而且還想利用這臺(tái)主機(jī)去攻擊同一(物理)網(wǎng)段上的其他主機(jī)時(shí),他就會(huì)在這臺(tái)主機(jī)上安裝嗅探軟件,對(duì)以太網(wǎng)設(shè)備上傳

18、送的數(shù)據(jù)包進(jìn)行偵聽(tīng),從而發(fā)現(xiàn)感興趣的包。如果發(fā)現(xiàn)符合條件的包,就把它存到一個(gè)log文件中去。通常設(shè)置的這些條件是包含字“username”或“password”的包,這樣的包里面通常有黑客感興趣的密碼之類(lèi)的東西。一旦黑客截獲得了某臺(tái)主機(jī)的密碼,他就會(huì)立刻進(jìn)入這臺(tái)主機(jī)。如果嗅探器運(yùn)行在路由器上或有路由功能的主機(jī)上,就能對(duì)大量的數(shù)據(jù)進(jìn)行監(jiān)控,因?yàn)樗羞M(jìn)出網(wǎng)絡(luò)的數(shù)據(jù)包都要經(jīng)過(guò)路由器。嗅探器屬于第m層次的攻擊。就是說(shuō),只有在攻擊者已經(jīng)進(jìn)入了目標(biāo)系統(tǒng)的情況下,才能使用嗅探這種攻擊手段,以便得到更多的信息。嗅探器除了能得到口令或用戶名外,還能得到更多的其他信息,比如一個(gè)重要的信息、在網(wǎng)上傳送的金融信息等等

19、。嗅探器幾乎能得到任何在以太網(wǎng)上傳送的數(shù)據(jù)包。因此,設(shè)計(jì)本系統(tǒng)的就是為了達(dá)到基本的維護(hù)網(wǎng)絡(luò)安全的作用,對(duì)網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)進(jìn)行捕獲,然后從中得到所有的網(wǎng)絡(luò)數(shù)據(jù)包,并對(duì)其進(jìn)行簡(jiǎn)單的分析操作。在網(wǎng)絡(luò)入侵取證系統(tǒng)中,對(duì)網(wǎng)絡(luò)上傳送的數(shù)據(jù)包進(jìn)行有效的監(jiān)聽(tīng)即捕獲包是目前取證的關(guān)鍵技術(shù),只有進(jìn)行高效的數(shù)據(jù)包捕獲,網(wǎng)絡(luò)管理員才能對(duì)所捕獲的數(shù)據(jù)進(jìn)行一系列的分析,從而進(jìn)行可靠的網(wǎng)絡(luò)安全管理。網(wǎng)絡(luò)的安全性和高可用性是建立在有效的網(wǎng)絡(luò)管理基礎(chǔ)之上的,網(wǎng)絡(luò)管理包括配置管理、故障管理、性能管理、安全管理和計(jì)費(fèi)管理五大部分。對(duì)于企業(yè)計(jì)算機(jī)網(wǎng)絡(luò)來(lái)說(shuō),網(wǎng)絡(luò)故障管理主要側(cè)重于實(shí)時(shí)的監(jiān)控,而網(wǎng)絡(luò)性能管理更看中歷史分析。22課題研究的

20、相關(guān)技術(shù)互聯(lián)網(wǎng)技術(shù)互聯(lián)網(wǎng)技術(shù)不僅僅是物理上的連接,還包括邏輯上的連接,互聯(lián)網(wǎng)使多個(gè)網(wǎng)絡(luò)形成一個(gè)有機(jī)整體,實(shí)現(xiàn)跨網(wǎng)絡(luò)的互操作。網(wǎng)絡(luò)互聯(lián)的根本問(wèn)題是解決網(wǎng)絡(luò)技術(shù)和應(yīng)用所帶來(lái)的網(wǎng)絡(luò)異構(gòu)性問(wèn)題。網(wǎng)絡(luò)互連技術(shù)必須保證以下3點(diǎn):使不同硬件結(jié)構(gòu)計(jì)算機(jī)能相互通信適用于多種不同的操作系統(tǒng)能使多種分組交換網(wǎng)絡(luò)硬件網(wǎng)絡(luò)的功能主要由各層的協(xié)議來(lái)完成,tcp/ip協(xié)議時(shí)當(dāng)前因特網(wǎng)協(xié)議族的總稱(chēng),tcp/ip協(xié)議族龐大,成為重要的協(xié)議ip地址ip地址是互聯(lián)網(wǎng)中重要部分,它能將不同的物理網(wǎng)絡(luò)地址統(tǒng)一到具有全球的ip地址。目前ip地址還是用ipv4版本,分為5類(lèi),各類(lèi)都有自己的范圍。但是嚴(yán)格按照分類(lèi)來(lái)分配ip地址會(huì)浪費(fèi)很大的地

21、址空間,因此用到了無(wú)類(lèi)地址劃分,用子網(wǎng)掩碼來(lái)區(qū)別網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)。因特網(wǎng)的ip協(xié)議提供了整個(gè)因特網(wǎng)通用的地址格式,并在統(tǒng)一管理下進(jìn)行ip地址分配,確保一個(gè)地址對(duì)應(yīng)一臺(tái)主機(jī)或路由器,這樣對(duì)上層而言物理地址的差異性就被屏蔽了,因此當(dāng)一臺(tái)主機(jī)從一個(gè)網(wǎng)絡(luò)移動(dòng)到另一個(gè)網(wǎng)絡(luò)的時(shí)候需要改變這臺(tái)主機(jī)的ip地址。以下是ip數(shù)據(jù)報(bào)格式示意圖:圖2.1上圖個(gè)字段含義如下: 版本:當(dāng)前ip協(xié)議的版本號(hào),本論文采用的版本號(hào)為4;首部長(zhǎng)度:以32bit為單位的包頭長(zhǎng)度;服務(wù)類(lèi)型:規(guī)定對(duì)本數(shù)據(jù)報(bào)的處理方式,比如優(yōu)先權(quán)等;總長(zhǎng):以byte為單位的整個(gè)ip數(shù)據(jù)報(bào)長(zhǎng)度;標(biāo)識(shí):信源主機(jī)賦予每個(gè)ip數(shù)據(jù)報(bào)的唯一標(biāo)識(shí)符號(hào),用于控制分片及

22、其重組;標(biāo)志和片偏移:同樣用于控制分片及其重組;生存時(shí)間:設(shè)置本數(shù)據(jù)報(bào)的最大生存時(shí)間,以秒為單位;協(xié)議:表示創(chuàng)建本ip數(shù)據(jù)報(bào)數(shù)據(jù)區(qū)數(shù)據(jù)的高層協(xié)議的類(lèi)型,如tcp,udp等;頭標(biāo)校驗(yàn)和:用于保證頭標(biāo)數(shù)據(jù)的完整性;源ip地址和目的ip地址:分別指發(fā)送本數(shù)據(jù)報(bào)的主機(jī)ip地址和接受本數(shù)據(jù)報(bào)的主機(jī)的ip地址;選項(xiàng):用于控制和測(cè)試,是ip數(shù)據(jù)報(bào)中可選的部分,包含“源路徑”、“路徑記錄”、“時(shí)間戳”等幾種類(lèi)型。以下是tcp/ip 網(wǎng)絡(luò)體系結(jié)構(gòu)與上述各協(xié)議之間的關(guān)系模型。 圖2.2應(yīng)用層的大多數(shù)應(yīng)用程序通過(guò)tcp、udp來(lái)訪問(wèn)網(wǎng)絡(luò)層,或者通過(guò)icmp來(lái)使用網(wǎng)絡(luò)層,如ping、trace route等也可以使用

23、ip直接訪問(wèn)網(wǎng)絡(luò)層。傳輸層中的tcp、udp為應(yīng)用層提供可靠的或不可靠網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)傳輸服務(wù)。網(wǎng)絡(luò)層的icmp是ip協(xié)議的附屬協(xié)議,ip協(xié)議用它與路由器之間交換錯(cuò)誤報(bào)文或其它控制信息。網(wǎng)絡(luò)接口層的arp、rarp是以太網(wǎng)和令牌環(huán)使用的特殊協(xié)議,用來(lái)轉(zhuǎn)換ip層和網(wǎng)絡(luò)接口層使用的地址。3。需求31功能需求本軟件的設(shè)計(jì)就是為了達(dá)到基本的維護(hù)網(wǎng)絡(luò)安全的作用,對(duì)網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)進(jìn)行捕獲,然后從中得到所有的網(wǎng)絡(luò)數(shù)據(jù)包,并對(duì)其進(jìn)行簡(jiǎn)單的分析操作。在網(wǎng)絡(luò)入侵取證系統(tǒng)中,對(duì)網(wǎng)絡(luò)上傳送的數(shù)據(jù)包進(jìn)行有效的監(jiān)聽(tīng)即捕獲包是目前取證的關(guān)鍵技術(shù),只有進(jìn)行高效的數(shù)據(jù)包捕獲,網(wǎng)絡(luò)管理員才能對(duì)所捕獲的數(shù)據(jù)進(jìn)行一系列的分析,從而進(jìn)

24、行可靠的網(wǎng)絡(luò)安全管理(1)對(duì)網(wǎng)絡(luò)中的數(shù)據(jù)包能及時(shí)抓捕。(2)對(duì)抓捕到的數(shù)據(jù)包進(jìn)行分析,能辨別出包的類(lèi)型、大小、包的源地址、協(xié)議類(lèi)型等。(3)向用戶顯示分析的結(jié)果,并對(duì)數(shù)據(jù)包進(jìn)行簡(jiǎn)單解釋。(4)用戶可操作性,用戶能根據(jù)自己的設(shè)置進(jìn)行控制進(jìn)行抓包、何時(shí)抓包、抓何種類(lèi)型的包、何時(shí)停止等。(5)可對(duì)比性,可以把抓到的數(shù)據(jù)包和數(shù)據(jù)庫(kù)內(nèi)的特征進(jìn)行對(duì)比,以便能分析斷數(shù)據(jù)包。有于水平有限,不可能實(shí)現(xiàn)像sniffer或者影音神探那樣復(fù)雜的設(shè)置和分析,所以我們只對(duì)抓取到的本機(jī)在網(wǎng)絡(luò)中的通信數(shù)據(jù)(如協(xié)議類(lèi)型,源、目的地址和端口、數(shù)據(jù)包的大小等)加以分析,實(shí)現(xiàn)一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)嗅探器。一個(gè)窗體顯示主頁(yè)面,另一個(gè)頁(yè)面顯示詳

25、細(xì)的包信息。而像sniffer的復(fù)雜功能也不能全部實(shí)現(xiàn),而是實(shí)現(xiàn)了部分功能和簡(jiǎn)單分析,本系統(tǒng)未完善之處還有待解決。32性能需求由于本設(shè)計(jì)是安裝在個(gè)人電腦上,所以要求用戶界面簡(jiǎn)潔,友好,方便使用和操作。網(wǎng)絡(luò)上數(shù)據(jù)包的捕獲是入侵檢測(cè)系統(tǒng)的基礎(chǔ),關(guān)鍵是要保證高速的抓包和低的丟包率。一方面,網(wǎng)絡(luò)檢測(cè)部分的數(shù)據(jù)源是網(wǎng)絡(luò)上的數(shù)據(jù)包,需要經(jīng)過(guò)捕獲后方可以提交給分析系統(tǒng);另一方面,捕獲數(shù)據(jù)包效率的高低直接影響著網(wǎng)絡(luò)探測(cè)部分的性能的好壞,如果發(fā)生丟包現(xiàn)象,則有可能丟掉的包就是攻擊包。在保證高速的抓包和低的丟包率的同時(shí),要還要求程序能有較強(qiáng)的穩(wěn)定性。一款好的信息過(guò)濾軟件,都是將在一個(gè)長(zhǎng)時(shí)間工作的環(huán)境中運(yùn)行。如果不

26、能保證較強(qiáng)的穩(wěn)定性的話,那么軟件對(duì)信息過(guò)濾的效率和功能有很大的局限性,對(duì)數(shù)據(jù)信息過(guò)濾就是失敗的。那么這款軟件就不會(huì)具備同其他同類(lèi)似軟件的競(jìng)爭(zhēng)力,更不會(huì)有市場(chǎng),那么它就注定成為一款失敗的軟件。假如,當(dāng)用戶使用這款軟件時(shí),軟件占用了太多的系統(tǒng)資源而導(dǎo)致用戶對(duì)電腦的其他操作都很難進(jìn)行,那么,沒(méi)有人會(huì)用這款軟件。所以,該軟件還應(yīng)該具備一種特點(diǎn)就是:低的系統(tǒng)資源占用率。4網(wǎng)絡(luò)嗅探器原理網(wǎng)絡(luò)數(shù)據(jù)捕獲技術(shù)是獲取信息的關(guān)鍵技術(shù),它通過(guò)監(jiān)聽(tīng)技術(shù),過(guò)濾技術(shù)獲取原始數(shù)據(jù),根據(jù)tcp/ip分層理論進(jìn)行層層拆解,提取相關(guān)協(xié)議中的信息。本畢業(yè)設(shè)計(jì)主要通過(guò)使用sniffer開(kāi)發(fā)包,在java環(huán)境下編寫(xiě)出了一款簡(jiǎn)單的軟件對(duì)數(shù)

27、據(jù)包信息按tcp協(xié)議類(lèi)型、udp協(xié)議類(lèi)型、icmp、igmp、arp進(jìn)行分類(lèi)捕獲,捕獲出所需要的敏感信息,并且將捕獲出來(lái)的信息寫(xiě)入數(shù)據(jù)庫(kù)。4.1系統(tǒng)功能概述先描述一下信息在網(wǎng)絡(luò)上的傳輸、信息的特征類(lèi)型和任何被偷聽(tīng)的。網(wǎng)絡(luò)的一個(gè)特點(diǎn)就是數(shù)據(jù)總是在流動(dòng)中,從一處到另外一處,而互聯(lián)網(wǎng)是由錯(cuò)綜復(fù)雜的各種網(wǎng)絡(luò)交匯而成的,也就是說(shuō):當(dāng)你的數(shù)據(jù)從網(wǎng)絡(luò)的一臺(tái)電腦到另一臺(tái)電腦的時(shí)候,通常會(huì)經(jīng)過(guò)大量不同的網(wǎng)絡(luò)設(shè)備,(我們用tracert命令就可以看到這種路徑是如何進(jìn)行的)。如果傳輸過(guò)程中,有人看到了傳輸中的數(shù)據(jù),那么問(wèn)題就出現(xiàn)了這就好比給人發(fā)了一封郵件,在半路上被人拆開(kāi)偷看一樣,這樣說(shuō)或許還不是很可怕,那要是傳送

28、的數(shù)據(jù)是企業(yè)的機(jī)密文件那,或是用戶的信用卡帳號(hào)和密碼呢? 通過(guò)前面的敘述可以知道,這款軟件具有的功能,那就是:能夠分別捕獲局域網(wǎng)中的tcp協(xié)議類(lèi)型數(shù)據(jù),udp協(xié)議類(lèi)型數(shù)據(jù)和從某一特定的ip地址發(fā)送出來(lái)的tcp協(xié)議類(lèi)型數(shù)據(jù)和udp協(xié)議數(shù)據(jù)類(lèi)型。并且,將這些捕獲出來(lái)的數(shù)據(jù)包的基本信息存入到數(shù)據(jù)庫(kù)中,提供給網(wǎng)絡(luò)管理員使用和進(jìn)一步的分析。嗅探偵聽(tīng)主要有兩種途徑,一種是將偵聽(tīng)工具軟件放到網(wǎng)絡(luò)連接的設(shè)備或者放到可以控制網(wǎng)絡(luò)連接設(shè)備的電腦上,(比如網(wǎng)關(guān)服務(wù)器,路由器)當(dāng)然要實(shí)現(xiàn)這樣的效果可能也需要通過(guò)其他黑客技術(shù)來(lái)實(shí)現(xiàn):比如通過(guò)木馬方式將嗅探器發(fā)給某個(gè)網(wǎng)絡(luò)管理員,使其不自覺(jué)的為攻擊者進(jìn)行了安裝。另外一種是針

29、對(duì)不安全的局域網(wǎng)(采用交換hub實(shí)現(xiàn)),放到個(gè)人電腦上就可以實(shí)現(xiàn)對(duì)整個(gè)局域網(wǎng)的偵聽(tīng),這里的原理是這樣的:共享hub獲得一個(gè)子網(wǎng)內(nèi)需要接收的數(shù)據(jù)時(shí),并不是直接發(fā)送到指定主機(jī),而是通過(guò)廣播方式發(fā)送到每個(gè)電腦,對(duì)于處于接受者地位的電腦就會(huì)處理該數(shù)據(jù),而其他非接受者的電腦就會(huì)過(guò)濾這些數(shù)據(jù),這些操作與電腦操作者無(wú)關(guān),是系統(tǒng)自動(dòng)完成的,但是電腦操作者如果有意的話,他是可以將那些原本不屬于他的數(shù)據(jù)打開(kāi)這就是安全隱患。以太網(wǎng)的數(shù)據(jù)傳輸是基于“共享”原理的:所有的同一本地網(wǎng)范圍內(nèi)的計(jì)算機(jī)共同接收到相同的數(shù)據(jù)包。這意味著計(jì)算機(jī)直接的通訊都是透明可見(jiàn)的。正是因?yàn)檫@樣的原因,以太網(wǎng)卡都構(gòu)造了硬件的“過(guò)濾器”這個(gè)過(guò)濾器

30、將忽略掉一切和自己無(wú)關(guān)的網(wǎng)絡(luò)信息。事實(shí)上是忽略掉了與自身mac地址不符合的信息。 嗅探程序正是利用了這個(gè)特點(diǎn),它主動(dòng)的關(guān)閉了這個(gè)嗅探器,也就是前面提到的設(shè)置網(wǎng)卡“混雜模式”。因此,嗅探程序就能夠接收到整個(gè)以太網(wǎng)內(nèi)的網(wǎng)絡(luò)數(shù)據(jù)了信息了。由于大量的計(jì)算機(jī)在以太網(wǎng)內(nèi)“共享“數(shù)據(jù)流,所以必須有一個(gè)統(tǒng)一的辦法用來(lái)區(qū)分傳遞給不同計(jì)算機(jī)的數(shù)據(jù)流。這種問(wèn)題不會(huì)發(fā)生在撥號(hào)用戶身上,因?yàn)橛?jì)算機(jī)會(huì)假定一切數(shù)據(jù)都由用戶動(dòng)給modem然后通過(guò)電話線傳送出去??墒牵?dāng)發(fā)送數(shù)據(jù)到以太網(wǎng)上的時(shí)候,你必須弄清楚,哪臺(tái)計(jì)算機(jī)是你發(fā)送數(shù)據(jù)的對(duì)象。的確,現(xiàn)在有大量的雙向通訊程序出現(xiàn)了,看上去,他們好像只會(huì)在兩臺(tái)機(jī)器內(nèi)交換信息,可以太網(wǎng)

31、的信息是共享的,其他用戶,其實(shí)一樣接收到了你發(fā)送的數(shù)據(jù),只不過(guò)是被過(guò)濾器給忽略掉了。 mac地址是由一組6個(gè)16進(jìn)制數(shù)組成的,它存在于每一塊以太網(wǎng)卡中。如果對(duì)網(wǎng)絡(luò)結(jié)構(gòu)不太熟悉,建議參考一下osi 7-layer model,這將有助于理解后面的東西以太網(wǎng)所使用的協(xié)議主要是tcp/ip,并且tcp/ip也用于其他的網(wǎng)絡(luò)模型(比如撥號(hào)用戶,他們并不是處于一個(gè)以太網(wǎng)環(huán)境中)。舉例一下,很多的小團(tuán)體計(jì)算機(jī)用戶都為實(shí)現(xiàn)文件和打印共享,安裝了“netbeui” 因?yàn)樗皇腔趖cp/ip協(xié)議的,所以來(lái)自于網(wǎng)絡(luò)的黑客一樣無(wú)法得知他們的設(shè)備情況。基于raw協(xié)議,傳輸和接收都在以太網(wǎng)里起著支配作用。你不能直接發(fā)

32、送一個(gè)raw數(shù)據(jù)給以太網(wǎng),用戶必須先做一些事情,讓以太網(wǎng)能夠理解用戶的意思。這有點(diǎn)類(lèi)似于郵寄信件的方法,不可能直接把一封信投遞出去,而是必須先裝信封,寫(xiě)地址,貼郵票,網(wǎng)絡(luò)上的傳輸也是這樣的。 下面給出一個(gè)簡(jiǎn)單的例子,助于理解系統(tǒng)的原理:假如有usera和userb,各自的ip如下usera ip 地址: 10.0.0.23 userb ip 地址: 192.168.100.54 現(xiàn)在知道usera要于userb進(jìn)行計(jì)算機(jī)通訊,usera需要為10.0.0.23到192.168.100.54的通訊建立一個(gè)ip包 。這個(gè)ip包在網(wǎng)絡(luò)上傳輸,它必須能夠穿透路由器。因此,usera必須首先提交這個(gè)包給

33、路由器。由每個(gè)路由器考查目地ip地址然后決定傳送路徑。usera 所知道的只是本地與路由的連接,和userb的ip地址。usera并不清楚網(wǎng)絡(luò)的結(jié)構(gòu)情況和路由走向。usera必須告訴路由預(yù)備發(fā)送的數(shù)據(jù)包的情況,以太網(wǎng)數(shù)據(jù)傳輸結(jié)構(gòu)大概是這樣的: 圖4.1理解一下這個(gè)結(jié)構(gòu),usera的計(jì)算機(jī)建立了一個(gè)包假設(shè)它由100個(gè)字節(jié)的長(zhǎng)度(假設(shè)20 個(gè)字節(jié)是ip信息,20個(gè)字節(jié)是tcp信息,還有60個(gè)字節(jié)為傳送的數(shù)據(jù))?,F(xiàn)在把這個(gè)包發(fā)給以太網(wǎng),放14個(gè)字節(jié)在目地mac地址之前,源mac地址,還要置一個(gè)0x0800的標(biāo)記,他指示出了tcp/ip棧后的數(shù)據(jù)結(jié)構(gòu)。同時(shí),也附加了4個(gè)字節(jié)用于做crc校驗(yàn),crc校驗(yàn)

34、用來(lái)檢查傳輸數(shù)據(jù)的正確性?,F(xiàn)在發(fā)送數(shù)據(jù)到網(wǎng)絡(luò)。所有在網(wǎng)內(nèi)的計(jì)算機(jī)通過(guò)適配器都能夠發(fā)現(xiàn)這個(gè)數(shù)據(jù)片,其中也包括路由適配器,嗅探器和其他一些機(jī)器。通常,適配器都具有一塊芯片用來(lái)做結(jié)構(gòu)比較的,檢查結(jié)構(gòu)中的目地mac地址和自己的mac地址,如果不相同,則適配器會(huì)丟棄這個(gè)結(jié)構(gòu)。這個(gè)操作會(huì)由硬件來(lái)完成,所以,對(duì)于計(jì)算機(jī)內(nèi)的程序來(lái)說(shuō),整個(gè)過(guò)程時(shí)毫無(wú)察覺(jué)的。當(dāng)路由器的以太網(wǎng)適配器發(fā)現(xiàn)這個(gè)結(jié)構(gòu)后,它會(huì)讀取網(wǎng)絡(luò)信息,并且去掉前14個(gè)字節(jié),跟蹤4個(gè)字節(jié)。查找0x8000標(biāo)記,然后對(duì)這個(gè)結(jié)構(gòu)進(jìn)行處理(它將根據(jù)網(wǎng)絡(luò)狀況推測(cè)出下一個(gè)最快路由節(jié)點(diǎn),從而最快傳送數(shù)據(jù)到預(yù)定的目標(biāo)地址)。 設(shè)想,只有路由機(jī)器能夠檢查這個(gè)結(jié)構(gòu),并且

35、所有其他的機(jī)器都忽略這個(gè)結(jié)構(gòu),則嗅探器無(wú)論如何也無(wú)法檢測(cè)到這個(gè)結(jié)構(gòu)的。 以太網(wǎng)卡的mac地址是一組48比特的數(shù)字,這48比特分為兩個(gè)部分組成,前面的24比特用于表示以太網(wǎng)卡的寄主,后面的24比特是一組序列號(hào),是由寄主進(jìn)行支派的。這樣可以擔(dān)保沒(méi)有任何兩塊網(wǎng)卡的mac地址是相同的(當(dāng)然可以通過(guò)特殊的方法實(shí)現(xiàn))。如果出現(xiàn)相同的地址,將發(fā)生問(wèn)題,所有這一點(diǎn)是非常重要的。這24比特被稱(chēng)之為oui(organizationally unique identifier)??墒?,oui的真實(shí)長(zhǎng)度只有22比特,還有兩個(gè)比特用于其他:一個(gè)比特用來(lái)校驗(yàn)是否是廣播或者多播地址,另一個(gè)比特用來(lái)分配本地執(zhí)行地址(一些網(wǎng)絡(luò)

36、允許管理員針對(duì)具體情況再分配mac地址)。 舉個(gè)例子,你的mac地址在網(wǎng)絡(luò)中表示為 03 00 00 00 00 01 。第一個(gè)字節(jié)所包含的值二進(jìn)制表示方法為00000011。可以看到,最后兩個(gè)比特都被置為真值。他指定了一個(gè)多播模式,向所有的計(jì)算機(jī)進(jìn)行廣播,使用了“netbeui”協(xié)議(一般的,在windows計(jì)算機(jī)的網(wǎng)絡(luò)中,文件共享傳輸?shù)仁遣皇褂胻cp/ip協(xié)議的)。42功能模塊設(shè)計(jì)通過(guò)前面的敘述可以知道,這款軟件具有的功能,那就是:能夠分別捕獲局域網(wǎng)中的數(shù)據(jù)包。并且,將這些捕獲出來(lái)的數(shù)據(jù)包的基本信息存入到數(shù)據(jù)庫(kù)中,提供給網(wǎng)絡(luò)管理員使用和進(jìn)一步的分析。本系統(tǒng)流程圖如下圖: 圖4-2 本系統(tǒng)包

37、括四個(gè)基本模塊,分別是數(shù)據(jù)包捕獲模塊,數(shù)據(jù)分析模塊,數(shù)據(jù)包存儲(chǔ)模塊和數(shù)據(jù)包顯示模塊。其中數(shù)據(jù)包捕獲模塊的功能是:利用sniffer控件,通過(guò)網(wǎng)卡設(shè)備從網(wǎng)絡(luò)中捕獲數(shù)據(jù)包;數(shù)據(jù)分析模塊的功能是:主要實(shí)現(xiàn)數(shù)據(jù)的解析,從網(wǎng)絡(luò)適配器中捕獲到的數(shù)據(jù)的為原始數(shù)據(jù)(raw data),這些原始數(shù)據(jù)為二進(jìn)制格式,必須轉(zhuǎn)化為能比較好明白的格式,這就要求將這些原始數(shù)據(jù)能按照網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)木唧w格式來(lái)保存,主要為了能較好的讀懂相關(guān)的信息,以便使用者分析;數(shù)存儲(chǔ)模塊的功能是:經(jīng)過(guò)前兩個(gè)模塊處理后的數(shù)據(jù),現(xiàn)在已經(jīng)轉(zhuǎn)化成了對(duì)我們有用的信息了,而這些信息不可能一直讓他存放在內(nèi)存中,那么就需要在數(shù)據(jù)庫(kù)中建立相應(yīng)的表,把這些信息存

38、貯在這些數(shù)據(jù)庫(kù)表的相應(yīng)列名中,以使用者處理、使用。數(shù)據(jù)包顯示模塊的功能是:能讓使用者看到相關(guān)的數(shù)據(jù)包信息,顯示當(dāng)前程序的判斷結(jié)果,讓用戶能根據(jù)顯示的信息和特征信息對(duì)比,從而能判斷當(dāng)前網(wǎng)絡(luò)的性能。 421數(shù)據(jù)包捕獲模塊設(shè)計(jì) 數(shù)據(jù)包的抓捕模塊主要用sniffer開(kāi)發(fā)包實(shí)現(xiàn),模塊的設(shè)計(jì)思想遵循sniffer捕獲數(shù)據(jù)包的流程,流程分三步:查找設(shè)備,打開(kāi)設(shè)備和捕獲數(shù)據(jù)的函數(shù)。查找設(shè)備:查找網(wǎng)卡打開(kāi)設(shè)備:打開(kāi)網(wǎng)卡捕獲數(shù)據(jù)的函數(shù):編寫(xiě)程序時(shí)所用的函數(shù)。數(shù)據(jù)包捕獲原理:網(wǎng)絡(luò)數(shù)據(jù)捕獲技術(shù)是獲取信息的關(guān)鍵技術(shù),它通過(guò)監(jiān)聽(tīng)技術(shù),過(guò)濾技術(shù)獲取原始數(shù)據(jù),根據(jù)tcp/ip分層理論進(jìn)行層層拆解,提取相關(guān)協(xié)議中的信息其抓包流

39、程圖如下 圖4-2-1422數(shù)據(jù)包解析存儲(chǔ)模塊相關(guān)數(shù)據(jù)信息捕獲分析完畢后,接下來(lái)就是對(duì)數(shù)據(jù)的保存。當(dāng)存儲(chǔ)模塊從數(shù)據(jù)包抓捕模塊接到數(shù)據(jù)包時(shí),先會(huì)和數(shù)據(jù)庫(kù)的特征信息進(jìn)行對(duì)比,然后可以再次抓包和已對(duì)比的數(shù)據(jù)包進(jìn)行存儲(chǔ),等待其他模塊調(diào)用。數(shù)據(jù)庫(kù)中存儲(chǔ)了數(shù)據(jù)包的特征信息,通過(guò)對(duì)比和存儲(chǔ),使用戶知道接收到什么包以及接受到的數(shù)據(jù)包數(shù)量。數(shù)據(jù)包解析存儲(chǔ)模塊流程圖如下:圖4-2-2423數(shù)據(jù)包信息分析模塊設(shè)計(jì)數(shù)據(jù)分析模塊實(shí)現(xiàn)時(shí),本系統(tǒng)提取的數(shù)據(jù)包中主要的一些信息,如數(shù)據(jù)包中的ip地址,端口信息等。網(wǎng)絡(luò)中的數(shù)據(jù)包都有各自的大小、生存時(shí)間、端口信息等特征,通過(guò)對(duì)捕獲的數(shù)據(jù)包進(jìn)行解封可以知道各自屬于什么包、包的源地址

40、等。數(shù)據(jù)包信息分析模塊流程圖如下: 圖4-2-3424數(shù)據(jù)包信息顯示模塊設(shè)計(jì)數(shù)據(jù)包顯示模塊的功能是:主要實(shí)現(xiàn)數(shù)據(jù)的反饋信息,將這些數(shù)據(jù)的分析結(jié)果轉(zhuǎn)為能讓使用者比較好理解的格式,這就要求將這些原始數(shù)據(jù)能按照網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)木唧w格式來(lái)保存,主要為了能較好的讀懂相關(guān)的信息,以便使用者分析 圖4-2-45網(wǎng)絡(luò)嗅探器的設(shè)計(jì) 基于windowns form編程實(shí)現(xiàn)一個(gè)簡(jiǎn)單嗅探器的設(shè)計(jì)和實(shí)現(xiàn)。5.1測(cè)試環(huán)境在編寫(xiě)本軟件前,首先確定了使用java語(yǔ)言。本軟件必須首先安裝java編程環(huán)境中設(shè)置好相關(guān)配置。由于這是一個(gè)抓包程序,因此需要兩臺(tái)以上的pc機(jī)和一些網(wǎng)絡(luò)通訊設(shè)備,具體的實(shí)驗(yàn)環(huán)境:個(gè)人電腦2臺(tái)或2臺(tái)以上,交換

41、機(jī)一個(gè),網(wǎng)線若干,電腦通過(guò)交換機(jī)組成一個(gè)局域網(wǎng)環(huán)境。有于水平有限,不可能實(shí)現(xiàn)像sniffer或者影音神探那樣復(fù)雜的設(shè)置和分析,所以我們只對(duì)抓取到的本機(jī)在網(wǎng)絡(luò)中的通信數(shù)據(jù)(如協(xié)議類(lèi)型,源、目的地址和端口、數(shù)據(jù)包的大小等)加以分析,實(shí)現(xiàn)一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)嗅探器。一個(gè)窗體顯示主頁(yè)面,另一個(gè)頁(yè)面顯示詳細(xì)的包信息。詳細(xì)信息頁(yè)面,我們顯示一下信息:開(kāi)始時(shí)間:嗅探器抓取數(shù)據(jù)包的時(shí)間; 源端口:源目的ip地址+端口號(hào);目的端口:目的ip地址+端口號(hào);協(xié)議類(lèi)型:只分析一下類(lèi)型,gpg,icmp,idp,igmp,ip,nd,pup,tcp,udp,其他的不再分析;版本信息:協(xié)議的版本;生存時(shí)間:;報(bào)頭大?。簣?bào)文報(bào)首

42、部大?。粓?bào)文總長(zhǎng):整個(gè)數(shù)據(jù)報(bào)的大??;優(yōu)先級(jí)別:提供七個(gè)級(jí)別,分別是routine = 0,priority = 1,immediate = 2,flash = 3,flashoverride = 4,criticecp = 5,internetworkcontrol = 6,networkcontrol = 7;延遲:normaldelay = 0、 lowdelay = 1;吞吐量:normalthroughput = 0,highthroughput = 1; 可靠性:normalreliability = 0,highreliability = 1;項(xiàng)目實(shí)施(1)java第三方winfo

43、rm開(kāi)發(fā)工具中新建項(xiàng)目windows應(yīng)用程序mysinffer。 (2)添加一個(gè)窗體文件和一個(gè)類(lèi)文件,分別命名form1.cs、assemblyinfo.cs.cs實(shí)現(xiàn)詳細(xì)信息頁(yè)面。(3)編碼,詳細(xì)的代碼如源程序。當(dāng)使用系統(tǒng)類(lèi)提供的接口取到數(shù)據(jù)包的bite流時(shí),對(duì)流的初始化處理如下:public packet(byte raw, datetime time) if (raw = null)throw new argumentnullexception();if (raw.length 4; m_headerlength = (raw0 & 0x0f) * 4;if (raw0 & 0x0f)

44、5);m_delay = (delay)(raw1 & 0x10) 4);m_throughput = (throughput)(raw1 & 0x8) 3);m_reliability = (reliability)(raw1 & 0x4) 2);m_totallength = raw2 * 256 + raw3;if (m_totallength != raw.length)throw new argumentexception(); / 無(wú)效的數(shù)據(jù)包大小m_identification = raw4 * 256 + raw5;m_timetolive = raw8;if (enum.isdefined(typeof(protocol), (int)raw9)m_protocol = (protocol)raw9;elsem_protocol = protocol.other;m_checksum = new byte2;m_checksum0 = raw11;m_checksum1 = raw10;m_sourceaddress = new ipaddress(bitconverter.touint32(raw, 12);m_destinationaddress =

溫馨提示

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