利用WinPcap技術(shù)捕獲數(shù)據(jù)包_第1頁
利用WinPcap技術(shù)捕獲數(shù)據(jù)包_第2頁
利用WinPcap技術(shù)捕獲數(shù)據(jù)包_第3頁
利用WinPcap技術(shù)捕獲數(shù)據(jù)包_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、利用WinPcap技術(shù)捕獲數(shù)據(jù)包前言 隨著網(wǎng)絡(luò)入侵的不斷發(fā)展,網(wǎng)絡(luò)安全變得越來越重要,于是網(wǎng)絡(luò)入侵取證 系統(tǒng)的研究也變得日益重要。在網(wǎng)絡(luò)入侵取證系統(tǒng)中,對網(wǎng)絡(luò)上傳送的數(shù)據(jù)包進(jìn) 行有效的監(jiān)聽即捕獲包是目前取證的關(guān)鍵技術(shù),只有進(jìn)行高效的數(shù)據(jù)包捕獲,網(wǎng)絡(luò)管理員才能對所捕獲的數(shù)據(jù)進(jìn)行一系列的分前言隨著網(wǎng)絡(luò)入侵的不斷發(fā)展,網(wǎng)絡(luò)安全變得越來越重要,于是網(wǎng)絡(luò)入侵取證系 統(tǒng)的研究也變得日益重要。在網(wǎng)絡(luò)入侵取證系統(tǒng)中,對網(wǎng)絡(luò)上傳送的數(shù)據(jù)包進(jìn)行 有效的監(jiān)聽即捕獲包是目前取證的關(guān)鍵技術(shù),只有進(jìn)行高效的數(shù)據(jù)包捕獲,網(wǎng)絡(luò)管理員才能對所捕獲的數(shù)據(jù)進(jìn)行一系列的分析,從而進(jìn)行可靠的網(wǎng)絡(luò)安全管理。1 winpcap 簡介Win

2、Pcap是由伯克利分組捕獲庫派生而來的分組捕獲庫,它是在 Windows操作平臺上來實現(xiàn)對底層包的截取過濾。WinPcap為用戶級的數(shù)據(jù)包提供了 Windows下的一個平臺 。WinPcap是BPF模型和Libpcap函數(shù)庫 在Windows平臺下網(wǎng)絡(luò)數(shù)據(jù)包捕獲和網(wǎng)絡(luò)狀態(tài)分析的一種體系結(jié)構(gòu),這個體系 結(jié)構(gòu)是由一個核心的包過濾驅(qū)動程序,一個底層的動態(tài)連接庫Packet.dll和一個 高層的獨(dú)立于系統(tǒng)的函數(shù)庫Libpcap組成。底層的包捕獲驅(qū)動程序?qū)嶋H為一個協(xié) 議網(wǎng)絡(luò)驅(qū)動程序,通過對NDIS中函數(shù)的調(diào)用為 Win95、Win98、WinNT、和Win2000提供一類似于UNIX系統(tǒng)下Berkele

3、y Packet Filter的捕獲和發(fā)送原 始數(shù)據(jù)包的能力。Packet.dll是對這個BPF驅(qū)動程序進(jìn)行訪問的API接口,同時 它有一套符合Libpcap接口(UNIX下的捕獲函數(shù)庫)的函數(shù)庫。 WinPcap的結(jié) 構(gòu)圖如圖1。WinPcap包括三個部分:第一個模塊 NPF(Netgroup Packet Filter),是一個 虛擬設(shè)備驅(qū)動程序文件。它的功能是過濾數(shù)據(jù)包,并把這些數(shù)據(jù)包原封不動地傳 給用戶態(tài)模塊,這個過程中包括了一些操作系統(tǒng)特有的代碼。第二個模塊 packet.dll為win32平臺提供了一個公共的接口。不同版本的 Windows系統(tǒng)都有 自己的內(nèi)核模塊和用戶層模塊。Pa

4、cket.dll用于解決這些不同。調(diào)用 Packet.dll的程序可以運(yùn)行在不同版本的Windows平臺上,而無需重新編譯。第三個模塊Wpcap.dll是不依賴于操作系統(tǒng)的。它提供了更加高層、抽象的函數(shù)。packet.dll 和 Wpcap.dll : packet.dll 直接映射了內(nèi)核的調(diào)用。Wpcap.dll 提供了更加友好、功能更加強(qiáng)大的函數(shù)調(diào)用。WinPcap的優(yōu)勢提供了一套標(biāo)準(zhǔn)的抓 包接口,與libpcap兼容,可使得原來許多UNIX平臺下的網(wǎng)絡(luò)分析工具快速移 植過來便于開發(fā)各種網(wǎng)絡(luò)分析工具,充分考慮了各種性能和效率的優(yōu)化,包括對 于NPF內(nèi)核層次上的過濾器支持,支持內(nèi)核態(tài)的統(tǒng)計模

5、式,提供了發(fā)送數(shù)據(jù)包 的能力。Kam川MG Driver (ND S 3.0 or ntgherj口落及間另2、網(wǎng)絡(luò)數(shù)據(jù)包捕獲的原理以太網(wǎng)(Ethernet)具有共享介質(zhì)的特征,信息是以明文的形式在網(wǎng)絡(luò)上傳 輸,當(dāng)網(wǎng)絡(luò)適配器設(shè)置為監(jiān)聽模式(混雜模式,Promiscuous)時,由于采用以太網(wǎng)廣播信道爭用的方式,使得監(jiān)聽系統(tǒng)與正常通信的網(wǎng)絡(luò)能夠并聯(lián)連接,并可以捕獲任何一個在同一沖突域上傳輸?shù)臄?shù)據(jù)包。IEEE802.3標(biāo)準(zhǔn)的以太網(wǎng)采用的 是持續(xù)CSMA的方式,正是由于以太網(wǎng)采用這種廣播信道爭用的方式,使得各 個站點可以獲得其他站點發(fā)送的數(shù)據(jù)。運(yùn)用這一原理使信息捕獲系統(tǒng)能夠攔截的 我們所要的信息,這

6、是捕獲數(shù)據(jù)包的物理基礎(chǔ)。以太網(wǎng)是一種總線型的網(wǎng)絡(luò),從邏輯上來看是由一條總線和多個連接在總線上的 站點所組成各個站點采用上面提到的CSMA/CD協(xié)議進(jìn)行信道的爭用和共享。每個站點(這里特指計算機(jī)通過的接口卡)網(wǎng)卡來實現(xiàn)這種功能。網(wǎng)卡主要的工作是完成對于總線當(dāng)前狀態(tài)的探測,確定是否進(jìn)行數(shù)據(jù)的傳送,判斷每個物理數(shù) 據(jù)幀目的地是否為本站地址,如果不匹配,則說明不是發(fā)送到本站的而將它丟棄。 如果是的話,接收該數(shù)據(jù)幀,進(jìn)行物理數(shù)據(jù)幀的CRC校驗,然后將數(shù)據(jù)幀提交給LLC子層。網(wǎng)卡具有如下的幾種工作模式:1)廣播模式(Broad Cast Model ):它的物理地址(MAC)地址是0Xffffff的幀 為

7、廣播幀,工作在廣播模式的網(wǎng)卡接收廣播幀。2)多播傳送(MultiCast Model ):多播傳送地址作為目的物理地址的幀可以被 組內(nèi)的其它主機(jī)同時接收,而組外主機(jī)卻接收不到。但是,如果將網(wǎng)卡設(shè)置為多 播傳送模式,它可以接收所有的多播傳送幀,而不論它是不是組內(nèi)成員。3)直接模式(Direct Model):工作在直接模式下的網(wǎng)卡只接收目地址是自己Mac地址的幀。4)混雜模式(Promiscuous Model):工作在混雜模式下的網(wǎng)卡接收所有的流過 網(wǎng)卡的幀,信包捕獲程序就是在這種模式下運(yùn)行的。網(wǎng)卡的缺省工作模式包含廣播模式和直接模式,即它只接收廣播幀和發(fā)給自己的幀。如果采用混雜模式,一個站點

8、的網(wǎng)卡將接受同一網(wǎng)絡(luò)內(nèi)所有站點所發(fā)送的數(shù) 據(jù)包這樣就可以到達(dá)對于網(wǎng)絡(luò)信息監(jiān)視捕獲的目的。3、在windows情況下捕獲數(shù)據(jù)包的結(jié)構(gòu)網(wǎng)絡(luò)應(yīng)用程序7 用戶態(tài)數(shù)據(jù)包數(shù)據(jù)包數(shù)據(jù)包圖2捕獲數(shù)據(jù)包的結(jié)構(gòu)圖Wndows下捕獲數(shù)據(jù)包的結(jié)構(gòu)如圖2,其中NDIS及其特點是:NDIS(Network Driver Interface Specification)是 Microsoft 和 3Com 公司 聯(lián)合制定的網(wǎng)絡(luò)驅(qū)動規(guī)范,并提供了大量的操作函數(shù)。它為上層的協(xié)議驅(qū)動提供 服務(wù),屏蔽了下層各種網(wǎng)卡的差別。NDIS向上支持多種網(wǎng)絡(luò)協(xié)議,比如TCP/IP、 NWLink IPX/SPX、NETBEUI等,向下支持不同

9、廠家生產(chǎn)的多種網(wǎng)卡。NDIS還支持多種工作模式,支持多處理器,提供一個完備的NDIS庫(Library)。但庫中所提供的各個函數(shù)都是工作在核心模式下的,用戶不宜直接操作,這就需要尋 找另外的接口。NDIS驅(qū)動程序的結(jié)構(gòu)如圖3。4、利用winpcap進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)包的捕獲和過濾的設(shè)計步驟 1)打開網(wǎng)卡,并設(shè)為混雜模式。2)回調(diào)函數(shù)Network Tap在得到監(jiān)聽命令后,從網(wǎng)絡(luò)設(shè)備驅(qū)動程序處收集數(shù) 據(jù)包把監(jiān)聽到的數(shù)據(jù)包負(fù)責(zé)傳送給過濾程序。3)當(dāng)Packet filter監(jiān)聽到有數(shù)據(jù)包到達(dá)時,NDIS中間驅(qū)動程序首先調(diào)用分組 驅(qū)動程序,該程序?qū)?shù)據(jù)傳遞給每一個參與進(jìn)程的分組過濾程序。4)然后由Packet fil

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論