深入解析ARP欺騙*** 保證內網安全

  ARP(地址解析協議)是在僅知道主機的IP地址時確定其物理地址的一種協議。因IPv4和以太網的廣泛應用,其主要用作將IP地址翻譯爲以太網的MAC地址,但其也能在ATM和FDDI IP網絡中使用。本文將爲大家詳細剖析ARP欺騙,它主要分爲雙向欺騙和單向欺騙。
  一、ARP通訊協議過程
  由於局域網的網絡流通不是根據IP地址進行,而是按照MAC地址進行傳輸、計算機是根據mac來識別一臺機器。
  區域網內A要向主機B發送報文,會查詢本地的ARP緩存表,找到B的IP地址對應的MAC地址後,就會進行數據傳輸。如果未找到,則A廣播一個ARP請求報文(攜帶主機B的IP地址),網上所有主機包括B都收到ARP請求,但只有主機B識別自己的IP地址,於是向A主機發回一個ARP響應報文。其中就包含有B的MAC地址,A接收到B的應答後,就會更新本地的ARP緩存。接着使用這個MAC地址發送數據(由網卡附加MAC地址)。
  二、一次完整的ARP欺騙
  ARP 欺騙分爲兩種,一種是雙向欺騙,一種是單向欺騙:
  1.單向欺騙
  A的地址爲:IP:192.168.10.1 MAC: AA-AA-AA-AA-AA-AA
  B的地址爲:IP:192.168.10.2 MAC: BB-BB-BB-BB-BB-BB
  C的地址爲:IP:192.168.10.3 MAC: CC-CC-CC-CC-CC-CC
  A和C之間進行通訊。但是此時B向A發送一個自己僞造的ARP應答,而這個應答中的數據爲發送方IP地址是192.168.10.3(C的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(C的MAC地址本來應該是CC-CC-CC-CC-CC-CC,這裏被僞造了)。當A接收到B僞造的ARP應答,就會更新本地的ARP緩存(A被欺騙了),這時B就僞裝成C了。同時,B同樣向C發送一個ARP應答,應答包中發送方IP地址四192.168.10.1(A的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(A的MAC地址本來應該是AA-AA-AA-AA-AA-AA),當C收到B僞造的ARP應答,也會更新本地ARP緩存(C也被欺騙了),這時B就僞裝成了A.這樣主機A和C都被主機B欺騙,A和C之間通訊的數據都經過了B.主機B完全可以知道他們之間說的什麼:)。這就是典型的ARP欺騙過程。
  掐斷A 與 c的通訊,實現原理:b 向A 發送一條ARP 數據包,內容爲:c的地址是00:00:00:00:00:00 (一個錯誤的地址),那麼A 此後向c發的數據包都會發到00,而這個地址是錯誤的,所以通訊中斷了,但是要注意了,這裏只是A ——> c 中斷了,c ——> A 沒有中斷,所以這個叫單向欺騙。
  掐斷c與A 的通訊,實現原理和第一條一樣,如果和第一條一起發,那麼A 和c 的通訊就完全中斷了,即:A <—— ×——> c.
  嗅探A 與c 的通訊,實現原理:b 向A 發送一條ARP 數據包,內容爲:c的地址是AA:BB:CC:DD:EE:FF (b自己的地址),也就是說,b 對 A 說:我纔是c,於是A 把向c發送的數據都發給b 了,b得到數據後就可以爲所欲爲了,可以直接丟棄,那麼通訊中斷,也可以再次轉發給c,那麼又形成迴路,B當了箇中間人,監視A 和c 的通訊。此時你就可以用CAIN等任何抓包工具進行本地嗅探了。
  2.ARP雙向欺騙原理
  A要跟C正常通訊,B向A說我是才C.B向C說我纔是A,那麼這樣的情況下把A跟C的ARP緩存表全部修改了。以後通訊過程就是 A把數據發送給B,B在發送給C,C把數據發送B,B在把數據給A.
  ***主機發送ARP應答包給被***主機和網關,它們分別修改其ARP緩存表爲, 修改的全是***主機的MAC地址,這樣它們之間數據都被***主機截獲。
  三、雙向欺騙與單向欺騙的區別
  單向欺騙:是指欺騙網關,分別有三個機器 A(網關) B(server) C(server) .A要跟C正常通訊。B給A說我纔是C,那麼A就把數據就給C了,此時A就把原本給C的數據給了B了,A修改了本地的緩存表,但是C跟A的通訊還是正常的。只是A跟C的通訊不正常。
  雙向欺騙:是欺騙網關跟被***的兩個機器,A(網關) B(server) C(server),A要跟C正常通訊。B對A說我是C,B對C說我是A,那麼這樣的情況下A跟C的ARP緩存表全部修改了,發送的數據全部發送到B那裏去了。
  四、找到ARP欺騙主機
  1.我們可以利用ARPkiller的"Sniffer殺手"掃描整個局域網IP段,然後查找處在"混雜"模式下的計算機,就可以發現對方了。檢測完成後,如果相應的IP是綠帽子圖標,說明這個IP處於正常模式,如果是紅帽子則說明該網卡處於混雜模式。它就是我們的目標,就是這個傢伙在用網絡執法官在搗亂。
  2.使用tracert命令在任意一臺受影響的主機上,在DOS命令窗口下運行如下命令:tracert61.135.179.148.假定設置的缺省網關爲10.8.6.1,在跟蹤一個外網地址時,第一跳卻是10.8.6.186,那麼,10.8.6.186就是病毒源。原理:中毒主機在受影響主機和網關之間,扮演了“中間人”的角色。所有本應該到達網關的數據包,由於錯誤的MAC地址,均被髮到了中毒主機。此時,中毒主機越俎代庖,起了缺省網關的作用。
  五、防護辦法
  1.最常用的方法就是做雙綁定, 本地跟路由都做了綁定(注:mac地址綁定)
  2.彩影ARP防火牆
  六、***常用的突破 ARP 防火牆的嗅探技術
  ***常用的突破 ARP 防火牆的嗅探技術,流程如下:
  破ARP 防火牆的原理,就是不停地發包到網關(每秒幾十次),對網關說我是真的機器,避免其他機器冒充本機。(比如目標機器是A 你是B 你向網關說我是才A),由於你發的頻率高,所以在很短的時間週期內,網關認爲你是受害機器,So,目標機器的正常數據包就發過來啦。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章