freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

winpcap開(kāi)發(fā)網(wǎng)絡(luò)嗅探器畢業(yè)設(shè)計(jì)(參考版)

2024-12-03 02:30本頁(yè)面
  

【正文】 圖 BPF 結(jié)構(gòu) cons。如果這個(gè)數(shù)據(jù)包是發(fā)給本機(jī)的,驅(qū)動(dòng)程序會(huì)再把它提交給系統(tǒng)的協(xié)議棧,然后返回。如果有進(jìn)程用 BPF 進(jìn)行網(wǎng)絡(luò)端口監(jiān)聽(tīng),網(wǎng)卡驅(qū)動(dòng)程序會(huì)先調(diào)用 BPF,復(fù)制一份數(shù)據(jù) 給 BPF 過(guò)濾器相關(guān)的緩沖區(qū)中,過(guò)濾器則根據(jù)用戶定義的過(guò)應(yīng)用層 協(xié)議驅(qū)動(dòng)程序 中間驅(qū)動(dòng)程序 網(wǎng)卡驅(qū)動(dòng) 網(wǎng)卡 NDIS 第 23 頁(yè) 共 27 頁(yè) 濾規(guī)則決定是否接收此數(shù)據(jù)包。Filler,是一個(gè)過(guò)濾器,用于分析所監(jiān)聽(tīng)到的用戶感興趣的包,用戶可將過(guò)濾器設(shè)置為只接收網(wǎng)絡(luò)中某一類數(shù)據(jù)包子集。 BPF 是 BSD Paeket Filter 的簡(jiǎn)稱,目前 UNIX 平臺(tái)上多數(shù)數(shù)據(jù)包捕獲工具 (如 tcpdump、 sniffit、 NFR 等 )都是基于 BPF 開(kāi)發(fā)的。所以,對(duì) Winpcap 的研究就要從過(guò)濾引擎 NPF 開(kāi)始,而 NPF 是在 BPF 的基礎(chǔ)上開(kāi)發(fā)出來(lái)的, NPF中保留了 BPF核心 BSD的最重要的模塊,所以,有必要首先針對(duì) BPF 的各項(xiàng)組成和功能進(jìn)行分析。 圖 NDIS 驅(qū)動(dòng)程序結(jié)構(gòu) construction of NDIS diver program BPF 研究 Winpcap是 BPF模型和 Libpcap函數(shù)庫(kù)在 windows平臺(tái)下網(wǎng)絡(luò)數(shù)據(jù)包捕 獲和網(wǎng)絡(luò)狀態(tài)分析的一種體系結(jié)構(gòu),這個(gè)體系結(jié)構(gòu)是由一個(gè)核心的包過(guò)濾驅(qū)動(dòng)程序 NPF,一個(gè)底層的動(dòng)態(tài)連接庫(kù)和一個(gè)高層的獨(dú)立于系統(tǒng)的動(dòng)態(tài)連接庫(kù)組成。在它的下 第 22 頁(yè) 共 27 頁(yè) 面,它與一個(gè)或多個(gè) NIC 驅(qū)動(dòng)或中間層 NDIS 驅(qū)動(dòng)連接。在一個(gè)或多個(gè)網(wǎng)絡(luò)接口卡上提供它的服務(wù)。 (3)傳輸驅(qū)動(dòng) (Transport drivers)或協(xié)議驅(qū)動(dòng) (Protocol drivers)。例如,中間層驅(qū)動(dòng)可以將LAN 協(xié)議轉(zhuǎn)換成 ATM 協(xié)議。對(duì)于小端口,中間層驅(qū)動(dòng) 看起來(lái)像協(xié)議驅(qū)動(dòng)。它能夠截獲所有網(wǎng)絡(luò)數(shù)據(jù)包,如以太幀。 NIC 驅(qū)動(dòng)可以是小端口 (miniport)或完全的 NIC驅(qū)動(dòng) (full NICdriver)。 NDIS 支持三種類型的網(wǎng)絡(luò)驅(qū)動(dòng)類型 : (l)網(wǎng)絡(luò)接口卡或 NIC 驅(qū)動(dòng)困 (Network interface card or NIC drivers)。利用功能庫(kù)的各種功能支持,使得 MAC 和協(xié)議驅(qū)動(dòng)的開(kāi)發(fā)過(guò)程變得相對(duì)簡(jiǎn)單,同時(shí)在某種程度上,掩蓋了平臺(tái)的依賴特性。 NIC硬件實(shí)現(xiàn)過(guò)程與媒體訪問(wèn)控制 (MAC)設(shè)備驅(qū)動(dòng)程序緊密相關(guān),這 樣利用通用編程接口,可以訪問(wèn)同一媒體 (如以太網(wǎng) )的所有網(wǎng)絡(luò)接口卡。實(shí)際上, NDIS 最主要的目的是作為一個(gè)允許協(xié)議來(lái)驅(qū)動(dòng)發(fā)送和接收網(wǎng)絡(luò) (LAN或 WAN)上的數(shù)據(jù)包而不必關(guān)心特定的適配器或特定的 Win32 操作系統(tǒng)的封裝。 NDIS 還支持多種工作模式,支持多處理器,提供一個(gè)完備的 NDIS 庫(kù) (Library)。 NDIS 位于網(wǎng)卡和協(xié)議層之間,通過(guò)一套基元指令為上層的協(xié)議驅(qū)動(dòng)提供服務(wù),同時(shí)屏蔽了下層各種網(wǎng)卡技術(shù)上的差別。所以在說(shuō)明Winpcap 的組成結(jié)構(gòu)以前,要先討論一下 NDIS。所以,一個(gè)好的協(xié)議分析器必需有很好的可擴(kuò)展性和結(jié)構(gòu),這樣才能適應(yīng)網(wǎng)絡(luò)發(fā)展的需要不斷加入新的協(xié)議解析器。 這都?xì)w功于 Ethereal 良好的設(shè)計(jì)結(jié)構(gòu)。很難想象如此多的人開(kāi)發(fā)的代碼可以很好的融入系統(tǒng)中 。 Ethereal 支持以下平臺(tái) :Windows, Linux, Solaris, Mac0S, BeOS, Tru64Unix, HP_UX, AIX, Irix等。它可以支持七百多種協(xié)議的解析和多種媒體類型??梢酝ㄟ^(guò)圖形界面瀏覽這些數(shù)據(jù),可以查看網(wǎng)絡(luò)通訊數(shù)據(jù)包中每一層的詳細(xì)內(nèi)容 。 Remote ANS 的最大特點(diǎn)就是可以跨路由對(duì)遠(yuǎn)程交換網(wǎng)絡(luò)進(jìn)行嗅探,捕獲遠(yuǎn)程局域網(wǎng)絡(luò)的數(shù)據(jù)包,這個(gè)功能對(duì)于網(wǎng)絡(luò)滲透尤為有用。它是一種可以跨路由的網(wǎng)絡(luò)監(jiān)測(cè)軟件。另外可以使用 TOD(Touch of Death)插件, TOD 通過(guò)向目標(biāo)機(jī)器發(fā)送 RST包來(lái)切斷目標(biāo)機(jī)器的 TCP 連接。 Sniffit 一 windows 平臺(tái)下的嗅探器。 8)安全工具。 6)網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng) (NIDS)。 4)流量發(fā)生 (traffic generators)。 2)網(wǎng)絡(luò)監(jiān)控 。 4)收集網(wǎng)絡(luò)通信過(guò)程中的統(tǒng) 計(jì)信息。 Winpcap 提供了以下的各項(xiàng)功能 : 1)捕獲原始數(shù)據(jù)包,包括在共享網(wǎng)絡(luò)上各主機(jī)發(fā)送 /接收的數(shù)據(jù)包以及相互之間換的數(shù)據(jù)包 。 Winpcap 為程序員提供了一套標(biāo)準(zhǔn)的網(wǎng)絡(luò)數(shù)據(jù)包捕獲接口,并且與Libpcap 兼容,使得原來(lái)許多 Linux 平臺(tái)下的網(wǎng)絡(luò)安全程序可以很快地移植到windows 平臺(tái)下 :winpcap 的效率很高,它充分考慮了各種性能和效率的優(yōu)化,在內(nèi)核層次實(shí)現(xiàn)了數(shù)據(jù)包的捕獲和過(guò)濾。 winpcap 的官方主頁(yè)是 ,可以在其主頁(yè)上下載這個(gè)軟 第 19 頁(yè) 共 27 頁(yè) 件及其源代碼,更重要的是,網(wǎng)站上還有很多開(kāi)發(fā)文檔,對(duì)于利用 Winpcap作為工具開(kāi)發(fā)網(wǎng)絡(luò)安全軟件的編程人員有很大幫助。2020 年 l月 10日推出了 ,增加了 NPF 設(shè)備驅(qū)動(dòng)的一些新的特性及優(yōu)化方案、在 中增加了一些函數(shù)等等功能。2020 年 l 月 30 日推出了 版 。1999年 8 月 21 日推出了 版,將 BPF 過(guò)濾增加到內(nèi)核中并增加了內(nèi)核緩存 。這個(gè)數(shù)據(jù)包捕獲架構(gòu)是由加州大學(xué)和 Lawrence Berkeley 實(shí)驗(yàn)室及其投稿者聯(lián)合開(kāi)發(fā)的。 功能是關(guān)閉 Libpcap 關(guān)聯(lián)文件操作并回收資源。 功能是獲取數(shù)據(jù)鏈路層類型,如 10M 以太網(wǎng)、 SLIP、 PPP、 FDDI、 ATM、 等。 功能是設(shè)置 BPF 過(guò)濾規(guī)則。 用于將過(guò)濾規(guī)則字符串編譯成一個(gè) BPF 內(nèi)核過(guò)濾程序。 (5)void pcap_dump(): 用于將包內(nèi)容輸出到由 pcap_dump_open()打開(kāi)的文件中。 (4)int pcap_dispateh()或 int pcap_loop()。 用于打開(kāi)一個(gè)網(wǎng)絡(luò)接口進(jìn)行數(shù)據(jù)包捕獲。另外,Libpcap 還 支 持 脫 機(jī) 方 式 監(jiān) 聽(tīng) , 在 ,有兩個(gè)函數(shù) :pcap_open_offiine()和 pcap_offiine_read()。 (3)本機(jī)網(wǎng)絡(luò)設(shè)置部分 :這部分是通過(guò)獲取 socket 的狀態(tài),來(lái)檢測(cè) TCP/IP層網(wǎng)絡(luò)設(shè)置。這部分代碼在 :, , , 中。在源代碼中是以 peap*.e 方式出現(xiàn) 。 圖 Libpcap 原理圖 principle of Libpcap 對(duì)開(kāi)放源代碼的 Libpcap 程序進(jìn)行分析,可以得到它的功能執(zhí)行過(guò)程及相關(guān)的分類結(jié)構(gòu)如下 : (l)初始化 :這部分的功能包括打開(kāi)設(shè)備、讀取設(shè)備,設(shè)置過(guò)濾器部分?;?BPF的 libpcap 包捕獲技術(shù)首先將網(wǎng)卡設(shè)置為混雜模式,然后將網(wǎng)卡驅(qū)動(dòng)程序處截獲的數(shù)據(jù)流復(fù) 第 17 頁(yè) 共 27 頁(yè) 制后,不經(jīng)過(guò)系統(tǒng)的協(xié)議棧,于內(nèi)核先進(jìn)行過(guò)濾,過(guò)濾器決定某一數(shù)據(jù)包是被接受或者拒絕以及如果被接受,數(shù)據(jù)包的哪些部分會(huì)被復(fù)制給應(yīng)用程序 。 Libpcap 可以把捕獲到的數(shù)據(jù)包存儲(chǔ)到文件中,之后能夠利用 Libpcap 從文件中讀取數(shù)據(jù)包進(jìn)行再分析。 Libpcap 捕獲到數(shù)據(jù)包后,可以提供數(shù)據(jù)包的基本信息,如捕 獲時(shí)間、包長(zhǎng)度等,開(kāi)發(fā)者可以在此基礎(chǔ)上進(jìn)一步分析有關(guān)的內(nèi)容。 Libpcap 使用了 BPF(BerkeleypaeketFilter)捕獲機(jī)制,可以對(duì)數(shù)據(jù)包進(jìn)行定制的過(guò)濾,由于它工作在操作系統(tǒng)的內(nèi)核層面并且在內(nèi)核中使用了緩存機(jī)制,所以效率非常高。它是個(gè)專業(yè)的數(shù)據(jù)包捕獲函數(shù)庫(kù),效率很高操作也很簡(jiǎn)單?;蛘哌M(jìn)行網(wǎng)絡(luò)流量分析、網(wǎng)絡(luò)入侵檢測(cè)、網(wǎng)絡(luò)安全監(jiān)測(cè)等,這些都是在數(shù)據(jù)包的捕獲基礎(chǔ)上進(jìn)行操作的 ,所以都可以使用Libpcap 來(lái)實(shí)現(xiàn)。在捕捉數(shù)據(jù)包的過(guò)程中,可以對(duì)捕捉的模式進(jìn)行設(shè)定,例如可以過(guò)濾特定的數(shù)據(jù)包,或者對(duì)捕捉對(duì)象進(jìn)行限制。 的功能 簡(jiǎn)單地說(shuō), Libpcap 的最主要功能就是捕捉為了數(shù)據(jù)網(wǎng)絡(luò)包。 Libpcap 的開(kāi)發(fā)一直非?;钴S,版本不斷更新,其官方網(wǎng)址為 :。它工作在高層并隱藏了操作系統(tǒng)的細(xì)節(jié),是一個(gè)獨(dú)立于系統(tǒng)的用戶層包捕獲的接口,為低層網(wǎng)絡(luò)監(jiān)測(cè)提供了一個(gè)可移植的框架網(wǎng)絡(luò)數(shù)據(jù)捕獲函數(shù)庫(kù),它在很多網(wǎng)絡(luò)安全領(lǐng)域得到了廣泛的應(yīng)用,已經(jīng)成為網(wǎng)絡(luò)數(shù)據(jù)包捕獲的標(biāo)準(zhǔn)接口。 Libpcap 函數(shù)庫(kù) 第 16 頁(yè) 共 27 頁(yè) Libpcap 概述 Libpcap是由 Berkeiey大學(xué)的 Van Jacobson, Craig Leres和 Steven McCanne用 C 語(yǔ)言編寫(xiě)的,是一個(gè)著名的、專門用來(lái)捕獲網(wǎng)絡(luò)數(shù)據(jù)的跨平 臺(tái)編程 API 接口。包過(guò)濾機(jī)制是對(duì)所捕獲到的數(shù)據(jù)包根據(jù)用戶的要求進(jìn)行篩選,最終只把滿足過(guò)濾 條件的數(shù)據(jù)包傳遞給用戶程序。對(duì)用戶程序而言,包捕獲機(jī)制提供了一個(gè)統(tǒng)一的接口,使用戶程序只需要簡(jiǎn)單的調(diào)用若干函數(shù)就能獲得所期望的數(shù)據(jù)包。而包捕獲機(jī)制是在數(shù)據(jù)鏈路層增加一個(gè)旁路處理,對(duì)發(fā)送和接收到的數(shù)據(jù)包做過(guò)濾 /緩沖等相關(guān)處理,最后直接傳遞到應(yīng)用程序。不同的操作系統(tǒng)實(shí)現(xiàn)的底層包捕獲機(jī)制可能是不一樣的,但從形式上看大同小異。 (4)網(wǎng)絡(luò)入侵檢測(cè)函數(shù)庫(kù) Libnids。 常用的網(wǎng)絡(luò)數(shù)據(jù)開(kāi)發(fā)函數(shù)庫(kù)有 : (1)網(wǎng) 絡(luò)數(shù)據(jù)包捕獲函數(shù)庫(kù) Libpcap: (2)Windows 平臺(tái)下數(shù)據(jù)包捕獲函數(shù)庫(kù) WinPcap。一些著名的網(wǎng)絡(luò)安全系統(tǒng)使用了這些函數(shù)庫(kù)作為底層功能的驅(qū)動(dòng)和實(shí)現(xiàn)。現(xiàn)在這些基本的功能函數(shù)庫(kù)幾乎己經(jīng)成了標(biāo)準(zhǔn)的編程接口,編程時(shí)直接調(diào)用就可以,為開(kāi)發(fā)者節(jié)省了時(shí)間和精力。這就使網(wǎng)絡(luò)開(kāi)發(fā)人員能夠忽略網(wǎng)絡(luò)底層細(xì)節(jié)的實(shí)現(xiàn),從而專注于程序本身具體功能的設(shè)計(jì)與開(kāi)發(fā)。例如,使用數(shù)據(jù)包捕 第 15 頁(yè) 共 27 頁(yè) 獲函數(shù)庫(kù)就可以實(shí)現(xiàn)網(wǎng)絡(luò)監(jiān)視系統(tǒng)的最基本功能 。 在眾多的 API library 中,對(duì)于類 Unix 系統(tǒng)平臺(tái)上的網(wǎng)絡(luò)安全工具開(kāi)發(fā)而言,目前最為流行的 C語(yǔ)言 API library理有 lib、 libpcap、 libnids和 libiemp等。由于在安全程序中通常需要對(duì)網(wǎng)絡(luò)通訊的細(xì)節(jié) (如連接雙方地址 /端口、服務(wù)類型、傳輸控制等 )進(jìn)行檢查、處理或控制,象數(shù)據(jù)包截獲、數(shù)據(jù)包頭分析、數(shù)據(jù)包重寫(xiě)、甚至截?cái)噙B接等,都幾乎在每個(gè)網(wǎng)絡(luò)安全程序中必須實(shí)現(xiàn)。 (2)如果根節(jié)點(diǎn)交換機(jī)沒(méi)有這種功能,那么可以在根節(jié)點(diǎn)上方添加一臺(tái)集線器,集線器一個(gè)端口連接交換機(jī),另外一個(gè)端口就可以連接運(yùn)行 Sniffer 的主機(jī) 。所以,在交換環(huán)境下必須想辦法讓被嗅探主機(jī)的數(shù)據(jù)報(bào)發(fā)到嗅探主機(jī)來(lái),能夠?qū)崿F(xiàn)這種目的方法叫做 ARP 欺騙 (ARP Spoofing),這種方式通過(guò)偽造 A 即數(shù)據(jù)包欺騙交換機(jī)使交換機(jī)更新 ARP 緩存列表達(dá)到欺騙的目的,這樣發(fā)送到被嗅探的主機(jī)的數(shù)據(jù)報(bào)完全轉(zhuǎn)發(fā)到嗅探主機(jī)來(lái) ,而被嗅探主機(jī)收不到任何的數(shù)據(jù)包,為了使得能夠正常的截獲數(shù)據(jù)報(bào),嗅探主機(jī)除了充當(dāng)嗅探的身份之外,還要充當(dāng)中間人的身份。 交換環(huán)境下的網(wǎng)絡(luò)數(shù)據(jù)捕獲 交換環(huán)境的網(wǎng)絡(luò)使用交換機(jī) (Switch)連接各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)。但一般情況下,網(wǎng)絡(luò)硬件和 TCP/IP 堆棧不支持接收或者發(fā)送與本地計(jì)算機(jī)無(wú)關(guān)的數(shù)據(jù)包,所以,為了繞過(guò)標(biāo)準(zhǔn)的 TCP/IP 堆棧,網(wǎng)卡就必須設(shè)置為剛開(kāi)始講的混雜模式。這樣,將一臺(tái)主機(jī)的網(wǎng)卡設(shè)置成混雜模式,它將接受同一網(wǎng)絡(luò)內(nèi)所有主機(jī)所發(fā)送的數(shù)據(jù)包,該主機(jī)就可以捕獲到所有流經(jīng)其網(wǎng)卡的數(shù)據(jù)包和幀,這樣就可以到達(dá)對(duì)于網(wǎng)絡(luò)信息監(jiān)視捕獲的目的。如果將網(wǎng)卡設(shè)置為混雜模式,它對(duì)遇到的每一個(gè)幀都產(chǎn)生一個(gè)硬件中斷以便提醒操作系統(tǒng)處理流經(jīng)該物理媒體上的每一個(gè)報(bào)文包 (絕大多數(shù)的網(wǎng)卡具備 置成混雜模式的能力 )。 共享環(huán)境下的網(wǎng)絡(luò)數(shù)據(jù)捕獲 網(wǎng)卡的缺省工作模式包含廣播模式和直接模式。 (3)直接模式 (Direct Model)一工作在直接模式下的網(wǎng)卡只接收目地址是自己Mac 地址的幀。 (2)多播傳送 (Multi Cast Model)一多播傳送地址作為目的物理地址的幀可以被組內(nèi)的其它主機(jī)同時(shí)接收,而組外主機(jī)卻接收不到。如果是的話,接收該數(shù)據(jù)幀,進(jìn)行物理數(shù)據(jù)幀的 CRC 校驗(yàn),然后將數(shù)據(jù)幀提交給LLC 子層。當(dāng)用戶發(fā)送一個(gè)數(shù)據(jù)包時(shí),這些數(shù)據(jù)包就會(huì)發(fā)送到 LAN 上所有可用的機(jī)器。每個(gè)節(jié)點(diǎn)通過(guò)網(wǎng)卡來(lái)實(shí)現(xiàn)這種功能。對(duì)于今后網(wǎng)絡(luò)數(shù)據(jù)的監(jiān)測(cè)和分析方案 (比如對(duì)無(wú)線網(wǎng)絡(luò)和交換環(huán)境捕獲和分析 ),本文也在最后部分做了相應(yīng)的闡述和預(yù)測(cè)。 本文所做的工作 本課題針對(duì)網(wǎng)絡(luò)數(shù)據(jù)包的捕獲和分析技術(shù)做了比較深入的闡述。有時(shí)為了分析和采集數(shù)據(jù),必須能在異地同時(shí)地進(jìn)行采集,于是將協(xié)議分析儀的數(shù)據(jù)采集系統(tǒng)獨(dú)立開(kāi)來(lái),能安置在網(wǎng)絡(luò)的不同地方,由能控制多個(gè)采集器的協(xié)議分析儀平臺(tái)進(jìn)行管理和數(shù)據(jù)處理,這種應(yīng)用模式就誕生了分布式協(xié)議分析儀。 從協(xié)議分析儀發(fā)展的角度來(lái)說(shuō),網(wǎng)絡(luò)維護(hù)人員越來(lái)越需要使用功能強(qiáng)大并能將多種網(wǎng)絡(luò)測(cè)試手段集于一身的綜合式測(cè)試分析手段,典型的協(xié)議分析儀上的功 第 12 頁(yè) 共 2
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1