MAC地址泛洪攻擊

一.MAC泛洪攻擊的原理
  MAC泛洪攻擊主要是利用局域網交換機的mac學習和老化機制。
  1.1交換機的工作流程如下:  
  局域網中的pc1發送數據幀給pc2,經過交換機時,交換機會在內部mac地址表中查找數據幀中的目標mac地址,如果找到就將該數據幀發送到相應的端口,如果找不到,交換機就會向入端口以外的所有端口發送此數據幀(所謂的廣播,不過不是廣播幀,廣播幀的目的mac地址是全F)。

由此可以看到交換機實現交換功能的關鍵就是內部的mac地址表,那這個內部mac地址是怎麼形成的呢?有什麼特性呢?接下來就要講解一下交換機的mac學習和老化機制。

1.2 交換機的mac學習機制
   1. 首先咱們看一下內部mac表的結構,內部mac表都是有大小的,一般8k左右,一但mac表滿了,其他mac地址就加不進來:
   在這裏插入圖片描述
    內部mac表是將主機的mac地址和連接到交換機上的端口號進行綁定,這樣可以根據mac地址找到端口進行轉發。
     2.一開始的時候,沒有主機連接,交換機內的mac表是空白的,這時候就要進行學習。
  下面咱們幻想出一個場景: PC1這時候想往PC2發送數據,數據幀經過交換機的時候,交換機會把數據幀中的源mac地址和進入的端口號記錄到mac表中; 由於一開始mac表中沒有PC2的mac地址和端口綁定,所以交換機會將這個數據幀進行全網轉發,就是所謂的廣播,也叫泛洪。
  在這裏插入圖片描述

  • 交換機將所有數據幀進行全網轉發後,每臺主機的協議棧會比對數據幀的目的mac地址是否和自身的一樣,如果一樣就進行應答,如果不一樣,就進行丟棄(注意:那些mac地址不相同的主機網卡也會接收到數據幀,只是不予理會,對網卡進行抓包是能看到數據幀的)。
  • 這個時候,PC2接收到了數據幀,並進行應答。應答數據幀經過交換機的時候,交換機會將應答數據幀的源mac地址和端口號學習到mac表中,也就是PC2的mac地址和端口號綁定。
  • 交換機根據應答數據幀的目的mac地址,開始查詢mac表,發現PC1的記錄存在,就根據這綁定的端口號,直接將應答數據幀發給了PC1。這就是整個mac地址表的學習過程。
    在這裏插入圖片描述
     1.3 交換機的mac老化機制
        若交換機與某臺主機長時間未通信,交換機就會把該主機的mac地址從mac地址表裏刪除掉,等下次通信時重新學習地址。
     1.4 泛洪攻擊的可能性
  • 正常的通信是除非一開始mac表中沒有目標主機的mac和端口,這樣才進行數據廣播,只要mac表中有相應的綁定關係,之後兩臺主機間的 通信,都是由交換機直接根據mac和端口綁定進行轉發,其他的主機是獲取不到這兩臺主機之間的數據的。
  • 泛洪攻擊的目標就是想獲取主機之間的通信數據。要想達到這個目的,就需要強迫交換機進行數據廣播,那就要實現mac表中沒有目標主機 的mac和端口綁定。泛洪攻擊的實現方法就是通過僞造大量的未知mac地址進行通信,交換機進行不斷的學習,很快mac表就會被充滿,這樣正常的主機的mac地址在經過老化之後,就無法再添加到mac地址表中,導致之後的數據都變成了廣播。
    在這裏插入圖片描述
    ftp服務器:我在一臺windows主機上使用FileZilla Server搭建了一個ftp服務器,ip地址爲10.170.62.240。ftp的賬號爲qiye,密碼爲qiye123789。
      PC1: 局域網中的另一臺主機,win7操作系統,作爲ftp的客戶機,ip地址爲10.170.56.82。
      PC2:我的個人筆記本電腦作爲攻擊機,kali系統,ip地址爲10.170.39.165。

三.實戰攻擊

  • 實施mac泛洪攻擊使用的工具是kali系統自帶的macof,用來發送大量僞造的mac地址的數據包。
  • 第一步,我在PC2上打開macof,並且開啓多個窗口運行,力求以儘快的速度,填滿交換機的mac表。
    在這裏插入圖片描述
    與此同時,在開啓一個窗口,使用tcpdump進行抓包,抓取端口爲21的ftp數據包。
    在這裏插入圖片描述
     第二步,我使用PC1登錄ftp服務器。既可以在瀏覽器中登錄,也可以使用win7自帶的ftp客戶端。
     在這裏插入圖片描述
     在這裏插入圖片描述
     第三步,查看PC2中是否抓包廣播出來的ftp登錄信息。
     在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
     四.防禦手段

限定交換機接入的端口的mac數量。例如:設置該交換機的該端口可以學習8個mac地址,超過了8個mac地址就停止學習,丟棄後來的mac。一般高級的交換機都有這項功能。

發佈了30 篇原創文章 · 獲贊 2 · 訪問量 1966
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章