1. 程式人生 > >中間人攻擊——ARP欺騙的原理、實戰及防禦(轉載)

中間人攻擊——ARP欺騙的原理、實戰及防禦(轉載)

1.1 什麼是閘道器

  首先來簡單解釋一下什麼是閘道器,閘道器工作在OSI七層模型中的傳輸層或者應用層,用於高層協議的不同網路之間的連線,簡單地說,閘道器就好比是一個房間通向另一個房間的一扇門。

1.2 ARP協議是什麼

  ARP(Address Resolution Protocol)地址轉換協議,工作在OSI模型的資料鏈路層,在乙太網中,網路裝置之間互相通訊是用MAC地址而不是IP地址,ARP協議就是用來把IP地址轉換為MAC地址的。而RARP和ARP相反,它是反向地址轉換協議,把MAC地址轉換為IP地址。

  假設A(192.168.1.2)與B(192.168.1.3)在同一區域網,A要和B實現通訊。A首先會發送一個數據包到廣播地址(192.168.1.255),該資料包中包含了源IP(A)、源MAC、目的IP(B)、目的MAC,這個資料包會被髮放給區域網中所有的主機,但是隻有B主機會回覆一個包含了源IP(B)、源MAC、目的IP(A)、目的MAC的資料包給A,同時A主機會將返回的這個地址儲存在ARP快取表中。

1.3 ARP欺騙原理

  上面提到過了ARP快取表,在每臺主機都有一個ARP快取表,快取表中記錄了IP地址與MAC地址的對應關係,而區域網資料傳輸依靠的是MAC地址。

  假設主機 A 192.168.1.2,B 192.168.1.3,C 192.168.1.4; 閘道器 G 192.168.1.1; 在同一區域網,主機A和B通過閘道器G相互通訊,就好比A和B兩個人寫信,由郵遞員G送信,C永遠都不會知道A和B之間說了些什麼話。但是並不是想象中的那麼安全,在ARP快取表機制存在一個缺陷,就是當請求主機收到ARP應答包後,不會去驗證自己是否向對方主機發送過ARP請求包,就直接把這個返回包中的IP地址與MAC地址的對應關係儲存進ARP快取表中,如果原有相同IP對應關係,原有的則會被替換。

  這樣C就有了偷聽A和B的談話的可能,繼續思考上面的例子:

  C假扮郵遞員,首先要告訴A說:“我就是郵遞員” (C主機向A傳送構造好的返回包,源IP為G 192.168.1.1,源MAC為C自己的MAC地址),愚蠢的A很輕易的相信了,直接把“C是郵遞員”這個資訊記在了腦子裡;

  C再假扮A,告訴郵遞員:“我就是A” (C向閘道器G傳送構造好的返回包,源IP為A 192.168.1.2,源MAC地址為自己的MAC地址),智商捉急的郵遞員想都沒想就相信了,以後就把B的來信送給了C,C當然就可以知道A和B之間聊了些什麼

  上面ABCG的故事就是ARP雙向欺騙的原理了

  ARP單向欺騙就更好理解了,C只向A傳送一個返回包,告訴A:G 192.168.1.1 的MAC地址為 5c-63-bf-79-1d-fa(一個錯誤的mac地址),A把這個資訊記錄在了快取表中,而G的快取表不變,也就是說,A把資料包給了C,而G的包還是給A,這樣就是ARP單向欺騙了。

 2.1 實戰ARP欺騙

  ARP欺騙又被稱為ARP毒化,屬於中間人攻擊,我用虛擬機器來模擬一下ARP欺騙的全過程

  首先,看一下

ARP快取表中預設已經存在了閘道器IP、MAC地址的記錄

  看一下目標主機的ARP快取表

目標IP與本機IP

再進行arp欺騙之前必須要開啟IP轉發,否則當欺騙成功之後,目標機會斷網,這樣會被對方察覺

  sysctl -w net.ipv4.ip_forward=1  或者 echo 1 > /proc/sys/net/ipv4/ip_forward

已經成功開啟IP轉發

向目標192.168.124.133傳送返回包,包含內容:

  源ip:192.168.124.2

  源MAC:00:0c:29:86:a1:04

  此時再來看目標主機ARP快取

可以看出目標主機arp快取已經發生了變化,在快取表中所記錄的閘道器(192.168.124.2)的MAC已經變為了攻擊者的MAC

  以上就是一次簡單的ARP欺騙了

2.2 ARP欺騙的危害

  區域網之間主機通訊會收到影響,如果是閘道器欺騙,上網際網路也會受影響

  黑客利用ARP欺騙可以竊取使用者敏感資訊、掛馬等

  在這裡我簡單演示一下ARP欺騙嗅探Telnet賬戶密碼

3 怎樣防範ARP欺騙

  1.在主機繫結閘道器MAC與IP地址為靜態(預設為動態),命令:arp -s 閘道器IP 閘道器MAC

  2.在閘道器繫結主機MAC與IP地址

  3.使用ARP防火牆

本文由i春秋學院提供,原文地址:    http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=1739&highlight=防?from=bky