萬盛學電腦網

 萬盛學電腦網 >> 安全資訊防護 >> 不用ARP嗅探和會話劫持進行MAC欺騙

不用ARP嗅探和會話劫持進行MAC欺騙

  ARP欺騙的攻擊和防御技術都比較成熟了,這裡也不再闡述。此次重點講解如何不用ARP欺騙進行嗅探以及會話劫持的技術原理,實際的攻擊方法是進行MAC欺騙。

  一、原理:

  在開始之前我們先簡單了解一下交換機轉發過程:交換機的一個端口收到一個數據幀時,首先檢查改數據幀的目的MAC地址在MAC地址表(CAM)對應的端口,如果目的端口與源端口不為同一個端口,則把幀從目的端口轉發出去,同時更新MAC地址表中源端口與源MAC的對應關系;如果目的端口與源端口相同,則丟棄該幀。

  有如下的工作場景:

  一個4口的switch,端口分別為Port.A、Port.B、Port.C、Port.D對應主機 A,B,C,D,其中D為網關。

  當主機A向B發送數據時,A主機按照OSI往下封裝數據幀,過程中,會根據IP地址查找到B主機的MAC地址,填充到數據幀中的目的MAC地址。發送之前網卡的MAC層協議控制電路也會先做個判斷,如果目的MAC相同於本網卡的MAC,則不會發送,反之網卡將這份數據發送出去。Port.A接收到數據幀,交換機按照上述的檢查過程,在MAC地址表發現B的MAC地址(數據幀目的MAC)所在端口號為Port.B,而數據來源的端口號為Port.A,則交換機將數據幀從端口Port.B轉發出去。B主機就收到這個數據幀了。

  這個尋址過程也可以概括為IP->MAC->PORT,ARP欺騙是欺騙了IP/MAC的應關系,而MAC欺騙則是欺騙了MAC/PORT的對應關系。比較早的攻擊方法是泛洪交換機的MAC地址,這樣確實會使交換機以廣播模式工作從而達到嗅探的目的,但是會造成交換機負載過大,網絡緩慢和丟包甚至癱瘓,我們不采用這種方法。

  二、實戰

  工作環境為上述的4口swith,軟件以cncert的httphijack 為例,應用為A主機劫持C主機的數據。

  以下是劫持過程(da為目的MAC,sa為源MAC)

  1.A發送任意da=網關.mac、sa=B.mac的數據包到網關。

  這樣就表明b.mac對應的是port.a,在一段時間內,交換機會把發往b.mac的數據幀全部發到a主機。這個時間一直持續到b主機發送一個數據包,或者另外一個da=網關.mac、sa=b.mac的數據包產生前。

  2.A 主機收到網關發給B的數據,記錄或修改之後要轉發給B,在轉發前要

  發送一個請求B.MAC的廣播,這個包是正常的

  MAC信息為:da=FFFFFFFFFF、sa=a.mac。

  這個數據幀表明了a.mac對應port.a,同時會激發b主機響應一個應答包

  MAC信息為:da=a.mac、sa=b.mac

  這個數據幀表明了 b.mac對應port.b

  至此,對應關系已經恢復,A主機將劫持到的數據可順利轉發至B

copyright © 萬盛學電腦網 all rights reserved