在线观看国产区-在线观看国产欧美-在线观看国产免费高清不卡-在线观看国产久青草-久久国产精品久久久久久-久久国产精品久久久

美章網 資料文庫 網絡數據包捕獲技術范文

網絡數據包捕獲技術范文

本站小編為你精心準備了網絡數據包捕獲技術參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。

網絡數據包捕獲技術

1數據包捕獲概述

計算機網絡在傳輸數據時,為了保證所有共享網絡資源的計算機都能公平、迅速地使用網絡,通常把數據分割成若干小塊作為傳輸單位進行發送,這樣的傳輸單位我們通常稱之為包,也叫“數據包”。目前有兩種方法可以從網絡中捕獲數據包,一種是采用專用硬件,另一種是利用普通計算機與網絡連接的通用硬件網絡適配器,即網卡,由軟件來完成數據包的捕獲。雖然由軟件來捕獲數據包的方法在性能上比不上專用硬件,但其實現成本相對更低,且易于修改和更新。基于以上原因,采用軟件的捕獲方法得到了廣泛的使用和認同。

從網絡捕獲數據包是所有網絡安全產品實現中非常重要的一環,它是安全產品其它功能的基礎,而實現網絡捕包的一個最重要的條件就是要能夠接收網絡上所有的數據包。要滿足此條件就必須了解數據包在網絡上的傳輸方式。計算機網絡從傳輸方式的角度分為兩類:采用點到點連接的網絡和采用廣播方式的網絡。廣域網中一般采用點到點連接方式,而幾乎所有的局域網都以廣播方式作為通信的基礎,網上的站點共享信道,一個站點發出的數據包,其他站點均能收到,也就是說,任一臺計算機都可以接收到網絡中同一個共享域的所有的數據通訊。

2以太網捕獲數據包的實現原理

在以太網上通訊的每張網卡上都擁有一個全球唯一的物理地址,也叫MAC地址。該地址是一個48比特的二進制數。在以太網卡中內建有一個數據包過濾器。該數據包過濾器的作用是保留以本身網卡的MAC地址為通訊目的的數據包和廣播數據包,丟棄所有其它無關的數據包,以免CPU對無關的數據報作無謂的處理。這是以太網卡在一般情況下的工作方式。因此在正常情況下,一個合法的網絡接口應該只響應這樣的兩種數據包(幀):

(1)幀的目標地址具有和本地網絡接口相匹配的硬件地址。

(2)幀的目標地址是“廣播地址”(代表所有的接口地址),格式為“FFFFFFFFFFFF”。

在接收到上面兩種情況的數據幀時,網卡通過CPU產生中斷,操作系統進行中斷處理后將幀中包含的數據傳送給上層系統進行進一步處理。在其他情況下數據幀將被丟棄而不作處理。

要想捕獲到流經網卡的不屬于本主機的數據,必須繞過系統正常工作的處理機制,直接訪問網絡底層。我們可以把網卡的狀態設為“混雜”(promiscuous)模式,當網卡工作在這種“混雜”模式時,該網卡就具備了“廣播地址”,它對所接收到的每一個幀都產生一個硬件中斷以提醒操作系統處理流經該網卡上的每一個報文包。操作系統通過直接訪問鏈路層,截獲相關數據,由應用程序而非上層協議(如IP層、TCP層)對數據過濾處理,這樣就可以捕獲到流經網卡的所有數據。

3共享和交換以太網下的捕包

首先從TCP/IP模型的角度來看數據包在局域網內發送的過程:當數據由應用層自上而下地傳遞時,在網絡層形成IP數據報,再向下到達數據鏈路層,由數據鏈路層將IP數據報分割為數據幀,增加以太網包頭,再向下一層發送。需要說明的是,以太網的包頭中包含著本機和目標設備的MAC地址,也就是說,數據鏈路層的數據幀發送時,是依靠48bits的以太網地址而非IP地址來確認的,以太網的網卡設備驅動程序不會關心IP數據報中的目的IP地址,它所需要的僅僅是MAC地址。

3.1在共享以太網中捕包

共享式以太網的典型代表是使用10Base5的總線型網絡和以集線器(HUB)為核心的星型網絡。集線器工作在物理層。在使用集線器的以太網中,集線器將很多以太網設備集中到一臺中心設備上,這些設備都連接到集線器中的同一物理總線結構中。從本質上講,以集線器為核心的以太網同原先的總線型以太網無根本區別,集線器并不處理或檢查其上的通信量,僅通過將一個端口接收的信號重復分發給其他端口來擴展物理介質。所有連接到集線器的設備共享同一介質,其結果是它們也共享同一沖突域、廣播和帶寬。因此集線器和它所連接的設備組成了一個單一的沖突域。如果一個節點發出一個廣播信息,集線器會將這個廣播傳播給所有同它相連的所有節點,因此它也是一個單一的廣播域。

當局域網內的主機通過HUB連接時,HUB的作用就是局域網上面的一個共享的廣播媒體,所有通過局域網發送的數據首先被送到HUB,然后HUB將接收到的所有數據向它的每個端口轉發。因此我們只要將某臺主機的網卡設置為混雜模式,就可以接收到局域網內所有主機間的數據流量。

3.2在交換以太網中捕包

在交換式以太網中,交換機根據收到數據幀中的源MAC地址建立該地址同交換機端口的映射,并將其寫入MAC地址表中。當有數據包發送到交換機時,交換機會將數據包中的目的MAC地址與自己維護的MAC地址端口映射表中的數據進行對照,然后將數據包發送到對應的端口上。對交換機而言,僅有兩種情況會發送廣播,一是數據包的目的MAC地址不在交換機維護的數據庫中,此時數據包向所有端口轉發,這一過程稱之為泛洪(flood);二是數據包本身就是廣播包。

不同于工作在物理層的集線器,交換機是工作在數據鏈路層的。由于端口間的傳遞的數據幀彼此屏蔽,因此節點就不擔心自己發送的幀在通過交換機時是否會與其他節點發送的幀產生沖突。交換機將沖突隔絕在每一個端口(每個端口都是一個沖突域),避免了沖突的擴散。因此,基于交換機以太網建立的局域網并不是真正的廣播媒體,交換機限制了被動監聽工具所能截獲的數據。因此,要捕獲數據包就必須將捕包系統運行在網關或路由器上,如果想在網段的任意一臺主機上實現捕包功能,就需要采取其它的方法:

(1)端口鏡像。當路由器或交換機具備端口鏡像功能時,我們可以通過鏡像端口完成抓包工作。路由器或交換機的端口鏡像功能,是指可以將一個端口的流量自動復制到另一端口,供網絡管理員在判斷網絡問題時對端口流量和內容進行實時分析。通過交換機的鏡像端口,這些流量就可以被一個特殊的設備監控,對發現和排除故障有很大的幫助。

(2)MAC洪泛法。通過在局域網上發送大量隨機的MAC地址,以造成交換機的內存耗盡,當內存耗盡時,一些交換機便開始向所有連在它上面的鏈路發送數據。不過這種方法對網絡會造成很大的堵塞,造成網絡性能下降。

(3)ARP欺騙。ARP協議的作用是將IP地址映射到MAC地址,攻擊者通過向目標主機發送偽造的ARP應答包,騙取目標系統更新自身的ARP緩存表,將目標系統的網關的MAC地址修改為監聽者的主機MAC地址,使數據包都經由監聽者的主機,同時監聽者向網關發送偽造的ARP應答包,欺騙網關更新自己的ARP緩存表,是網關發給目標主機的數據也都流經監聽者的主機,這樣就實現了交換環境下的網絡監聽。值得一提的是,黑客經常會以此方法進行攻擊和竊取數據。

4總結

不同的操作系統實現的底層包捕獲機制可能是不一樣的,但從形式上看大同小異。數據包常規的傳輸路徑依次為網卡、設備驅動層、數據鏈路層、網絡層、傳輸層、最后到達應用程序。而包捕獲機制是在數據鏈路層增加一個旁路處理,對發送和接收到的數據包做過濾、緩沖等相關處理,最后直接傳遞到應用程序。值得注意的是,包捕獲機制并不影響操作系統對數據包的網絡棧處理。對用戶程序而言,包捕獲機制提供了一個統一的接口,使用戶程序只需要簡單的調用若干函數就能獲得所期望的數據包。這樣一來,針對特定操作系統的捕獲機制對用戶透明,使用戶程序有比較好的可移植性。包過濾機制是對所捕獲到的數據包根據用戶的要求進行篩選,最終只把滿足過濾條件的數據包傳遞給用戶程序。

主站蜘蛛池模板: 久久亚洲精品视频 | 亚洲人成影视 | 电影网站在线观看 | 羞羞免费观看网站 | 亚洲欧美亚洲 | 亚洲女人性视频 | 亚洲第一精品电影网 | 亚洲国产精品久久 | 五月婷婷六月综合 | 亚洲四虎永久在线播放 | 亚洲 欧洲 另类 综合 自拍 | 亚洲最猛黑人xxxx黑人猛交 | 久久只有精品视频 | 久久福利免费视频 | 亚洲免费福利视频 | 亚洲图片 自拍偷拍 | 五月花在线视频 | 欧美在线视频免费播放 | 亚洲欧美一区二区三区不卡 | 亚洲 欧美 自拍 另类 | 女男羞羞视频网站免费 | 中文国产成人精品久久久 | 全国男人的天堂网 | 亚洲无线码一区二区三区 | 欧美大片一区二区 | 日本a级免费 | 小明免费视频一区二区 | 日韩免费在线观看视频 | 久久狠狠丁香婷婷综合 | 成人性色生活影片 | 亚洲一区自拍 | 亚洲阿v天堂一区二区三区 亚洲精品在看在线观看 | 性爽交免费视频 | 日本高清视频一区二区三区 | 亚洲品质自拍视频网站 | 雅虎日本免费一区二区三区 | 国产精品久久久久免费视频 | 四虎网站1515hh四虎 | 久久精品亚洲精品国产欧美 | 国产精品午夜电影 | 精品在线免费观看视频 |