1. 程式人生 > >ARP欺騙與MITM(中間人攻擊)例項

ARP欺騙與MITM(中間人攻擊)例項

 

 

  1. ARP協議(address resolution protocol):地址解析協議

    一臺主機和另一臺主機通訊,要知道目標的IP地址,但是在區域網中傳輸資料的網絡卡卻不能直接識別IP地址,所以用ARP解析協議將IP地址解析成MAC地址。ARP協議的基本功能就是通過目標裝置的IP地址,來查詢目標裝置的mac地址。

    在區域網的任意一臺主機中,都有一個ARP快取表,裡面儲存本機已知的此區域網中各主機和路由器的IP地址和MAC地址的對照關係。ARP快取表的生命週期是有時限的(一般不超過20分鐘)。

  2. MITM攻擊例項:

    網路拓撲:

     

    網路環境:

  • 無線路由器一臺

    型號:Fast FW300R

IP:192.168.1.1

MAC地址:00:5A:39:1A:BB:BE

  • 被攻擊主機PC 1

    系統版本:Windows 10 Enterprise

    IP:192.168.1.106

    MAC地址:00:5A:39:1A:BB:BE

  • 中間人(攻擊者)主機PC 0

    系統版本:Kali Linux 2.0

IP:192.168.1.113

MAC地址:00:0C:29:03:85:DC

由於實驗條件有限,故中間人主機PC 0在虛擬機器內執行。但實際效果與真實測試相同。

 

攻擊測試:

使用Kali Linux中的嗅探工具ettercap-NG對目標主機進行ARP欺騙,並截獲明文密碼。

首先開啟終端,輸入ettercap -G 啟動ettercap (ettercap要求使用root許可權,使用sudo或者切換到root使用者執行)的圖形介面模式,如圖:

 

開啟ettercap-NG 的圖形介面之後點選"sniff",選擇"unified sniffing"然後根據自己的要求選擇要抓包的網絡卡。

使用NMAP工具檢視區域網內所有主機:

 

根據返回資料可知,我的閘道器無線路由器的IP地址為192.168.1.1,MAC地址為:00:5A:39:1A:BB:BE,根據MAC地址,分析出 深圳Fast科技公司出產。

此外有幾臺蘋果的裝置,是室友的幾部蘋果手機,此外還有一部Vivo手機,BBK步步高電子產品出產,還有一臺小米科技出產的小米手機。此外,還有一臺名為 Hon Hai Precision 的裝置,經查原來其名為鴻海精密集團,富士康是旗下的公司,應該就是我的網絡卡生產商了。 還有一個提示資訊為"Host is up"的主機即為本次測試的中間人(攻擊者)的主機。

篩選後,得到資訊如下:

主機名

IP地址

MAC地址

Fast路由器(閘道器)

192.168.1.1 

00:5A:39:1A:BB:BE 

被攻擊主機PC 1

192.168.1.106 

C0:CB:38:6C:5A:B3

中間人(黑客)主機PC 2

192.168.1.113

00:0C:29:03:85:DC

 

返回ettercap,然後單擊Hosts選項,選擇Scan for host,待掃描完成之後再選擇Scan for host,然後選擇Host list,此時可以看到ettercap-NG已經掃描的主機列表,如圖所示:

 

然後就可以選擇要攻擊的目標了, 選擇192.168.1.106的IP地址,點選Add to Target 1(新增到目標1),然後選擇閘道器的IP地址192.168.1.1,點選Add to Target 2(新增到目標2),可以看到ettercap提示成功加入目標,如圖所示:

 

然後明確攻擊方式,這裡採用ARP欺騙的方式,告訴主機192.168.1.106我(192.168.1.113)才是閘道器(192.168.1.1),使得 192.168.1.106的主機把所有資料流量全部發給我,然後抓包截獲密碼。

明確攻擊方式之後,我們選擇"mitm"—"arp poisoning"— "Sniff remote connections" — "確定"

這時可以看看目標主機的arp地址表,如圖所示,ARP快取毒化成功。

攻擊之前:

 

 

點選確定攻擊之後:

 

 

此時發現ARP快取表已經毒化成功!

然後在攻擊主機中選擇"Start" —  "Start sniffing" 開始監聽。

此時使用Wireshark抓包工具可以發現,被攻擊主機的所有流量都是通過攻擊者的主機發送出去的,即被攻擊主機誤認為192.168.1.113是它的閘道器。

此時便可以實現很多功能。例如抓包獲取密碼,Cookies欺騙,DNS欺騙,惡意程式替換等等,如通過driftnet過濾嗅探圖片:

 

  • ARP攻擊防範:

1、雙向繫結:

一般來說,在小規模網路中,比較推薦使用雙向繫結,也就是在路由器和終端上都進行IP-MAC繫結的措施,它可以對ARP欺騙的兩邊,偽造閘道器 和截獲資料,都具有約束的作用。這是從ARP欺騙原理上進行的防範措施,也是最普遍應用的辦法。它對付最普通的ARP欺騙是有效的。

2、ARP防火牆:

在一些防毒軟體中加入了ARP防火牆的功能,它是通過在終端電腦上對閘道器進行繫結,保證不受網路中假閘道器的影響,從而保護自身資料不被竊取的措施。ARP防火牆使用範圍很廣,但也會有問題,如,它不能保證繫結的閘道器一定是正確的。如果一個網路中已經發生了ARP欺騙,有人在偽造閘道器,那麼,ARP防火牆上來就會繫結這個錯誤的閘道器,這是具有極大風險的。

3、VLAN和交換機埠繫結:

通過劃分VLAN和交換機埠繫結來防範ARP,也是常用的防範方法。做法是細緻地劃分VLAN,減小廣播域的範圍,使ARP在小範圍內起作 用,而不至於發生大面積影響。同時,一些網管交換機具有MAC地址學習的功能,學習完成後,再關閉這個功能,就可以把對應的MAC和埠進行繫結,避免了病毒利用ARP攻擊篡改自身地址。也就是說,把ARP攻擊中被截獲資料的風險解除了。