天天看點

使用Kali Linux進行ARP斷網攻擊

使用Kali進行ARP斷網攻擊

1. ARP協定:

ARP(Address Resolution Protocol,位址解析協定),位于TCP/IP協定棧中的網絡層,負責将某個IP位址轉化成對應的MAC位址。

  • 主機發送資訊時将包含目标IP位址的ARP請求廣播到網絡上的所有主機,并接收傳回消息,以此确定目标的實體位址;
  • 收到傳回消息後将該IP位址和實體位址存入本機ARP緩存中并保留一定時間,下次請求時直接查詢ARP緩存以節約資源。
  • 位址解析協定是建立在網絡中各個主機互相信任的基礎上的,網絡上的主機可以自主發送ARP應答消息,其他主機收到應答封包時不會檢測該封包的真實性就會将其記入本機ARP緩存;
  • 由此攻擊者就可以向某一主機發送僞ARP應答封包,使其發送的資訊無法到達預期的主機或到達錯誤的主機,這就構成了一個ARP欺騙。

2. ARP攻擊原理:

ARP攻擊就是通過僞造IP位址和MAC位址實作ARP欺騙,能夠在網絡中産生大量的ARP通信量使網絡阻塞。攻擊者隻要持續不斷的發出僞造的ARP響應包就能更改主機ARP緩存中的IP-MAC條目,造成網絡中斷或中間人攻擊。

  • ARP攻擊主要是存在于區域網路網絡中,無法對外網進行攻擊。
  • 攻擊者向電腦A發送一個僞造的ARP響應,告訴主機A:電腦B的IP位址192.168.0.2對應的MAC位址是00-12-00-13-c6-14,電腦A信以為真,将這個對應關系寫入自己的ARP快取記錄中(不用廣播,直接查詢緩存表),以後發送資料時,将本應該發往電腦B的資料發送給了攻擊者。同樣的,攻擊者向電腦B也發送一個僞造的ARP響應,告訴電腦B:電腦A的IP位址192.168.0.1對應的MAC位址是00-12-00-13-c6-15,電腦B也會将資料發送給攻擊者。
  • 至此攻擊者就控制了電腦A和電腦B之間的流量,他可以選擇被動地監測流量,擷取密碼和其他涉密資訊,也可以僞造資料,改變電腦A和電腦B之間的通信内容。

3. ARP攻擊簡單示例:

在同一個區域網路下,兩台虛拟主機之間進行ARP攻擊。

攻擊者:kali。它的IP位址為192.168.73.136。被攻擊者Windows XP ,IP位址為192.168.73.138。

1> 首先,在Windows XP上通路網頁,檢視是否可以順利上網。

使用Kali Linux進行ARP斷網攻擊

2> 檢視兩個虛拟機的IP位址,檢視兩個主機IP是否在同一個IP網段。

kali linux : ifconfig eth0;

Windows XP:ipconfig/all;

使用Kali Linux進行ARP斷網攻擊
使用Kali Linux進行ARP斷網攻擊

3> 連通性測試。剛開始時沒有ping通,後來将Windows XP的防火牆關閉之後就可以Ping通了。

4> 檢視Windows XP的網關IP,為192.168.73.2。然後再執行ARP -a 檢視網關IP位址對應的MAC位址(正确的MAC位址)。

使用Kali Linux進行ARP斷網攻擊
使用Kali Linux進行ARP斷網攻擊

5> ARP 攻擊

在kali linux 上輸入 arpspoof -i eth0 -t 192.168.73.138 -r 192.168.73.2。

使用Kali Linux進行ARP斷網攻擊

6> 檢視攻擊效果。可以看出,在Windows XP上輸入arp -a時,兩次的MAC位址不同,說明ARP攻擊成功。此時Windows XP的主機再通路百度頁面時,将不能通路成功。(因為arp緩存表中緩存的是錯誤的網關MAC位址)。

使用Kali Linux進行ARP斷網攻擊
使用Kali Linux進行ARP斷網攻擊

最後CTRL+C停止攻擊之後,就可以繼續通路了。

4. MAC位址綁定:

在Windows XP上對網關MAC位址進行靜态綁定。這時候在用kali攻擊時就會發現網關的MAC位址沒有變化,還是正确的MAC位址。但是在這種情況下,通路網頁依舊是不能成功的,需要的是雙向的綁定。(之後會做補充)。