當前位置:編程學習大全網 - 行動軟體 - sniffer為什麽截獲另外兩個機器的通信內容?其原理是什麽?

sniffer為什麽截獲另外兩個機器的通信內容?其原理是什麽?

Sniffer 原理

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

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

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

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

網絡監聽原理

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

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

基於Sniffer這樣的模式,可以分析各種信息包並描述出網絡的結構和使用的機器,由於它接收任何壹個在同壹網段上傳輸的數據包,所以也就存在著捕獲密碼、各種信息、秘密文檔等壹些沒有加密的信息的可能性。這成為黑客們常用的擴大戰果的方法,用來奪取其他主機的控制權

Snifffer的分類

Sniffer分為軟件和硬件兩種,軟件的Sniffer有 NetXray、Packetboy、Net monitor等,其優點是物美價廉,易於學習使用,同時也易於交流;缺點是無法抓取網絡上所有的傳輸,某些情況下也就無法真正了解網絡的故障和運行情況。硬件的Sniffer通常稱為協議分析儀,壹般都是商業性的,價格也比較貴。

實際上本文中所講的Sniffer指的是軟件。它把包抓取下來,然後打開並查看其中的內容,可以得到密碼等。Sniffer只能抓取壹個物理網段內的包,就是說,妳和監聽的目標中間不能有路由或其他屏蔽廣播包的設備,這壹點很重要。所以,對壹般撥號上網的用戶來說,是不可能利用Sniffer來竊聽到其他人的通信內容的。

以上是我找的,我是參考這個答題的。。。華理的哈

  • 上一篇:特工紹特高清 特工紹特在線觀看
  • 下一篇:英雄時代的設定解說
  • copyright 2024編程學習大全網