利用WinPcap技術捕獲數(shù)據(jù)包_第1頁
利用WinPcap技術捕獲數(shù)據(jù)包_第2頁
利用WinPcap技術捕獲數(shù)據(jù)包_第3頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

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

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

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

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

5、計模式,提供了發(fā)送數(shù)據(jù)包 的能力。t2 PCUjI dllMG Driver(NDI & 3.0 or ntgher;Ussrlf?¥MUiutr 亡®<! Mpmtortng仁PC«» IQ 皿hPFNaiwrlc T彌cmw promoM lacK&Ufttr uod tUmf eodie Can io WinPapK*rn«-IBMfteripacks LmiKtrnclGulfeiZ31MUIUI工Bt«r3PSKkQt網(wǎng)卡的缺省工作模式包含廣播模式和直接模式,即它只接收廣播幀和發(fā)給自己的幀。如果采用混雜

6、模式,一個站點的網(wǎng)卡將接受同一網(wǎng)絡內(nèi)所有站點所發(fā)送的數(shù) 據(jù)包這樣就可以到達對于網(wǎng)絡信息監(jiān)視捕獲的目的。3、在windows情況下捕獲數(shù)據(jù)包的結構圖2捕獲數(shù)據(jù)包的結構圖Wndows下捕獲數(shù)據(jù)包的結構如圖2,其中NDIS及其特點是:NDIS(Network Driver In terface Specificatio n)是 Microsoft 和 3Com 公司 聯(lián)合制定的網(wǎng)絡驅動規(guī)范,并提供了大量的操作函數(shù)。它為上層的協(xié)議驅動提供 服務,屏蔽了下層各種網(wǎng)卡的差別。NDIS向上支持多種網(wǎng)絡協(xié)議,比如TCP/IP、 NWLink IPX/SPX、NETBEUI等,向下支持不同廠家生產(chǎn)的多種網(wǎng)卡。N

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

8、過濾程序決定哪些數(shù)據(jù)包應該丟棄,哪些數(shù)據(jù)包應該接 收,是否需要將接收到的數(shù)據(jù)拷貝到相應的應用程序。5)通過分組過濾器后,將數(shù)據(jù)未過濾掉的數(shù)據(jù)包提交給核心緩沖區(qū)。然后等待 系統(tǒng)緩沖區(qū)滿后,再將數(shù)據(jù)包拷貝到用戶緩沖區(qū)。監(jiān)聽程序可以直接從用戶緩沖 區(qū)中讀取捕獲的數(shù)據(jù)包。6)關閉網(wǎng)卡。*4rtWQfK2、網(wǎng)絡數(shù)據(jù)包捕獲的原理以太網(wǎng)(Ethernet)具有共享介質的特征,信息是以明文的形式在網(wǎng)絡上傳 輸,當網(wǎng)絡適配器設置為監(jiān)聽模式(混雜模式,Promiscuous )時,由于采用以太網(wǎng)廣播信道爭用的方式,使得監(jiān)聽系統(tǒng)與正常通信的網(wǎng)絡能夠并聯(lián)連接,并可以捕獲任何一個在同一沖突域上傳輸?shù)臄?shù)據(jù)包。IEEE80

9、2.3標準的以太網(wǎng)采用的 是持續(xù)CSMA的方式,正是由于以太網(wǎng)采用這種廣播信道爭用的方式,使得各 個站點可以獲得其他站點發(fā)送的數(shù)據(jù)。運用這一原理使信息捕獲系統(tǒng)能夠攔截的 我們所要的信息,這是捕獲數(shù)據(jù)包的物理基礎。以太網(wǎng)是一種總線型的網(wǎng)絡,從邏輯上來看是由一條總線和多個連接在總線上的 站點所組成各個站點采用上面提到的CSMA/CD協(xié)議進行信道的爭用和共享。每個站點(這里特指計算機通過的接口卡) 網(wǎng)卡來實現(xiàn)這種功能。網(wǎng)卡主要的工 作是完成對于總線當前狀態(tài)的探測,確定是否進行數(shù)據(jù)的傳送,判斷每個物理數(shù) 據(jù)幀目的地是否為本站地址,如果不匹配,則說明不是發(fā)送到本站的而將它丟棄。 如果是的話,接收該數(shù)據(jù)幀,進行物理數(shù)據(jù)幀的CRC校驗,然后將數(shù)據(jù)幀提交給LLC子層。網(wǎng)卡具有如下的幾種工作模式:1)廣播模式(Broad Cast Model):它的物理地址(MAC)地址是0Xffffff的幀 為廣播幀,工作在廣播模式的網(wǎng)卡接收廣播幀。2)多播傳送(MultiCast Model ):多播傳送地址作為目的物理地址的幀可以被 組內(nèi)的其它主機同時接收,而組外主機卻接收不到。但是,如果將網(wǎng)卡設置為多

溫馨提示

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

評論

0/150

提交評論