ARP病毒的攻擊原理分析

才智咖 人氣:5.46K

摘要:最近校區域網中ARP病毒頻繁發作,給校內使用者造成不便。本文從ARP協議入手,深入分析了ARP安全漏洞及病毒攻擊原理,並對ARP欺騙的原理與攻擊方式做了深入的研究,闡明瞭ARP病毒欺騙的過程,給使用者提出解決這個問題的方法。
  關鍵詞:網路協議 IP地址 ARP病毒
  
  1. 引言
  
  從上半年開始在學校的區域網爆發了“ARP欺騙”木馬病毒,病毒發作時其症狀表現為計算機網路連線正常,能登陸成功卻無法開啟網頁,極大地影響了區域網使用者的正常使用。
  
  2. ARP協議的工作原理
  
  在乙太網中傳輸的資料包是以太包,而以太包的定址是依據其首部的MAC地址。僅僅知道某主機的IP地址並不能讓核心傳送一幀資料給此主機,核心必須知道目的主機的MAC地址才能傳送資料。ARP協議的作用就是在於把32位的IP地址變換成48位的以太地址。
  在以太區域網內資料包傳輸依靠的是MAC地址,IP地址與MAC對應的關係依靠ARP快取表,每臺主機(包括閘道器)都有一個ARP快取表。在正常情況下這個快取表能夠有效保證資料傳輸的一對一性。我們可以在命令列視窗中,輸入命令ARP -A,進行檢視,輸入命令ARP -D進行重新整理。
  當資料來源主機需要將一個數據包要傳送到目的主機時,會首先檢查自己ARP列表中是否存在該IP地址對應的MAC地址,如果存在,就直接將資料包傳送到這個MAC地址;如果不存在,就向本地網段發起一個ARP請求的廣播包,詢問目的主機的IP所對應的MAC地址。網路中所有的主機收到這個ARP請求後,會檢查資料包中的目的IP是否和自己的IP地址一致。如果不一致就不作迴應;如果一致,該主機首先將傳送端的MAC地址和IP地址新增到自己的ARP列表中,如果ARP表中已經存在該IP的資訊,則將其覆蓋,後給資料來源主機發送一個ARP響應資料包,告訴對方自己是它需要查詢的MAC地址;源主機收到這個ARP響應資料包後,將得到的目的主機的IP地址和MAC地址新增到自己的ARP列表中,並利用此資訊開始資料的傳輸。若資料來源主機一直沒有收到ARP響應資料包,表示ARP查詢失敗。
  
  3. ARP病毒的欺騙原理和欺騙過程
  
  ARP欺騙的目的`就是為了實現全交換環境下的資料監聽,大部分的木馬或病毒使用ARP欺騙攻擊也是為了達到這個目的。
  假設一個只有三臺電腦組成的區域網,該區域網由交換機(Switch)連線。其中一個電腦名叫A,代表攻擊方;一臺電腦叫S,代表源主機,即傳送資料的電腦;令一臺電腦名叫D,代表目的主機,即接收資料的電腦。這三臺電腦的IP地址分別為:,,,MAC地址分別為:MAC-A,MAC-S,MAC-D。
  現在,S電腦要給D電腦傳送資料,則要先查詢自身的ARP快取表,檢視裡面是否有這臺電腦的MAC地址,如果有,就將MAC-D封裝在資料包的外面,直接傳送出去即可。如果沒有,S電腦便向全網路傳送一個這樣的ARP廣播包:S的IP是,硬體地址是MAC-S,要求返回IP地址為的主機的硬體地址。而D電腦接受到該廣播,經核實IP地址,則將自身的IP地址和MAC-D地址返回到S電腦。現在S電腦可以在要傳送的資料包上貼上目的地址MAC-D傳送出去,同時它還會動態更新自身的ARP快取表,將-MAC-D這一條記錄新增進去,這樣,等S電腦下次再給D電腦傳送資料的時候,傳送ARP廣播包進行查詢了。這就是正常情況下的資料包傳送過程。

ARP病毒的攻擊原理分析

但是,上述資料傳送機制有一個致命的缺陷,即它是建立在對區域網中電腦全部信任的基礎上的,

TAGS:ARP 攻擊 病毒