簡介
網路嗅探,英文全名:Network sniffer。網路嗅探是指利用計算機的網路接口截獲目的地為其它計算機的數據報文的一種手段。
工作原理
通常所說的“Packetsniffer”指的是一種插入到計算機網路中的偷聽網路通信的設備,就像是電話監控能聽到其他人通過電話的交談一樣。與電話電路不同,計算機網路是共享通信通道的。共享意味著計算機能夠接收到傳送給其他計算機的信息。捕獲在網路中傳輸的數據信息就稱為Sniffing(竊聽)。一個“Sniffer”程式能使某人“聽”到計算機網路的會話。不同的是,計算機的會話包括的顯然就是隨機的二進制數據。因此網路偷聽程式也因為它的“協定分析”特性而著名,“協定分析”就是對於計算機的通信進行解碼並使它變得有意義。
積極意義
網路嗅探需要用到網路嗅探器,其最早是為網路管理人員配備的工具,有了嗅探器網路管理員可以隨時掌握網路的實際情況,查找網路漏洞和檢測網路性能,當網路性能急劇下降的時候,可以通過嗅探器分析網路流量,找出網路阻塞的來源。嗅探器也是很多程式人員在編寫網路程式時抓包測試的工具,因為我們知道網路程式都是以數據包的形式在網路中進行傳輸的,因此難免有協定頭定義不對的。
網路嗅探的基礎是數據捕獲,網路嗅探系統是並接在網路中來實現對於數據的捕獲的,這種方式和入侵檢測系統相同,因此被稱為網路嗅探。網路嗅探是網路監控系統的實現基礎,首先就來詳細地介紹一下網路嗅探技術,接下來就其在網路監控系統的運用進行闡述。
消極意義
任何東西都有它的兩面性,在黑客的手中,嗅探器就變成了一個黑客利器,如利用ARP欺騙手段,很多攻擊方式都要涉及到arp欺騙,如會話劫持和ip欺騙。首先要把網路置於混雜模式,再通過欺騙抓包的方式來獲取目標主機的pass包,當然得在同一個交換環境下,也就是要先取得目標伺服器的同一網段的一台伺服器。 Arp是什麼?arp是一種將ip轉化成以ip對應的網卡的物理地址的一種協定,或者說ARP協定是一種將ip地址轉化成MAC地址的一種協定,它靠維持在記憶體中保存的一張表來使ip得以在網路上被目標機器應答。ARP就是IP位址與物理之間的轉換,當你在傳送數據時,IP包里就有源IP位址、源MAC地址、目標IP位址,如果在ARP表中有相對應的MAC地址,那么它就直接訪問,反之,它就要廣播出去,對方的IP位址和你發出的目標IP位址相同,那么對方就會發一個MAC地址給源主機。而ARP欺騙就在此處開始,侵略者若接聽到你傳送的IP位址,那么,它就可以仿冒目標主機的IP位址,然後返回自己主機的MAC地址給源主機。因為源主機傳送的IP包沒有包括目標主機的MAC地址,而ARP表裡面又沒有目標IP位址和目標MAC地址的對應表。所以,容易產生ARP欺騙。例如:我們假設有三台主機A,B,C位於同一個交換式區域網路中,監聽者處於主機A,而主機B,C正在通信。現在A希望能嗅探到B->C的數據, 於是A就可以偽裝成C對B做ARP欺騙――向B傳送偽造的ARP應答包,應答包中IP位址為C的IP位址而MAC地址為A的MAC地址。這個應答包會刷新B的ARP快取,讓B認為A就是C,說詳細點,就是讓B認為C的IP位址映射到的MAC地址為主機A的MAC地址。 這樣,B想要傳送給C的數據實際上卻傳送給了A,就達到了嗅探的目的。我們在嗅探到數據後,還必須將此數據轉發給C, 這樣就可以保證B,C的通信不被中斷。以上也是基於ARP欺騙的嗅探基本原理。