安全 了解ARP的攻擊原理 阻止ARP攻擊

2021-12-30 00:12:25 字數 3411 閱讀 2139

你是否遇到過在區域網中上網時會突然掉線,過一段時間後又會恢復正常。或者是客戶端狀態頻頻變紅,使用者頻繁斷網,ie瀏覽器頻繁出錯,以及一些常用軟體出現故障等。又或者是你所在的區域網是通過身份認證上網的,會突然出現可認證,但不能上網的現象(無法ping通閘道器)。如果出現了上述狀況,那你要小心了,因為你很可能受到了arp的攻擊。

那麼什麼是arp呢?如何受到攻擊的?該怎麼解決呢?下文將給你進行一一解答。

一 什麼是arp:

arp是「address resolution protocol」(位址解析協議)的縮寫。在區域網中,網路中實際傳輸的是「幀」,幀裡面是有目標主機的mac位址的。在乙太網中,乙個主機和另乙個主機進行直接通訊,必須要知道目標主機的mac位址。但這個目標mac位址是如何獲得的呢?它就是通過位址解析協議獲得的。所謂「位址解析」就是主機在傳送幀前將目標ip位址轉換成目標mac位址的過程。arp協議的基本功能就是通過目標裝置的ip位址,查詢目標裝置的mac位址,以保證通訊的順利進行。

二 arp的工作原理:

只有了解了arp的工作原理,我們才能更有效地阻止arp的攻擊。簡單地說,arp的原理就是:首先,每台主機都會在自己的arp緩衝區中建立乙個 arp列表,以表示ip位址和mac位址的對應關係。當源主機需要將乙個資料報要傳送到目的主機時,會首先檢查自己 arp列表中是否存在該 ip位址對應的mac位址,如果有﹐就直接將資料報傳送到這個mac位址;如果沒有,就向本地網段發起乙個arp請求的廣播包,查詢此目的主機對應的mac位址。此arp請求資料報裡包括源主機的ip位址、硬體位址、以及目的主機的ip位址。網路中所有的主機收到這個arp請求後,會檢查資料報中的目的ip是否和自己的ip位址一致。如果不相同就忽略此資料報;如果相同,該主機首先將傳送端的mac位址和ip位址新增到自己的arp列表中,如果arp表中已經存在該ip的資訊,則將其覆蓋,然後給源主機傳送乙個 arp響應資料報,告訴對方自己是它需要查詢的mac位址;源主機收到這個arp響應資料報後,將得到的目的主機的ip位址和mac位址新增到自己的arp列表中,並利用此資訊開始資料的傳輸。如果源主機一直沒有收到arp響應資料報,表示arp查詢失敗。

下面舉個簡單的例子:

假設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

那麼根據上面的原理,我們簡單說明這個過程:a要和b通訊,a就需要知道b的mac位址,於是a傳送乙個arp請求廣播(誰是192.168.10.2 ,請告訴192.168.10.1),當b收到該廣播,就檢查自己,結果發現和自己的一致,然後就向a傳送乙個arp單播應答(192.168.10.2 在bb-bb-bb-bb-bb-bb)。

三 受到攻擊的原因:arp欺騙

其實,此起彼伏的瞬間掉線或大面積的斷網大都是arp欺騙在作怪。從影響網路連線通暢的方式來看,arp欺騙分為二種,一種是對路由器arp表的欺騙;另一種是對內網pc的閘道器欺騙。

第一種arp欺騙的原理是——截獲閘道器資料。它通知路由器一系列錯誤的內網mac位址,並按照一定的頻率不斷進行,使真實的位址資訊無法通過更新儲存在路由器中,結果路由器的所有資料只能傳送給錯誤的mac位址,造成正常pc無法收到資訊。第二種arp欺騙的原理是——偽造閘道器。它的原理是建立假閘道器,讓被它欺騙的pc向假閘道器發資料,而不是通過正常的路由器途徑上網。在pc看來,就是上不了網了,「網路掉線了」。

下面通過例項來講講arp欺騙的過程:

每台安裝有tcp/ip協議的電腦裡都有乙個arp快取表,表裡的ip位址與mac位址是一一對應的如下表所示。

主機 ip位址 mac位址

a 192.168.16.1 aa-aa-aa-aa-aa-aa

b 192.168.16.2 bb-bb-bb-bb-bb-bb

c 192.168.16.3 cc-cc-cc-cc-cc-cc

d 192.168.16.4 dd-dd-dd-dd-dd-dd

我們以主機a(192.168.16.1)向主機b(192.168.16.2)傳送資料為例。當傳送資料時,主機a會在自己的arp快取表中尋找是否有目標ip位址。如果找到了,也就知道了目標mac位址,直接把目標mac位址寫入幀裡面傳送就可以了;如果在arp快取表中沒有找到相對應的ip位址,主機a就會在網路上傳送乙個廣播,目標mac位址是「ff.ff.ff.ff.ff.ff」,這表示向同一網段內的所有主機發出這樣的詢問:「192.168.16.2的mac位址是什麼?」網路上其他主機並不響應arp詢問,只有主機b接收到這個幀時,才向主機a做出這樣的回應:「192.168.16.2的mac位址是bb-bb-bb-bb-bb-bb」。這樣,主機a就知道了主機b的mac位址,它就可以向主機b傳送資訊了。同時它還更新了自己的arp快取表,下次再向主機b傳送資訊時,直接從arp快取表裡查詢就可以了。arp快取表採用了老化機制,在一段時間內如果表中的某一行沒有使用,就會被刪除,這樣可以大大減少arp快取表的長度,加快查詢速度。

從上面可以看出,arp協議的基礎就是信任區域網內所有的人,那麼就很容易實現在乙太網上的arp欺騙。對目標a進行欺騙,a去ping主機c卻傳送到了dd-dd-dd-dd-dd-dd這個位址上。如果進行欺騙的時候,把c的mac位址騙為dd-dd-dd-dd-dd-dd,於是a傳送到c上的資料報都變成傳送給d的了。這不正好是d能夠接收到a傳送的資料報了麼,嗅探成功。

a對這個變化一點都沒有意識到,但是接下來的事情就讓a產生了懷疑。因為a和c連線不上了。d對接收到a傳送給c的資料報可沒有轉交給c。做「man in the middle」,進行arp重定向。開啟d的ip**功能,a傳送過來的資料報,**給c,好比乙個路由器一樣。不過,假如d傳送icmp重定向的話就中斷了整個計畫。

d直接進行整個包的修改**,捕獲到a傳送給c的資料報,全部進行修改後再**給c,而c接收到的資料報完全認為是從a傳送來的。不過,c傳送的資料報又直接傳遞給a,倘若再次進行對c的arp欺騙。現在d就完全成為a與c的中間橋梁了,對於a和c之間的通訊就可以瞭如指掌了。

四 arp攻擊的防範方法:

知道了攻擊的原理,我們就能夠更好的防範arp的攻擊了,下面列出了一些基本的防範方法,供大家參考。

1、不要把你的網路安全信任關係建立在ip基礎上或mac基礎上,(rarp同樣存在欺騙的問題),理想的關係應該建立在ip+mac基礎上。

2、設定靜態的mac-->ip對應表,不要讓主機重新整理你設定好的轉換表。

3、除非很有必要,否則停止使用arp,將arp做為永久條目儲存在對應表中。

4、使用arp伺服器。通過該伺服器查詢自己的arp轉換表來響應其他機器的arp廣播。確保這台arp伺服器不被黑。

5、使用"proxy"**ip的傳輸。

6、使用硬體遮蔽主機。設定好你的路由,確保ip位址能到達合法的路徑。(靜態配置路由arp條目),注意,使用交換集線器和網橋無法阻止arp欺騙。

7、管理員定期用響應的ip包中獲得乙個rarp請求,然後檢查arp響應的真實性。

8、管理員定期輪詢,檢查主機上的arp快取。

9、使用防火牆連續監控網路。

通過以上的方法可以大大降低你受arp攻擊的可能。

ARP攻擊原理

arp攻擊原理 msn yfydz no1 hotmail.com 0.arp 1.arp原理 乙太網上的機器通過ip協議通訊時,ip包從上層一直下傳到資料鏈路層,資料鏈路層就要構造以太幀了,以太頭中包括目的mac位址,源mac位址和協議,源位址是自己網絡卡的mac位址,可以得到,協議對於ip包來說...

ARP攻擊原理

但凡區域網存在arp攻擊,都說明網路存在 中間人 在這個區域網裡面,pc1 pc2 pc3三颱主機共同連線到交換機sw1上面,對應3個介面port1 2 3。假設pc3這台主機安裝了arp攻擊軟體或遭受arp病毒,成為這個網路的攻擊者 hacker pc1和pc2是如何通訊的。pc1需要跟pc2通訊...

arp攻擊原理與防範

前段時間,終於狠下來給自己的手提換了個固態硬碟,那隨著而來的肯定是得裝個系統在那裡。反正要裝,就裝個新的來體驗一下吧,直接就裝了個win8.1的。win8.1的各種東西讓我折騰了好久,部分特徵讓我好糾結,不過介面還蠻不錯的。固態硬碟就是爽,飛一般的感覺,開啟vs一下子快多了,查閱文件,快多了。各種爽...