Sniffer 中文使用教程(經典)

 

超詳細 WORD 版本下載    http://www.docin.com/p-282613690.html

 

簡介  當信息以明文的形式在網絡上傳輸時,便可以使用網絡監聽的方式來進行***。將網絡接口設置在監聽模式,便可以將網上傳輸的源源不斷的信息截獲。Sniffer技術常常被***們用來截獲用戶的口令,據說某個骨幹網絡的路由器網段曾經被***攻入,並嗅探到大量的用戶口令。但實際上Sniffer技術被廣泛地應用於網絡故障診斷、協議分析、應用性能分析和網絡安全保障等各個領域。

 

原理

  下文將詳細介紹Sniffer的原理和應用。

 

  Sniffer 原理

網絡技術與設備簡介

  在講述Sniffer的概念之前,首先需要講述局域網設備的一些基本概念。

 

  數據在網絡上是以很小的稱爲幀(Frame)的單位傳輸的,幀由幾部分組成,不同的部分執行不同的功能。幀通過特定的稱爲網絡驅動程序的軟件進行成型,然後通過網卡發送到網線上,通過網線到達它們的目的機器,在目的機器的一端執行相反的過程。接收端機器的以太網卡捕獲到這些幀,並告訴操作系統幀已到達,然後對其進行存儲。就是在這個傳輸和接收的過程中,嗅探器會帶來安全方面的問題。

 

  每一個在局域網(LAN)上的工作站都有其硬件地址,這些地址惟一地表示了網絡上的機器(這一點與Internet地址系統比較相似)。當用戶發送一個數據包時,這些數據包就會發送到LAN上所有可用的機器。

 

  如果使用Hub/即基於共享網絡的情況下,網絡上所有的機器都可以“聽”到通過的流量,但對不屬於自己的數據包則不予響應(換句話說,工作站A不會捕獲屬於工作站B的數據,而是簡單地忽略這些數據)。如果某個工作站的網絡接口處於混雜模式(關於混雜模式的概念會在後面解釋),那麼它就可以捕獲網絡上所有的數據包和幀。

 

  但是現代網絡常常採用交換機作爲網絡連接設備樞紐,在通常情況下,交換機不會讓網絡中每一臺主機偵聽到其他主機的通訊,因此Sniffer技術在這時必須結合網絡端口鏡像技術進行配合。而衍生的安全技術則通過ARP欺騙來變相達到交換網絡中的偵聽。

網絡監聽原理

  Sniffer程序是一種利用以太網的特性把網絡適配卡(NIC,一般爲以太網卡)置爲雜亂(promiscuous)模式狀態的工具,一旦網卡設置爲這種模式,它就能接收傳輸在網絡上的每一個信息包。

 

  普通的情況下,網卡只接收和自己的地址有關的信息包,即傳輸到本地主機的信息包。要使Sniffer能接收並處理這種方式的信息,系統需要支持BPF,Linux下需要支持SOCKET一PACKET。但一般情況下,網絡硬件和TCP/IP堆棧不支持接收或者發送與本地計算機無關的數據包,所以,爲了繞過標準的TCP/IP堆棧,網卡就必須設置爲我們剛開始講的混雜模式。一般情況下,要激活這種方式,內核必須支持這種僞設備Bpfilter,而且需要root權限來運行這種程序,所以sniffer需要root身份安裝,如果只是以本地用戶的身份進入了系統,那麼不可能嗅探到root的密碼,因此不能運行Sniffer。

 

  也有基於無線網絡、廣域網絡(DDN, FR)甚至光網絡(POS、Fiber Channel)的監聽技術,這時候略微不同於以太網絡上的捕獲概念,其中通常會引入TAP (測試介入點)這類的硬件設備來進行數據採集。

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章