天天看點

ARP攻擊與防禦

ARP簡述

ARP協定名為“位址解析協定”,用來進行給定ip位址查找對應的mac位址,因為主機之間的通信依靠的是mac位址。

協定本身無任何驗證措施,且查詢方式為廣播請求,單點傳播回應,任何主機都可以回應該請求,是以極為不安全。

攻擊原理

  • 通過ARP協定資料包對目标主機的ARP快取記錄進行更改。

假設有1、2、3三台主機,其ip與mac分别為ip1、mac1,ip2、mac2,ip3、mac3。

  1. pc1與pc2正常通信

此時pc1的ARP快取記錄中存入的pc2資訊正确,為ip2對應mac2,可以正确找到pc2

ARP攻擊與防禦
  1. pc3對作為中間人攻擊者進行欺騙

pc3向pc1不斷發送“我是ip2,我的mac位址是mac3”,這樣以來,pc1的ARP快取記錄中的ip2對應的mac位址變成了mac3

ARP攻擊與防禦
  1. ARP快取記錄被修改後pc1要和pc2通信

此時pc1的ARP快取記錄中pc2對應的是mac3,是以當pc1要和pc2通信時,就會找到pc3的mac位址,進而将資料發送給pc3

ARP攻擊與防禦

此時pc1要發給pc2的資料被pc3攔截,如果pc3再和pc2建立通信,将資料檢視或者更改後發給pc2,就達到了在不被輕易發現的情況在進行竊取或攻擊。

假如pc2是網關路由,那麼此時pc1的所有網絡流量将經過攻擊者pc3,此時攻擊者就可以對pc1的網絡進行限制或引流,并且pc1的所有賬戶資訊、資料資訊都将被竊取,這将非常危險!

攻擊示例

示例為僞裝網關路由進行欺騙攻擊

  1. 打開兩個虛拟機,攻擊主機為winXP,目标主機為kali,檢視兩個主機的ip及mac

winXP:

ARP攻擊與防禦

kali:

ARP攻擊與防禦

得知:

winXP: IP為192.168.88.130 MAC為 ……1d

kali: IP為192.168.88.129 MAC為 ……1a

網關路由:IP為192.168.88.1 MAC為 ……08

網關路由:IP為192.168.88.2 MAC為 ……ab

  1. 攻擊者主機通過廣播ARP請求來查詢線上主機

由于ARP請求為廣播請求,是以同一區域網路下的所有主機都會收到請求,如果查詢的ip是自己ip,那麼該主機就會回應

ARP攻擊與防禦
ARP攻擊與防禦

圖示為攻擊者192.168.88.130廣播ARP請求包,從1到254逐個詢問,此時存活的主機收到該請求就會進行回應

ARP攻擊與防禦

上圖所示為網關路由、被攻擊者主機分别回應了該請求,并且将自己的ip和mac展示了出來。

  1. 向存活主機發送虛假ARP包

攻擊者已經通過廣播請求得到了存活主機的ip及mac,以及網關路由的ip及mac,此時就可以向區域網路内的主機發送虛假ARP包來告訴被攻擊者:ip是192.168.88.2(即網管ip)的mac是……1a(即攻擊者mac)

ARP攻擊與防禦

由于ARP快取記錄是動态更新的,是以欺騙包必須不停地發送。

這樣以來,被攻擊者的ARP快取記錄中網關ip對應的mac就變成了攻擊者的mac。

ARP攻擊與防禦
  1. 被攻擊者進行資料通信

此時當被攻擊者進行資料通信時,就會在攻擊者的電腦上顯示資料資訊,此處用ping114.114.114.114來測試

kali進行ping操作

ARP攻擊與防禦

下方顯示ping成功

用winXP攻擊主機進行資料包分析

ARP攻擊與防禦

攔截發現在kali上的ping操作已經被顯示在了攻擊者主機上,來源是192.168.88.129,目标是114.114.114.114

  1. 被攻擊主機進行賬号密碼登陸

用kali登陸telnet服務進行測試,預設賬号密碼皆為rviews

ARP攻擊與防禦

且密碼輸入時為不可見

ARP攻擊與防禦

此時在winXP即攻擊者主機上即可顯示登陸資料

ARP攻擊與防禦
ARP攻擊與防禦

利用wireshark中的TCP流資料分析即可得出賬号和密碼

ARP攻擊與防禦
ARP攻擊與防禦

此時的攻擊目的已經達成,使用者的賬戶密碼資料資訊已被竊取。

ARP防禦

ARP防禦有以下幾種:

  1. 安裝防火牆軟體或安全軟體,這是最簡單的方法
  2. 靜态ARP綁定

預設情況下ARP表中的映射都是動态的,為了友善更新

ARP攻擊與防禦

可以通過指令 arp -s ip位址 mac位址 進行綁定,此處随意綁定一個作為測試

ARP攻擊與防禦
  1. 根據ARP攻擊的特性進行防禦

ARP攻擊事先需暴力查詢存活主機,是以可以根據這種有規律的廣播包來判斷該請求是否合法,達到防禦。

**

  • 學習整理,若有問題請指出。

**