日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

交换网络中的sniffer讨论-基于交换网络的ARP spoofing sniffer

發布時間:2023/12/9 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 交换网络中的sniffer讨论-基于交换网络的ARP spoofing sniffer 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
交換網絡中的sniffer討論->基于交換網絡的ARP spoofing sniffer

轉自--http://blog.csdn.net/zhangnn5/article/details/6810347

在閱讀這篇文章之前,我假設你已經知道TCP/IP協議,ARP協議,知道什么是sniffer等基本網絡知識。
在一般的局域網里面,經常會有兩種接入方式,一種是HUB接入(這里的HUB是指普通HUB),一種是交換機直接接入(這里的交換機是比較高級的交換機,老式交換機不在此列)。采用HUB方式接入的網絡,數據傳送的時候,是采用廣播的方式發送,這個時候,只要一臺主機將自己的網卡設置成混雜模式(promiscuous mode),就可以嗅探到整個網絡的數據。 此篇文章不打算討論這種網絡環境的嗅探(sniffer)和反嗅探(anti sniffer)方法,主要是想就交換機方式直接接入的網絡環境如何sniffer以及如何anti sniffer做一個比較粗淺的分析。

我們知道,一臺計算機想要接入到網絡中,必須要有兩個地址。一個是網卡的地址,我們稱之為MAC地址,它是固化在網卡中的。在以太網中,我們通過MAC地址來進行數據傳送和數據交換。在以太網環境中,數據會分幀傳送,每一個數據幀都會包含自己的MAC和目的MAC地址信息; 另外一個地址是平時所說的IP地址,定義在網絡層,每一臺網絡計算機都會有一個或者多個IP地址,這是一個虛擬的數據,并且可以隨時更改。IP地址和MAC地址是同時使用的,在數據傳送過程中,一個完整的TCP/IP包需要由以太網進行數據封裝,數據分幀,最后再通過物理層傳輸到目標計算機。在以太網封裝上層的TCP/IP包的時候,它需要知道源MAC地址和目的MAC地址,但是我們只能給出一個對方的IP地址,這個時候就需要一個協議來支持IP到MAC的轉換,這就是ARP,Address Resolution Protocol.?在局域網中,ARP是通過廣播的方式來發送的,比如,我的機器IP是192.168.7.110(A),需要知道192.168.7.119(B)機器的MAC地址,那從A機器就會廣播一個ARP包,這個包里帶有B機器的IP,如果B機器收到了此ARP包,那么他就會同樣返回一個ARP包,里面帶有響應的MAC地址。A收到這個ARP包后,得到B的MAC地址,這個時候以太網就可以開始封裝TCP/IP包了,可以開始正常的數據傳送了。比如:

d:\>arp -a

view plain
  • Interface:?192.168.7.110?on?Interface?0x1000003??
  • Internet?Address?Physical?Address?Type??
  • 192.168.7.1?00-90-0b-01-a0-61?dynamic??
  • ??
  • d:\>ping?192.168.7.119??
  • ??
  • Pinging?192.168.7.119?with?32?bytes?of?data:??
  • ??
  • Reply?from?192.168.7.119:?bytes=32?time<10ms?TTL=128??
  • ??
  • Ping?statistics?for?192.168.7.119:??
  • Packets:?Sent?=?1,?Received?=?1,?Lost?=?0?(0%?loss),??
  • Approximate?round?trip?times?in?milli-seconds:??
  • Minimum?=?0ms,?Maximum?=?0ms,?Average?=?0ms??
  • Control-C??
  • ^C??
  • d:\>arp?-a??
  • ??
  • Interface:?192.168.7.110?on?Interface?0x1000003??
  • Internet?Address?Physical?Address?Type??
  • 192.168.7.1?00-90-0b-01-a0-61?dynamic??
  • 192.168.7.119?00-d0-59-26-df-1a?dynamic??

  • 可以清楚的看到,在未和192.168.7.119通訊之前,本機是沒有該IP對應MAC地址的,但一旦通訊后,我們就知道了對方的MAC地址,windows會將對方MAC地址存在自己的ARP cache里面。
    為了節省網絡資源以及通訊時間,多數操作系統會保留一張ARP緩存表,里面記錄曾經訪問的IP和MAC地址影射記錄,一旦局域網中有一個新的ARP廣播,對應一個IP到MAC的記錄,這個ARP緩存表就會被刷新,MAC地址會更換成新的廣播包里定義的MAC地址,這個時候就存在一個問題,在更新的時候,系統并沒有去檢查是否真的是由該機器廣播出來的,局域網中的惡意用戶就會利用欺騙的方式來更改網絡途徑,將真正的MAC地址替換成自己的MAC地址,這種方法稱之為:ARP spoofing。
    交換機在處理數據的時候,它會根據自己機器內部的一個MAC到端口的數據表來查詢符合要求的MAC地址數據包該發往哪個端口。這張表從交換機開機的時候就存在,在每個端口第一次數據傳送的時候就會記錄對應的端口的MAC地址. 通過發送我們偽造的MAC地址數據包到交換機,就可以欺騙交換機刷新自己的MAC地址到端口的數據表,假設A主機連接在2口,假設我在4口,要sniffer A主機的數據,那么我就需要偽造一個ARP數據包,告訴交換機A主機MAC地址是在4口,那么交換機就會將本來發送到A主機的數據會轉送到4口上,這個時候我就可以監聽到了A主機的數據傳送了,這個就是基于交換網絡的arp欺騙sniffer過程。
    通過arp 欺騙,一般sniffer有幾個方法:
    1. 就是上面介紹的欺騙MAC進行數據竊聽,但由于A收不到數據,這樣它會重新發布ARP包,這樣導致sniffer很容易暴露,而且效果不好,A會丟包,同樣你的sniffer 一樣不會抓到全部的數據。
    2. 發起"中間人"竊聽。攻擊者可以在兩臺通訊主機之間插入一個中轉回路,這樣,攻擊者既可以sniffer到兩機的數據,同樣還可以不影響兩機的通訊。我們假設X是攻擊者的機器,A和B是目標機器。
    X如果想發起攻擊,首先在向A主機發送一個ARP包,讓A認為B機器IP對應的MAC地址是X主機的,同時再向B機器發送一個ARP包,讓B機器認為A機器IP對應的MAC地址是X主機的,如下圖:

    3. MAC flood攻擊
    通過快速(比如超過1000線程) 發送大量偽造MAC地址數據包,會造成交換機的MAC-端口表塞滿,但為了正常數據不被丟棄,大多數交換機會采取類似HUB一樣方式:廣播的方式發送數據。這個時候,再在網絡中任何一臺機器設置網卡為混雜模式,就可以sniffer到任何想要監聽的數據了。
    *注: 以上方法我并沒有正式測試過,理論上可行,實際上還有待驗證。
    上面介紹了幾種常見的基于switch網絡的arp spoofing sniffer方法,那么對于一個管理員來說,如何防范這種方式的數據嗅探呢?
    嚴格來說,沒有一種通用的方法來解決arp欺騙造成的問題,最大的可能就是采用靜態的ARP緩存表,由于靜態的ARP表不可以刷新,那么偽造的ARP包將會被直接丟棄。但這樣造成的問題就是,整個網絡中的所有機器,都必須要建立一個靜態的MAC表,在大型網絡中,會增加交換機的負擔,造成效率下降。如果機器更換,那么就要手工去更改MAC地址表,很顯然,在大型網絡中這種方式是不適用的。
    在這里需要注意的是,windows下即使你建立了靜態的MAC到IP的影射表,但是在收到了強制更新的ARP包后,依然會刷新機器的影射表,一樣會被sniffer到。
    高級交換機還提供了MAC綁定功能,指定交換機某個端口和某個MAC綁定,這種方法可以很有效的防止MAC克隆(clone)方式的竊聽,但是對于上述的arp 欺騙攻擊效果不大。
    最可靠的方法就是采用第三方軟件來解決,Arpwatch是一個運行在Unix平臺下的免費工具,他可以檢測到網絡中所有MAC地址的變化,一旦網絡中的MAC地址有變化,它就會發送一封email到指定地點。

    后記:這篇小文寫的很簡短,其實在交換網絡中還有其他幾種攻擊方法,比如MAC clone等,而且交換網絡中的sniffer方法還不止這一種,我這里只是介紹最常見,容易發生和編程實現的sniffer方法,希望對大家有所幫助。本人水平有限,如有錯誤,請不吝指責

    posted on 2011-10-26 10:22 linyawen 閱讀(...) 評論(...) 編輯 收藏

    轉載于:https://www.cnblogs.com/linyawen/archive/2011/10/26/2224828.html

    總結

    以上是生活随笔為你收集整理的交换网络中的sniffer讨论-基于交换网络的ARP spoofing sniffer的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。